Servislerin Yönetimi
System V init (SysVinit) sisteminde, arka planda çalışan servisler (daemon'lar) genellikle /etc/init.d/ (veya RHEL tabanlı sistemlerde /etc/rc.d/init.d/) dizininde bulunan kabuk betikleri (shell scripts) aracılığıyla yönetilir.
Init Betikleri
Bu betikler, genellikle aşağıdaki gibi standart argümanları kabul eder:
start: Servisi başlatır.stop: Servisi durdurur.restart: Servisi durdurup yeniden başlatır.reload: Servisin yapılandırma dosyalarını yeniden yüklemesini sağlar (eğer destekliyorsa).status: Servisin çalışıp çalışmadığını kontrol eder.
Betikler doğrudan çalıştırılabilir (root yetkisiyle):
sudo /etc/init.d/apache2 start
sudo /etc/init.d/ssh statusservice Komutu
service KomutuÇoğu SysVinit sisteminde, init betiklerini daha kolay yönetmek için bir service komutu bulunur. Bu komut, betiğin tam yolunu yazma ihtiyacını ortadan kaldırır:
sudo service apache2 start
sudo service ssh status
sudo service networking restartServisleri Başlangıçta Etkinleştirme/Devre Dışı Bırakma
Bir servisin sistem açıldığında belirli bir çalışma seviyesinde (runlevel) otomatik olarak başlayıp başlamayacağı, /etc/rc<runlevel>.d/ dizinlerindeki sembolik linkler aracılığıyla kontrol edilir. Bu linkleri yönetmek için dağıtıma özgü araçlar kullanılır:
RHEL/CentOS Tabanlı Sistemler (
chkconfig):# httpd servisini 2, 3, 4, 5 runlevel'larında etkinleştir sudo chkconfig httpd on # httpd servisini tüm runlevel'larda devre dışı bırak sudo chkconfig httpd off # Servislerin durumunu listele sudo chkconfig --listDebian/Ubuntu Tabanlı Sistemler (
update-rc.d):# apache2 servisini varsayılan runlevel'larda etkinleştir sudo update-rc.d apache2 enable # apache2 servisini varsayılan runlevel'larda devre dışı bırak sudo update-rc.d apache2 disable # Belirli runlevel'lar için manuel link yönetimi (daha az yaygın) # sudo update-rc.d apache2 defaults # Varsayılan linkleri oluşturur # sudo update-rc.d apache2 remove # Tüm linkleri kaldırır(Not: Eski Debian/Ubuntu sürümlerinde
sysv-rc-confgibi metin tabanlı araçlar da bulunabilir.)
SysVinit servis yönetimi, betiklere ve sembolik linklere dayanır. Modern systemd sistemlerindeki systemctl komutu, servis yönetimini daha merkezi ve standart hale getirmiştir.
Last updated