Systemctl ilə Linux servislerin siyahısına baxmaq
Linux-da servislər arxa planda işləyən proqramlardır. Servislər istəyimizə bağlı olaraq başlanğıcda və ya daha sonra işə düşə bilər.
Biz Linux-da bir çox servislərlə işləyirik, məsələn, veb server, ssh və ya cron kimi müxtəlif servislər. İşləyən servislərinsiyahısını necə bilmək və ya servislərin statusunu yoxlamaq sistem problemlərini həll edərkən vacibdir. Ən son Linux distroları default başlanğıc sistemi və servis meneceri kimi systemd-dən istifadə edir. Systemd Linux sistemlərini idarə etmək üçün tool dəstidir. Komputeri işə salmaq, servisləri idarə etmək, fayl sistemlərini avtomatlaşdırmaq, hadisələri qeyd etmək, host adını təyin etmək və digər sistem tapşırıqlarını yerinə yetirmək üçün istifadə olunur. Bu yazıda biz Linux-da servislərini sadalayacağıq və servislərə ətraflı baxacağıq.
Servisləri siyahısına baxaq
Yaddaşda quraşdırılmış və işləyən və ya olmayan bütün servsilərin siyahısını göstərmək üçün istifadə edəcəyimiz komanda
sudo systemctl list-units --type service
Nümunə olaraq
UNIT LOAD ACTIVE SUB DESCRIPTION accounts-daemon.service loaded active running Accounts Service apparmor.service loaded active exited Load AppArmor profiles apport.service loaded active exited LSB: automatic crash report generation atd.service loaded active running Deferred execution scheduler blk-availability.service loaded active exited Availability of block devices cloud-config.service loaded active exited Apply the settings specified in cloud-config ........
Hər bir ekranda göstərilən sətiri aşağıdakı sütunlar var
UNIT – Servis adı Load- Servis faylının yaddaşa yüklənib-yüklənilməməsi haqqında məlumat verir. AKTİV – Aktiv, yenidən yüklənən, qeyri-aktiv, uğursuz, aktivləşdirilən, söndürülən statusları göstərir. SUB – Servisin vəziyyətini göstərir. Dəyərlər: vəziyyətlər, ölü, çıxış, uğursuz, qeyri-aktiv, çalışır Descritipn – Servis haqqında qısa məlumat verir.
Yaddaşda quraşdırılmış/quraşdırılmamış və işləyən/işləməyən bütün servislərin siyahısını vermək üçün istifadə edəcəyimiz komanda.
sudo systemctl list-units --type service --all
Servisin statusuna baxmaq üçün
sudo systemctl status servis_adi.service
Nümunə olaraq NGINX servisin vəziyyətinə baxaq
sudo systemctl status nginx.service
● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Drop-In: /etc/systemd/system/nginx.service.d └─limits.conf Active: active (running) since Tue 2022-02-08 00:41:13 +03; 2 days ago Main PID: 21684 (nginx) Tasks: 68 (limit: 2367) Memory: 72.6M CGroup: /system.slice/nginx.service ├─21684 nginx: master process /usr/sbin/nginx ├─21685 nginx: worker process ├─21686 nginx: worker process └─21687 nginx: cache manager process Feb 08 00:41:13 linuxpedi systemd[1]: Starting A high performance web server and a reverse proxy server... Feb 08 00:41:13 linuxpedi nginx[21682]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok Feb 08 00:41:13 linuxpedi nginx[21682]: nginx: configuration file /etc/nginx/nginx.conf test is successful Feb 08 00:41:13 linuxpedi systemd[1]: Started A high performance web server and a reverse proxy server.
Hər bir ekranda görsənən sətirin aşağıdakı mənaları var
Load– Servisin yüklənib-yüklənilməməsi və xidmət faylının tam yolu. O, həmçinin xidmətin başlanğıcda işə salınıb-söndürülmədiyini göstərir.
Aktiv – Servisin quraşdırılıb-quraşdırılmaması. Əgər terminalınız rəngləri dəstəkləyirsə və xidmət aktivdirsə və işləyirsə, nöqtə (●) və “aktiv (işləyən)” hissəsi yaşıl rəngdə çap olunacaq. Xətt həmçinin xidmətin nə qədər müddət işlədiyini göstərir.
Əsas PID – Servis proses “PID” nömrəsini təmin edir.
Yaddaş – İstifadə olunan RAM yaddaşının miqdarını göstərir.
CGroup – Servis tərəfindən fəal şəkildə istifadə olunan “PID-lər”.
Yalnız bir servisin aktiv olub olmadığını görmək üçün istifadə ediləcək komanda
systemctl is-active servis_ismi.service
systemctl is-active nginx.service