scada-manager komutları
Bu sayfa destek ve BT personeli içindir. Günlük işler arayüzde yapılır; komut satırı şu işler içindir, örneğin root hesabını kurtarmak, bir projeyi sürüm çizgileri arasında devralmak, zamanlanmış bir görevden yedek almak ya da sunucu betiklerini bir klasörden yüklemek. Sunucuda yönetici olarak bir komut penceresi ya da PowerShell açın.
Bunun yerine arayüzde
| İş | Arayüzde |
|---|---|
| YTCC'yi başlatma, durdurma, yeniden başlatma | Services (Hizmetler) içindeki YTCC servisi; bkz. YTCC süreçlerini yönetme |
| Süreçleri görme, bir sürücüyü yeniden başlatma | Ana sayfada Processes; bkz. YTCC süreçlerini yönetme |
| Bir projeyi başlatma ya da durdurma | Ana sayfada Start ve Stop; bkz. Projeyi başlatma, durdurma ve yeniden başlatma |
| Bir projeyi başka bir sürümden devralma | Stop it there and start here…; bkz. Çalışma kilidi ve yan yana sürümler |
| Bir projeyi yedekleme ve geri yükleme | Ana sayfada Back up… ve Import; bkz. Yedekleme ve geri yükleme |
| Bir proje veritabanını yükseltme | Kurulum programı ya da ana sayfada Upgrade…; bkz. Veritabanları ve şema yükseltme |
| Sürümü ve kurulu çizgileri görme | Settings › About ve YTCC installations on this computer; bkz. Hangi sürümü okuyorsunuz |
| Portları değiştirme | Settings › Ports ve Projects and ports; bkz. Port tablosu |
| root şifresini değiştirme | Oturum düğmesi › Change password; bkz. Sistem yöneticisi root |
| Veritabanı şifresini değiştirme | Kurulum programı, Repair; bkz. Güvenlik sertleştirme kontrol listesi |
| Lisans isteme, yükleme ya da serbest bırakma | Ana sayfada Licence (Türkçe arayüzde: Lisans); bkz. Lisans ve Capacity Unit |
Komutları çalıştırma
scada-manager, YTCC'nin süreç yöneticisi ve komut satırı aracıdır. PowerShell'de kurulum klasöründe çalıştırın,
örneğin önce cd C:\ytcc\v15, sonra .\scada-manager <komut>. Kurulum programı
kurulum klasörünü sistem PATH'ine ekler; böyle bir kurulumda scada-manager <komut> her komut penceresinde çalışır.
scada-manager --help ve scada-manager <komut> --help seçenekleri listeler.
Çalışan YTCC'nin durumunu değiştiren komutlar (start <ID>, stop, restart, start-project, stop-project)
kontrol anahtarını kurulum klasöründeki data\control.key dosyasından okur. Süreç yöneticisi her açılışta yeni bir
anahtar yazar. Bu komutları o dosyayı okuyabilen bir kullanıcıyla çalıştırın.
Veritabanı parolası, kurulum programıyla yapılmış bir kurulumda olduğu gibi config\secrets.toml içinde tutuluyorsa onu
yalnız yöneticiler okuyabilir. Veritabanına bağlanan komutlar o zaman yönetici olarak açılmış bir PowerShell ister:
start (bütün YTCC), migrate, db-password, backup, import, script, project ve version purge gibi version
alt komutları. status, stop, restart, start <ID>, start-project, stop-project, version, ports ve license
dosyayı okumaz, sıradan pencerede çalışır. Yetki yoksa komut secrets.toml'un okunamadığını ve yönetici olarak çalıştırılması
gerektiğini söyleyen bir hatayla durur.
Sürüm çizgisini seçme
Bir bilgisayarda birden çok YTCC sürüm çizgisi kuruluysa, örneğin v15 (1.5.x) ve v16 (1.6.x), komutun ilk kelimesi
çizgiyi seçer. scada-manager komutu kurulu çizgileri, kurulum programının Windows kayıt defterinde tuttuğu kurulum
listesinden bulur. Bu yüzden komutu hangi kurulum klasöründe ya da hangi PATH girdisiyle çalıştırırsanız çalıştırın
sonuç aynıdır.
| Komut | Ne yapar |
|---|---|
scada-manager list | Kurulu çizgilerin tablosunu yazar: çizgi, ürün sürümü, servis, kontrol portu, durum ve klasör. Durum; durmuş, projesiz çalışıyor ya da açık projenin adıyla çalışıyor olur. Komutu çalıştırdığınız çizgi * ile işaretlenir. |
scada-manager status | Birden çok çizgi kuruluysa aynı tabloyu, ardından çalışan her çizginin süreç tablosunu çizgi ve klasörünü gösteren bir başlık altında yazar. Hiçbir çizgi çalışmıyorsa çalışan YTCC olmadığını söyler. Tek kurulumda süreç tablosunu yazar. |
scada-manager v15 <komut> | Komutu v15 çizgisinde çalıştırır, örneğin scada-manager v15 start ya da scada-manager v15 start-project pump_station. |
scada-manager dev <komut> | Komutu geliştirme ortamında, YTCC'nin kaynak kod kopyasında çalıştırır. |
Tek kurulumda komutları eskisi gibi çizgisiz yazın: scada-manager start. Birden çok kurulumda çizgisiz komut tahmin
edilmez: scada-manager kurulu çizgileri bir örnekle listeler ve 2 çıkış koduyla biter. Kurulu olmayan bir çizgi de
aynı şekilde biter.
Çizgisiz start, stop ve restart bunun istisnasıdır:
stopverestart, yalnız bir çizgi çalışıyorsa sormadan ona gider.- Komut penceresinde yazıldıklarında hangi çizginin kullanılacağını sorarlar. Liste her çizgiyi sürümü ve klasörüyle
gösterir, en son çalışan çizgiyi ve şu an çalışan çizgiyi projesiyle işaretler; varsayılan en son çalışan çizgidir
(Enter). Numarayı ya da çizgi adını yazın, örneğin
v16;q1 çıkış koduyla iptal eder. Geçersiz yanıtta yeniden sorulur. startiçin zaten çalışan çizgiyi seçmek yalnız bunu söyler. Bir çizgi çalışırken başka bir çizgiyi seçmek, bilgisayarda aynı anda tek proje çalıştığı için onay ister:eyanıtı çalışan çizgiyi durdurur, durduğunu bekler (en çok 60 saniye) ve sonra seçileni başlatır; Enter ya dahiptal eder.- Bir betikten, servisten ya da kurulum programından çağrıldıklarında soru sorulmaz: çizgiler listelenir ve komut 2 çıkış koduyla biter; betikler çizgiyi açıkça yazmalıdır.
En son çalışan çizgi her çizginin data\manager-state.json dosyasından
okunur.
Genel seçenekler
Bunları komuttan önce verin, örneğin .\scada-manager --port 5001 status.
| Seçenek | Varsayılan | Anlamı |
|---|---|---|
--root <klasör> | . | Göreli yolların dayandığı kurulum klasörü. Bir sürüm klasöründe sürüm klasörü kullanılır. |
--config <dosya> | config/manager.toml | Süreç yöneticisinin yapılandırması. |
--ports <dosya> | config/ports.toml | Port tablosu. |
--port <port> | ports.toml'dan (manager) | Süreç yöneticisinin kontrol portu. |
--help, -h | Yardımı gösterir. | |
--version, -V | Program sürümünü gösterir. |
Süreçler
| Komut | Ne yapar | Gerektirir |
|---|---|---|
start | Bütün YTCC süreçlerini arka planda başlatır ve döner. YTCC bu klasörde zaten çalışıyorsa bunu söyler, bir şey yapmaz. | |
start <ID> | Tek bir süreci başlatır. <ID>, status tablosundaki ID sütunudur. | Çalışan YTCC, kontrol anahtarı |
stop | Bütün süreçleri ve süreç yöneticisini durdurur. | Çalışan YTCC, kontrol anahtarı |
stop <ID> | Tek bir süreci durdurur. | Çalışan YTCC, kontrol anahtarı |
restart <ID> | Tek bir süreci yeniden başlatır. | Çalışan YTCC, kontrol anahtarı |
status | Süreç tablosunu ve son satırda lisans durumunu yazar. | Çalışan YTCC |
start seçenekleri (yalnız bütün YTCC için):
| Seçenek | Anlamı |
|---|---|
--foreground, -f | Dönmek yerine Ctrl+C'ye kadar ön planda çalışır; dış bir servis yöneticisi için. |
--no-open | Başlatmadan sonra arayüzü tarayıcıda açmaz. |
--strict | manager.toml'daki weak_db_password = "deny" gibi, zayıf PostgreSQL parolasıyla başlamayı reddeder. |
Bkz. YTCC süreçlerini yönetme.
Projeler
| Komut | Ne yapar | Gerektirir |
|---|---|---|
start-project <project> | Bir projenin sürücülerini ve servislerini başlatır. Bu bilgisayarda, hangi sürüm çizgisinde olursa olsun, başka bir proje çalışırken reddedilir. | Çalışan YTCC, kontrol anahtarı |
stop-project <project> | Bir projenin sürücülerini ve servislerini durdurur. | Çalışan YTCC, kontrol anahtarı |
<project>, proje veritabanı adında scada_proj_'den sonra gelen kısımdır: scada_proj_pump_station için, v15
çizgisinde de scada_v15_proj_pump_station için pump_station.
start-project seçenekleri:
| Seçenek | Varsayılan | Anlamı |
|---|---|---|
--takeover | Aynı proje başka bir YTCC sürümünde çalışıyorsa o sürümden durdurmasını ister, sonra projeyi burada başlatır. | |
--wait-secs <s> | 15 | Diğer sürümün durması için beklenecek saniye. |
Projenin bir sürücüsünün dinlediği port başka bir program ya da başka bir YTCC kurulumu tarafından kullanılıyorsa
start-project yine reddeder. Projenin hiçbir parçası başlatılmaz, port da kendiliğinden değiştirilmez. Bkz.
Çalışma kilidi ve yan yana sürümler.
Veritabanı yükseltme
| Komut | Ne yapar |
|---|---|
migrate <project> | Proje veritabanını kurulu programların şemasına yükseltir. Projenin sürücüleri çalışırken reddeder. |
migrate --registry | Kayıt defterini (registry) yükseltir. Herhangi bir YTCC süreci çalışırken reddeder. |
migrate --all | Kayıt defterini, ardından arşivlenmemiş her projeyi yükseltir. Herhangi bir YTCC süreci çalışırken reddeder. Her proje önce yedeklenir; yedeği alınamayan projeye dokunulmaz. Yükseltilemeyen proje varsa komut sıfırdan farklı çıkış koduyla biter. |
--backup-dir <klasör>, migrate --all yedeklerinin klasörünü belirler. Varsayılan, veri klasöründeki backups\exports
klasörüdür.
Bkz. Veritabanları ve şema yükseltme.
Veritabanı parolası
db-password PostgreSQL rolünün parolasını tek adımda değiştirir. Parolayı PostgreSQL'de ayarlar, yeni parolayla giriş
yapılabildiğini denetler, sonra ayarları günceller: config\secrets.toml içindeki pg_password, o yoksa config\*.toml
içindeki postgres:// adresleri. Bir adım başarısız olursa eski parola geri yüklenir. YTCC durmuş olmalıdır; aksi halde
komut The stack is running. Stop it first: scada-manager stop iletisiyle biter.
| Seçenek | Anlamı |
|---|---|
--password <parola> | Sormak yerine verilen yeni parola. Kabuk geçmişinde kalır; sorulduğunda yazmak daha iyidir. |
--generate | 24 karakterlik güçlü bir parola üretir ve hiçbir şey değişmeden önce bir kez yazar. Parolayı güvenli bir yere kaydedin. --password ile birlikte kullanılamaz. |
--force | Zayıf parolayı kabul eder. |
--password ya da --generate yoksa komut parolayı göstermeden iki kez sorar. Parola en az 12 karakter olmalı, bilinen zayıf
parolalardan olmamalı ve kullanıcı adı olmamalıdır. Sonra YTCC'yi scada-manager start ile başlatın.
Lisans
| Komut | Ne yapar |
|---|---|
license status | Lisans dosyasını, imzasını, öğe başına makine kimliği eşleşmesini, saati ve gün sayaçlarını, YTCC çalışırken kullanımı gösterir. --json aynısını JSON olarak yazar. |
license request --customer <ad> --site <ad> | İstek dosyası yazar. Lisans sözleşmesini kabul etmek için --accept-eula ekleyin; bu seçenek olmadan komut sözleşme özetini ve nerede okunacağını yazar, dosya yazmaz. |
license activate <dosya> | Lisans dosyasını doğrular ve yükler. Çalışan YTCC onu hemen kullanır. |
license release | İmzalı makbuz yazar ve lisansı bu sunucudan kaldırır. YTCC çalışmaya devam eder. Onay ister; --yes soruyu atlar. |
license usage-report | İmzalı kullanım raporunu yazar. Çalışan YTCC ister. |
license inspect <dosya> | .ytreq, .ytlic, .ytrel ya da kullanım raporu dosyasının türünü, imzasını ve içeriğini gösterir. Hiçbir şey değiştirmez. |
| Seçenek | Geçerli olduğu komut | Anlamı |
|---|---|---|
--cu <n> | request | Gereken CU. YTCC dururken zorunludur, çünkü kullanım o zaman ölçülemez. |
--out <dosya ya da klasör> | request, release, usage-report | Dosyanın yazılacağı yer. Varsayılan config\license, adlar <sunucu adı>.ytreq, <lisans no>.ytrel ve <sunucu adı>-usage.txt. Var olan dosyanın üzerine hiçbir zaman yazılmaz. |
YTCC çalışırken request, activate, release ve usage-report çalışan lisans servisinden geçer ve kontrol anahtarını
data\control.key dosyasından okur. Bunları YTCC'yi başlatan hesapla ya da yönetici olarak çalıştırın. Aksi halde hiçbir şey
değiştirmez ve bunu söylerler; Licence sekmesini kullanın ya da YTCC'yi durdurup komutu yeniden çalıştırın.
| Çıkış kodu | Anlamı |
|---|---|
0 | Başarılı. |
1 | Komut yapılamadı; ileti nedeni ve çözümü söyler. |
2 | Bir koşul sağlanmadı: sözleşme kabul edilmedi ya da onay verilmedi. |
3 | Lisans servisi gerekli ama çalışmıyor ya da komut yetkilendirilemedi. |
Bkz. Lisans ve Capacity Unit.
Yedekleme ve içe aktarma
backup <project> tek bir projenin tam yedeğini tek bir zip dosyasına yazar. Proje çalışırken de çalışır. <project>
kısa ad (slug), proje kimliği (scada_proj_<slug>) ya da görünen ad olabilir. Varsayılan dosya
backups\<project>-<sürüm>-<tarih>-<saat>.zip'tir. Ana sayfa aynı yedeği Back up… (Türkçe arayüzde: Yedek al…)
ile alır; bkz. Ana sayfadan proje yedeği alma.
| Seçenek | Anlamı |
|---|---|
--out <dosya ya da klasör> | Bu dosyaya ya da varsayılan adla bu klasöre yazar. |
--force | Var olan --out dosyasının üzerine yazar. |
--skip-unreadable | Bazı içerikler okunamasa da yedeği tamamlar; atlananlar listelenir. Bu seçenek yoksa yedek reddedilir. |
--sample | Kullanıcılar, parola özetleri, denetim kaydı ve projenin eski yedekleri olmadan örnek paket üretir. |
--data-dir <klasör> | Proje sunucusunun veri klasörü. Varsayılan: SCADA_DATA_DIR ya da apps\projects-server\data. |
import <dosya>.zip bir yedeği proje olarak geri yükler. YTCC durmuş olmalıdır.
Tasarım kilidi sırasında yalnız aynı kimlikle geri yükleme çalışır: --name ve
--new-identity reddedilir, --cleanup çalışır.
| Seçenek | Anlamı |
|---|---|
--name <ad> | Yeni bir adla (yeni kimlik, klasör ve veritabanı) içe aktarır. Ad kullanılıyorsa gerekir; komut kendiliğinden ad seçmez. |
--new-identity | Yeni kimlikli ayrı bir proje olarak içe aktarır. Aynı proje burada başka bir adla varsa gerekir. |
--cleanup <project> | İçe aktarmak yerine <project> için yarıda kalmış bir içe aktarmanın artıklarını kaldırır. Etkin bir projeyi hiçbir zaman kaldırmaz. |
--data-dir <klasör> | Proje sunucusunun veri klasörü, backup'taki gibi. |
Bkz. Yedekleme ve geri yükleme.
Sunucu hesabı
server-user sunucunun sistem yöneticisi olan root hesabını kurtarır. Yalnız proje sunucusunun veri klasöründeki
dosyalarla çalışır; bu yüzden YTCC çalışırken de dururken de çalışır ve sonrasında yeniden başlatma gerekmez.
| Komut | Ne yapar |
|---|---|
server-user reset | root hesabına yeni şifre verir. Şifreyi ekranda göstermeden iki kez sorar. Hesabın kilidini de açar, hatalı deneme sayacını sıfırlar, hesabı etkinleştirir, açık oturumlarını kapatır ve sıfırlamayı sunucu hesabının denetim kaydına yazar. Sunucuda hiç sunucu hesabı yoksa bir hesap oluşturur. |
server-user list | Sunucu hesaplarını listeler: kullanıcı adı, etkin, kilitli ve son şifre değişiminin zamanı. Şifre özetlerini hiçbir zaman göstermez. |
server-user reset seçenekleri:
| Seçenek | Varsayılan | Anlamı |
|---|---|---|
--user <ad> | root | Sıfırlanacak hesap. Ad yoksa komut var olan adları listeler ve durur. |
--password <şifre> | Sormak yerine yeni şifre. Kabuk geçmişinde kalır; sorulduğunda yazmayı tercih edin. | |
--data-dir <klasör> | Proje sunucusunun veri klasörü. Varsayılan: SCADA_DATA_DIR ya da apps\projects-server\data. |
list de --data-dir alır. root şifresinin kuralına (en az 12 karakter, bir büyük harf, bir küçük harf ve bir rakam,
kullanıcı adını içermeme) uymayan şifre uyarıyla kabul edilir. Bkz.
root hesabını kurtarma.
Sunucu betikleri
| Komut | Ne yapar |
|---|---|
script import <project> <dosya ya da klasör> | .js dosyalarını projenin sunucu betiklerine yükler. |
script export <project> <klasör> | Projenin sunucu betiklerini bir klasöre yazar: <ad>.js, editörde TypeScript ile yazılmış betik için <ad>.ts. |
script sync <project> <klasör> | script export ile yazılmış bir klasördeki değişen .js dosyalarını yükler. Dışa aktarmadan sonra editörde değişmiş bir betiğin üzerine yazılmaz; çakışma bildirilir. |
script import seçenekleri: --activate, --targets <desenler> ile --can-command, --publish-targets <desenler>
ya da --publish-targets-file <dosya> ile --can-publish, --handler-ms <ms> (10 ile 60000 arası) ve --dry-run.
script export seçeneği: --force var olan .js ve .ts dosyalarının üzerine yazar ve artık projede olmayan
betiklerin dosyalarını siler; bu seçenek olmadan klasörde .js ya da .ts dosyası bulunmamalıdır. script sync
seçenekleri: --watch çalışmayı sürdürür ve Ctrl+C'ye dek kaydedilen her dosyayı yükler, --activate yüklenen
betikleri etkinleştirir de. Tasarım kilidi sırasında script import yalnız --dry-run
ile çalışır, script sync reddedilir. Bkz. Sunucu betiklerini içe ve dışa aktarma.
Sürümler ve portlar
Bu komutlar, project reclaim dışında, çalışan bir YTCC gerektirmez.
| Komut | Ne yapar |
|---|---|
version | Ürün sürümünü, kurulum kimliğini ve sözleşme sürümlerini yazar. |
version --json | Aynısını JSON olarak, her projenin veritabanı adlarıyla (slug, db_name, hist_db_name) yazar. |
version purge <ID> --confirm <ID> | Aynı kökün altında kurulu başka bir sürümü siler: proje ve tarihçe veritabanlarını, kayıt defterini ve klasörünü. |
ports suggest | Bu sürüm için boş bir port bloğu yazar. Aynı kökün altındaki sürümleri ve kurulum programıyla kurulmuş sürüm çizgilerini hesaba katar. |
ports suggest --project <project> | Kendi mesaj aracısı ve gateway'iyle çalışan bir proje için boş bir port takımı (nats, gateway, alarm) yazar. |
project adopt <project> | Bir projeyi kurulu başka bir sürümden devralır. |
project reclaim <project> | Bir projeyi devralındığı sürümden geri alır. Bu sürümün çalışıyor olması gerekir. |
version purge seçenekleri:
| Seçenek | Anlamı |
|---|---|
--confirm <ID> | Zorunlu; kurulum kimliğini tekrarlamalıdır. |
--yes | Kimliği yeniden yazmayı atlar (betikler için). |
--include-chained-history | Hiçbir tarihçe zincirinin kullanmadığı veritabanlarını siler. Başka bir sürümün hâlâ okuduğu tarihçe veritabanları hiçbir zaman silinmez. |
ports suggest seçenekleri:
| Seçenek | Anlamı |
|---|---|
--write | Bloğu config\ports.toml'a, ports.toml varsa config\ports.toml.suggested'a yazar. --project ile portları bu sürümün config\projects.toml dosyasına kaydeder. |
--project <project> | Sürüm bloğu yerine projenin portlarını önerir. |
project adopt seçenekleri:
| Seçenek | Anlamı |
|---|---|
--from <ID> | Aynı kökün altındaki kaynak sürüm klasörü, örneğin v12. |
--from-root <klasör> | --from yerine kaynak bağımsız kurulum klasörü. |
--takeover | Proje kaynakta çalışıyorsa kaynaktan durdurmasını ister. |
--replace | Proje burada zaten varsa mevcut kopyanın adını değiştirir ve devam eder. |
project reclaim seçenekleri:
| Seçenek | Varsayılan | Anlamı |
|---|---|---|
--yes | Onay sormaz (betikler için). | |
--wait-secs <s> | 15 | Diğer sürümün durması için beklenecek saniye. |
Bkz. Sürümleri yan yana kurma ve Yeni sürüme yükseltme ve geri dönme.
Ayar dosyaları
Kurulumun birkaç ayarının arayüzde alanı yoktur. Bunlar kurulumun yalnız yöneticilerin değiştirebildiği config
klasöründedir; dosyayı yönetici olarak başlatılmış bir metin düzenleyicide açın ve ardından YTCC servisini yeniden
başlatın. Yükseltme bu dosyaları korur.
| Ayar | Dosya | Varsayılan | Etkisi |
|---|---|---|---|
backup_exports_keep | manager.toml | 10 | Ana sayfa yedeklerinden proje başına kaçının backups\exports içinde tutulacağı, 1 ile 1000 arası. |
weak_db_password = "deny" | manager.toml | uyarı | Zayıf PostgreSQL şifresinde uyarmak yerine açılmayı reddeder. start --strict aynısını bir kez yapar. |
log_days | log.toml | 10 | Günlük dosyalarının tutulduğu gün; 0 her dosyayı tutar. Bkz. Günlükler ve tanılama. |
run_lock_grace_secs | manager.toml | 30 | Süreç yöneticisinin kaybolan çalışma kilidini geri almaya çalıştığı saniye. Bkz. Çalışma kilidi. |
legacy_control_ports | manager.toml | yok | Çalışma kilidi denetimi için aynı sunucudaki YTCC v1.5.0 ya da daha eskisinin kontrol portları. |
nats_bind | manager.toml | 127.0.0.1 | Mesaj yolunun adresi. Ayarlamayın; bkz. Güvenlik sertleştirme kontrol listesi. |
SCADA_PG_POOL_MAX | manager.toml, bir sürecin [process.inject] bölümü | 2 ya da 6 | O sürecin en büyük PostgreSQL bağlantı havuzu, 1 ile 64 arası. Bkz. PostgreSQL bağlantıları. |
[access] | gateway.toml | yok | Canlı veri sunucusunun kabul ettiği istemci adresleri; bkz. Güvenlik sertleştirme kontrol listesi. |
| Son değer deposu | gateway.toml | açık | Bkz. Kalıcı son değer deposu. |
YTCC_IMPORT_MAX_MB | Proje sunucusunun ortamı | 2048 | Ana sayfanın içe aktardığı en büyük proje paketi, MB. |
Komut satırı çıktısı
Komutlar renksiz ve zaman damgasız kısa satırlar yazar. Varsayılan olarak yalnız uyarılar ve hatalar gösterilir;
ayrıntılar logs içindeki günlük dosyasına gider. Daha fazla çıktı için RUST_LOG ortam değişkenini verin, örneğin
$env:RUST_LOG = "info".