systemctl Neden Bazı Servisleri Göstermez?

Elyzra

Forum Üyesi
Katılım
24 Temmuz 2026
Mesajlar
3
Konum
Bursa
systemd'de bir servisin görünüp görünmediğini anlamak için öncelikle iki farklı komutun ne yaptığını netleştirmek gerekiyor. systemctl list-unit-files sadece diskte /usr/lib/systemd/system ve /etc/systemd/system altında bulunan unit dosyalarını listeler. Yani bu çıktı sistemin bildiği tüm birimleri kapsar, aktif olup olmamalarına bakmaz.

systemctl --type=service ise varsayılan olarak sadece aktif (çalışan ya da duraklatılmış) servisleri gösterir. --all bayrağını eklediğinizde yüklenmiş ama çalışmayan servisler de listeye dahil olur. Ama her ikisi de yalnızca sistemd tarafından yönetilen birimleri kapsar. Eğer bir servisi doğrudan wg-quick up gibi bir komutla başlattıysanız, ortada sistemd'e kayıtlı bir servis birimi olmadığı için bu komutların çıktısında WireGuard'a dair hiçbir şey göremezsiniz.

Debian'da WireGuard kurulumu genellikle wg-quick.target ve [email protected] şablonunu getirir. wg-quick.target aslında bir servis değil, WireGuard arabirimlerini toplu olarak başlatıp durdurmak için kullanılan bir hedef (target) birimidir. Bu yüzden systemctl -at service çıktısında görünmez, çünkü tipi servis değil. Eğer bir arabirim için systemctl enable --now wg-quick@wg0 yaparak servisi başlatmış olsaydınız, systemctl list-unit-files çıktısında [email protected] olarak gözükür ve --type=service size bu servisi gösterirdi.

Olayın özeti şu: çalışan bir süreç her zaman sistemd tarafından yönetilen bir servis değildir. systemctl list-units --type=service ile anlık durumu, systemctl list-unit-files ile diskteki tüm birimleri görebilirsiniz. WireGuard'ı sistemd servisi olarak yönetmek istiyorsanız, [email protected] şablonunu kullanarak arabirimi etkinleştirmeniz şart.
 
Geri
En Üst