Linux'ta Systemd Altında Çalışan Tüm Hizmetler Nasıl Listelenir?
Linux sistemleri çeşitli sistem hizmetleri (süreç yönetimi, oturum açma, sistem günlüğü, cron vb. gibi) ve ağ hizmetleri (uzaktan oturum açma, e-posta, yazıcılar, web barındırma, veri depolama gibi) sağlar , dosya aktarımı, alan adı çözümlemesi (DNS kullanarak), dinamik IP adresi ataması (DHCP kullanarak) ve çok daha fazlası).
Teknik olarak hizmet, arka planda sürekli olarak çalışan ve isteklerin (özellikle istemcilerden) gelmesini bekleyen bir süreç veya süreçler grubudur (genellikle arka plan programları olarak bilinir).
Linux, genellikle bir süreç veya hizmet yöneticisi aracılığıyla hizmetleri yönetmenin (başlatma, durdurma, yeniden başlatma, sistem önyüklemesinde otomatik başlatmayı etkinleştirme vb.) farklı yollarını destekler. Tüm modern Linux dağıtımları olmasa da çoğu artık aynı süreç yöneticisini kullanıyor: systemd.
Systemd nedir?
Systemd, Linux için bir sistem ve hizmet yöneticisidir; init işlemi için, SysV ve LSB başlatma komut dosyalarıyla uyumlu olan bir drop-in yedeğidir ve systemctl komutu, bu işlemi gerçekleştirmek için birincil araçtır. systemd'yi yönetin.
Neden Linux'ta Çalışan Hizmetleri Listelemelisiniz?
Linux sisteminizde çalışan hizmetleri bilmek çeşitli nedenlerden dolayı hayati öneme sahiptir. Kaynak kullanımını izlemenize, sorunları gidermenize ve sistem performansını verimli bir şekilde yönetmenize olanak tanır. Systemd, aktif hizmetler hakkında bilgi toplamak için güçlü komutlar sunarak bu görevi basitleştirir.
Bu kılavuzda, Linux'ta Systemd altında çalışan tüm hizmetleri listeleme sürecini göstererek tüm deneyim seviyelerindeki kullanıcılara kapsamlı bir yol göstereceğiz.
Linux'ta SystemD Altında Çalışan Hizmetleri Listeleme
systemctl komutunu herhangi bir argüman olmadan çalıştırdığınızda, hizmetler de dahil olmak üzere tüm yüklü systemd birimlerinin bir listesini (systemd birimleri hakkında daha fazla bilgi için systemd belgelerini okuyun) ve durumlarını (aktif olup olmadıklarını) görüntüler. ).
systemctl
Systemctl'deki Tüm Birimleri Listele
Sisteminizde yüklü olan tüm hizmetleri (etkin, çalışıyor, çıkılmış veya başarısız) listelemek için list-units alt komutunu ve --type
anahtarını bir hizmet değeriyle birlikte kullanın.
systemctl list-units --type=service
OR
systemctl --type=service
Hem çalışan hem de çıkış yapan tüm yüklü ancak etkin hizmetleri listelemek için, aşağıdaki gibi aktif değeriyle --state
seçeneğini ekleyebilirsiniz.
systemctl list-units --type=service --state=active
OR
systemctl --type=service --state=active
Systemctl'de Çalışan Hizmetleri Listele
Ancak çalışan tüm hizmetlere (yani tüm yüklü ve aktif olarak çalışan hizmetlere) hızlıca göz atmak için aşağıdaki komutu çalıştırın.
systemctl list-units --type=service --state=running
OR
systemctl --type=service --state=running
Systemd birimleriyle ve bunların durumlarıyla ilgili temel terimleri inceleyelim:
- Birim – Birim, bir hizmet, soket, cihaz veya diğer çeşitli varlıklar olabilir.
- Yükle – Ünitenin yüklü olup olmadığını gösterir. Bir birim yüklenebilir ancak mutlaka etkin olması gerekmez.
- Etkin – Ünitenin aktif olarak çalışıp çalışmadığını veya sorunlarla karşılaşıp karşılaşmadığını ve arızalı veya etkin olmayan durumda olup olmadığını gösterir.
- ALT – Birimin belirli durumu hakkında ek ayrıntılar sağlar. Hizmetler için, hizmetin çalışıp çalışmadığını (çalışıyor), durdurulduğunu (çıkıldığını) veya sorunlarla mı karşılaşıldığını (başarısız olduğunu) belirtebilir.
- Açıklama – Kullanıcıların, ayrıntılı yapılandırma dosyalarına girmeden ünitenin amacını tanımlamalarına ve anlamalarına yardımcı olur.
systemctl için bir Takma Ad oluşturun
Önceki komutu sıklıkla kullanıyorsanız, ~/.bashrc dosyanızda gösterildiği gibi kolayca çağırmak için bir takma ad komutu oluşturabilirsiniz.
vim ~/.bashrc
Daha sonra ekran görüntüsünde gösterildiği gibi takma adlar listesinin altına aşağıdaki satırı ekleyin.
alias running_services='systemctl list-units --type=service --state=running'
Değişiklikleri dosyaya kaydedin ve kapatın. Artık sunucunuzda yüklü, aktif olarak çalışan tüm hizmetlerin listesini görüntülemek için “running_services” komutunu kullanın.
running_services #use the Tab completion
Bir İşlemin Dinlediği Bağlantı Noktasını Bulun
Ayrıca hizmetlerin önemli bir yönü de kullandıkları limandır. Bir daemon işleminin dinlediği bağlantı noktasını belirlemek için gösterildiği gibi netstat veya ss komutunu kullanabilirsiniz.
Burada -l
bayrağı tüm dinleme yuvalarını yazdır anlamına gelir, -t
tüm TCP bağlantılarını görüntüler, -u
tüm UDP bağlantılarını gösterir, - n
, sayısal bağlantı noktası numaralarını yazdırmak (uygulama adları yerine) anlamına gelir ve -p
, uygulama adını göstermek anlamına gelir.
netstat -ltup | grep zabbix_agentd
OR
ss -ltup | grep zabbix_agentd
Beşinci sütun soketi gösterir: Yerel Adres: Bağlantı Noktası. Bu durumda, zabbix_agentd işlemi 10050 bağlantı noktasını dinliyor.
Çalışan Güvenlik Duvarı Hizmetlerini Listeleme
Ayrıca, sunucunuzda, seçilen hizmetlere veya bağlantı noktalarına giden veya bunlardan gelen trafiğin nasıl engelleneceğini veya bunlara nasıl izin verileceğini denetleyen çalışan bir güvenlik duvarı hizmeti varsa, firewall-cmd<'yi kullanarak güvenlik duvarında açılan hizmetleri veya bağlantı noktalarını listeleyebilirsiniz. veya ufw komutunu (kullandığınız Linux dağıtımlarına bağlı olarak) gösterildiği gibi kullanın.
firewall-cmd --list-services [FirewallD]
firewall-cmd --list-ports
sudo ufw status [UFW Firewall]
Şimdilik bu kadar! Bu kılavuzda Linux'ta systemd altında çalışan hizmetlerin nasıl görüntüleneceğini gösterdik. Ayrıca bağlantı noktası hizmetinin dinlenip dinlenmediğinin nasıl kontrol edileceğini ve sistem güvenlik duvarında açılan hizmetlerin veya bağlantı noktalarının nasıl görüntüleneceğini de ele aldık.
Eklemek istediğiniz veya sorularınız var mı? Cevabınız evet ise aşağıdaki yorum formunu kullanarak bize ulaşın.