Init Versiyonunu Belirlemek
Linux sisteminizde hangi init sisteminin (PID 1 olarak çalışan ve sistemi başlatan süreç) kullanıldığını bilmek, servisleri yönetmek ve sistemin davranışını anlamak için önemlidir. Modern dağıtımların çoğu systemd
kullanırken, eski sistemlerde System V init
(SysVinit) veya Upstart
gibi alternatifler bulunabilir.
İşte çalışan init sistemini belirlemek için kullanılabilecek bazı yaygın yöntemler:
PID 1'in Komut Adını Kontrol Etme: En doğrudan yöntemlerden biri, PID 1 olarak çalışan sürecin komut adını kontrol etmektir:
Eğer çıktı
systemd
ise, sisteminiz systemd kullanıyor demektir.Eğer çıktı
init
ise, genellikle SysVinit veya Upstart kullanılıyor demektir. (Upstart genellikle eski Ubuntu sürümlerinde bulunur).
/sbin/init
Sembolik Linkini Kontrol Etme: Çekirdek genellikle/sbin/init
'i başlatır. Bu dosyanın nereye işaret ettiğini kontrol etmek init sistemini gösterebilir:Eğer
/lib/systemd/systemd
'ye veya benzer bir yola işaret ediyorsa, systemd kullanılıyordur.Eğer doğrudan
/sbin/init
çalıştırılabilir bir dosyaysa veya başka birinit
dosyasına işaret ediyorsa, muhtemelen SysVinit veya Upstart'tır.
systemctl
Komutunun Varlığı ve Çalışması:systemctl
komutu, systemd'nin ana yönetim aracıdır. Bu komutun varlığı ve çalışması, systemd'nin kullanıldığının güçlü bir göstergesidir:Eğer bu komutlar systemd'ye özgü çıktılar veriyorsa veya hata vermeden çalışıyorsa, sisteminiz systemd kullanıyordur. SysVinit sistemlerde bu komut bulunmaz veya farklı davranır.
/etc/inittab
Dosyasını Kontrol Etme: Geleneksel SysVinit, ana yapılandırması için/etc/inittab
dosyasını kullanır.Eğer bu dosya varsa ve içinde runlevel tanımları gibi aktif yapılandırma satırları içeriyorsa, sistem muhtemelen SysVinit kullanıyordur.
Modern systemd sistemlerinde
/etc/inittab
dosyası ya bulunmaz ya da sadece bilgilendirme amaçlı yorum satırları içeren boş veya minimal bir dosyadır.
runlevel
Komutunu Kontrol Etme: SysVinit sistemlerde mevcut çalışma seviyesini (runlevel) görmek içinrunlevel
komutu kullanılır. systemd sistemlerde bu komut hala bulunabilir ancak genellikle farklı veya daha az anlamlı bir çıktı verir. systemd'de benzer işlev içinsystemctl get-default
(varsayılan hedefi gösterir) veyawho -r
kullanılabilir.
Genellikle ps -p 1 -o comm=
veya ls -l /sbin/init
komutları, çalışan init sistemini hızlıca belirlemek için yeterlidir. Çoğu modern ve popüler Linux dağıtımı (Debian, Ubuntu, Fedora, RHEL, CentOS Stream, Arch Linux, SUSE vb.) artık varsayılan olarak systemd kullanmaktadır.
Last updated