Servislerin Yönetimi
systemd init sisteminde, servisleri ve diğer sistem birimlerini (units) yönetmek için kullanılan ana komut systemctl'dir. Bu komut, eski service, chkconfig, update-rc.d gibi araçların işlevlerini birleştirir ve daha tutarlı bir arayüz sunar. Komutların çoğu sudo yetkisi gerektirir.
Temel Servis Yönetimi Komutları
Aşağıda <servis_adı> yerine yönetmek istediğiniz servisin adını (örn. sshd, nginx, apache2) yazmalısınız. .service uzantısı genellikle isteğe bağlıdır.
Servisi Başlatma (
start): Bir servisi hemen başlatır.sudo systemctl start <servis_adı>Servisi Durdurma (
stop): Çalışan bir servisi hemen durdurur.sudo systemctl stop <servis_adı>Servisi Yeniden Başlatma (
restart): Servisi durdurur ve ardından yeniden başlatır. Yapılandırma değişikliklerinden sonra veya servisin takılması durumunda kullanılır.sudo systemctl restart <servis_adı>Yapılandırmayı Yeniden Yükleme (
reload): Servise, yapılandırma dosyalarını yeniden okumasını söyler. Bu işlem genellikle servisi durdurmadan yapılır, ancak tüm servislerreloadişlemini desteklemez.sudo systemctl reload <servis_adı>Eğer servis
reloaddesteklemiyorsa, genelliklerestartkullanmak gerekir.Koşullu Yeniden Başlatma (
try-restart): Sadece servis zaten çalışıyorsa yeniden başlatır.sudo systemctl try-restart <servis_adı>Koşullu Yeniden Yükleme (
reload-or-restart): Servisreloaddestekliyorsa yeniden yükler, desteklemiyorsa yeniden başlatır.sudo systemctl reload-or-restart <servis_adı>
Servis Durumunu Kontrol Etme
Detaylı Durum (
status): Bir servisin mevcut durumunu (aktif/pasif, etkin/devre dışı), PID'sini, bellek/CPU kullanımını ve en son günlük (log) mesajlarını gösterir.systemctl status <servis_adı>Çıktıdan
qtuşu ile çıkılır.Aktif mi? (
is-active): Servisin o anda çalışıp çalışmadığını kontrol eder. Genellikle betiklerde kullanılır. Çıktısıactiveveyainactive(veyaactivating,failedvb.) olur.systemctl is-active <servis_adı>Başlangıçta Etkin mi? (
is-enabled): Servisin sistem başlangıcında otomatik olarak çalışacak şekilde etkinleştirilip etkinleştirilmediğini kontrol eder. Çıktısıenabled,disabled,static(manuel olarak başlatılamaz/durdurulamaz ama başka unit'ler tarafından kullanılabilir),maskedvb. olur.systemctl is-enabled <servis_adı>Başarısız mı? (
is-failed): Servisin hata durumunda olup olmadığını kontrol eder.systemctl is-failed <servis_adı>
Servisleri Başlangıçta Etkinleştirme/Devre Dışı Bırakma
Etkinleştirme (
enable): Bir servisin sistem başlangıcında otomatik olarak çalışmasını sağlar. Gerekli sembolik linkleri oluşturur.sudo systemctl enable <servis_adı>--nowseçeneği ile hem etkinleştirip hem de hemen başlatabilirsiniz:sudo systemctl enable --now <servis_adı>Devre Dışı Bırakma (
disable): Bir servisin sistem başlangıcında otomatik olarak çalışmasını engeller. Gerekli sembolik linkleri kaldırır. Servis o anda çalışıyorsa durdurmaz.sudo systemctl disable <servis_adı>--nowseçeneği ile hem devre dışı bırakıp hem de hemen durdurabilirsiniz:sudo systemctl disable --now <servis_adı>Maskeleme (
mask): Bir servisi tamamen devre dışı bırakır. Servis manuel olarak veya başka bir servisin bağımlılığı olarak bile başlatılamaz. Bu işlem, genellikle/etc/systemd/system/altına servisin unit dosyasını/dev/null'a yönlendiren bir sembolik link oluşturarak yapılır.sudo systemctl mask <servis_adı>Maskeyi Kaldırma (
unmask): Maskelenmiş bir servisin maskesini kaldırır, ancak servisi otomatik olarak etkinleştirmez.sudo systemctl unmask <servis_adı>
systemctl, systemd sistemlerde servisleri ve diğer unit'leri yönetmek için merkezi ve güçlü bir araçtır.
Last updated