Ubuntu, ülkemizde ve dünyada en çok kullanılan Linux dağıtımlarından bir tanesi. Sunucu ve masaüstü (desktop) olarak iki ayrı sürümü bulunuyor. Hem sunucu hem de masaüstü işletim sistemi olarak oldukça yoğun bir şekilde kullanılıyor ve sürekli olarak güncellenmeye devam ediyor.
Linux dağıtımlarında daemon dediğimiz arka planda çalışan bir fasilite bulunuyor. Servisler bu daemon’u kullanarak arka planda çalışıyor. Ubuntu üzerinde çalışan ve durdurulmuş tüm servisleri aşağıdaki komutlar ile listeyebiliriz.
Ubuntu üzerinde servisler nasıl listelenir?
Ubuntu üzerinde bulunan (ve kurulmuş) tüm servisleri aşağıdaki komut ile listeyebiliriz.
sudo service --status-all
Bu komut çalışan ve çalışmayan tüm servisleri gösterecektir.

Servis isminin başında bulunan [+] ve [-] işaretleri servisin durumunu gösterir. [+] olanlar çalışır durumda, [-] olanlar ise durdurulmuş durumda olan servislerdir.
Grep komutu ile sadece çalışan servisleri listeleyebiliriz;
sudo service --status-all | grep '\[ + \]'

Veya çalışmayan (durdurulmuş) servisleri de aynı şekilde listeyebiliriz.
sudo service --status-all | grep '\[ - \]'

Systemctl ile servisleri listeleme
Tüm daemon ve çalışan servisleri systemctl komutu ile de ayrıntılı bir biçimde görüntüleyebiliriz.
sudo systemctl list-units -a
Alacağınız çıktı aşağıdaki gibi olacaktır.

Etkin olmayan servisleri görüntülemek için inactive parametresi vermek yeterli olacaktır.
sudo systemctl list-units -a --state=inactive

Sık Sorulan Sorular
Ubuntu 22.04 LTS sürümünde systemctl nasıl kullanılır?
systemctl list-units –type=service komutu ile aktif servisleri listeleyebilirsiniz.
Ubuntu sunucuya nasıl bağlanılır ve servis durumu nasıl kontrol edilir?
SSH ile ssh kullanıcı@sunucu_ip komutu üzerinden bağlanılır. Ardından systemctl status servis_adı komutu ile hedef servisin çalışıp çalışmadığını görebilirsiniz.
Systemctl ne işe yarar?
systemctl, Linux sistemlerde servisleri başlatma, durdurma, yeniden başlatma, durum kontrolü ve listeleme gibi işlemleri yönetmek için kullanılır. Örneğin systemctl list-units komutu sistemdeki aktif birimleri gösterir.
Systemctl daemon-reload ne zaman kullanılır?
Bir servis dosyasında (örneğin: .service) değişiklik yaptıysanız, bu güncellemelerin systemd tarafından tanınması için systemctl daemon-reload komutunu kullanmalısınız.
Sysvinit ile systemd arasında ne fark vardır?
Sysvinit, eski Ubuntu sürümlerinde kullanılan başlangıç sistemidir. Systemd ise modern Ubuntu sistemlerinde kullanılır ve systemctl komutuyla servisleri daha esnek ve hızlı şekilde yönetmenizi sağlar.
Canonical Ubuntu’da systemctl komutları farklı mı?
Canonical tarafından yayınlanan resmi Ubuntu sürümleri, systemd sistemini tam olarak destekler. systemctl komutları tüm Canonical tabanlı Ubuntu Server sürümlerinde çalışır.
Ubuntu versiyonu nasıl öğrenilir ve systemctl destekli mi kontrol edilir?
Terminale lsb_release -a veya cat /etc/os-release komutunu yazarak Ubuntu sürümünüzü öğrenebilirsiniz. Eğer systemd kullanılıyorsa, ps -p 1 -o comm= komutu çıktısı systemd olacaktır ve systemctl komutları desteklenir.
