Ci sono molti modi e strumenti per controllare ed elenca tutti i servizi in esecuzione in Linux.
Di solito la maggior parte degli amministratori utilizza service service-name status
o /etc/init.d/service-name status
per System V ( SysV) init system e systemctl status service-name
per systemd systems.
Il comando precedente mostra chiaramente che il servizio menzionato è in esecuzione sul server o meno.
È un comando molto semplice e basilare che dovrebbe essere conosciuto da ogni amministratore Linux. Se sei nuovo nell’ambiente e vuoi sapere quali servizi sono in esecuzione sul sistema.
Questi comandi possono elencare tutti i servizi in esecuzione sul sistema e darti un’idea di quale scopo viene utilizzato il sistema per.
Inoltre, fornisce l’opportunità di disabilitare alcuni servizi che non vengono utilizzati sul sistema.
init (abbreviazione di inizializzazione) è il primo processo avviato durante l’avvio del computer sistema. init è un processo daemon che continua a funzionare fino a quando il sistema non viene spento.
Questi articoli seguenti ti aiuteranno a saperne di più sul processo in esecuzione su Linux
- Cinque modi per Controlla per quanto tempo un processo è in esecuzione in Linux
- 9 semplici modi per trovare l’ID di processo (PID) di un programma in esecuzione su Linux
- Come scoprire quale numero di porta di un processo Sta usando in Linux
- 3 semplici modi per uccidere o terminare un processo in Linux
La maggior parte della distribuzione Linux rientra in uno dei seguenti sistemi init.
- System V è il vecchio sistema init
- Upstart è un sostituto basato sugli eventi per il sistema init tradizionale
- systemd è il nuovo sistema init, cioè adottato dalla maggior parte delle ultime distribuzioni Linux
Cos’è System V (SysV)
SysV sta per System V init è un vecchio e tradizionale sistema di init e gestore di sistema per vecchi sistemi. La maggior parte delle ultime distribuzioni sono state adattate al sistema systemd a causa di alcuni dei problemi a lungo in sospeso sul sistema sysVinit.
Cos’è Upstart init sistema
Upstart è un sostituto basato sugli eventi per il demone / sbin / init che gestisce l’avvio di attività e servizi durante l’avvio, arrestandoli durante l’arresto e supervisionandoli mentre il sistema è in esecuzione.
È stato originariamente sviluppato per la distribuzione Ubuntu, ma è concepito per essere adatto per la distribuzione in tutte le distribuzioni Linux in sostituzione del venerabile System-V init.
Cos’è systemd
systemd è un nuovo sistema di inizializzazione e gestore di sistema che è diventato un nuovo sistema standard di init molto popolare e ampiamente adattato dalla maggior parte delle distribuzioni Linux. Il comando systemctl è un’utilità systemd che ci aiuta a gestire systemd system.
Metodo-1: come controllare i servizi in esecuzione in System V (SysV) init System
Il comando seguente aiuta per controllare ed elencare tutti i servizi in esecuzione nel sistema di inizializzazione System V (SysV).
Se si dispone di un numero maggiore di servizi, suggerirei di utilizzare i comandi di visualizzazione dei file come less, more, ecc. visualizzazione.
Esegui il seguente comando per visualizzare solo i servizi in esecuzione nel sistema.
Esegui il seguente comando per visualizzare lo stato del servizio specifico.
# service --status-all | grep httpdhttpd (pid 627) is running...
In alternativa, utilizzare il seguente comando per visualizzare lo stato del servizio particolare.
# service httpd statushttpd (pid 627) is running...
Utilizzare il seguente comando per visualizzare l’elenco dei servizi in esecuzione abilitati all’avvio.
Metodo 2: come controllare i servizi in esecuzione in System V (SysV) init System
In alternativa possiamo elencare i servizi in esecuzione nel sistema Linux immettendo sotto il comando initctl.
Metodo 3: Come controllare i servizi in esecuzione nel sistema systemd utilizzando il comando Systemctl
Il comando seguente ci aiuta a controllare ed elencare tutti i servizi in esecuzione nel sistema “systemd”.
# systemctl UNIT LOAD ACTIVE SUB DESCRIPTION sys-devices-virtual-block-loop0.device loaded active plugged /sys/devices/virtual/block/loop0 sys-devices-virtual-block-loop1.device loaded active plugged /sys/devices/virtual/block/loop1 sys-devices-virtual-block-loop2.device loaded active plugged /sys/devices/virtual/block/loop2 sys-devices-virtual-block-loop3.device loaded active plugged /sys/devices/virtual/block/loop3 sys-devices-virtual-block-loop4.device loaded active plugged /sys/devices/virtual/block/loop4 sys-devices-virtual-misc-rfkill.device loaded active plugged /sys/devices/virtual/misc/rfkill sys-devices-virtual-tty-ttyprintk.device loaded active plugged /sys/devices/virtual/tty/ttyprintk sys-module-fuse.device loaded active plugged /sys/module/fuse sys-subsystem-net-devices-enp0s3.device loaded active plugged 82540EM Gigabit Ethernet Controller (PRO/1000 MT Desktop Adapter) -.mount loaded active mounted Root Mount dev-hugepages.mount loaded active mounted Huge Pages File System dev-mqueue.mount loaded active mounted POSIX Message Queue File System run-user-1000-gvfs.mount loaded active mounted /run/user/1000/gvfs run-user-1000.mount loaded active mounted /run/user/1000 snap-core-3887.mount loaded active mounted Mount unit for core snap-core-4017.mount loaded active mounted Mount unit for core snap-core-4110.mount loaded active mounted Mount unit for core snap-gping-13.mount loaded active mounted Mount unit for gping snap-termius\x2dapp-8.mount loaded active mounted Mount unit for termius-app sys-fs-fuse-connections.mount loaded active mounted FUSE Control File System sys-kernel-debug.mount loaded active mounted Debug File System acpid.path loaded active running ACPI Events Check cups.path loaded active running CUPS Scheduler systemd-ask-password-plymouth.path loaded active waiting Forward Password Requests to Plymouth Directory Watch systemd-ask-password-wall.path loaded active waiting Forward Password Requests to Wall Directory Watch init.scope loaded active running System and Service Manager session-c2.scope loaded active running Session c2 of user magi accounts-daemon.service loaded active running Accounts Service acpid.service loaded active running ACPI event daemon anacron.service loaded active running Run anacron jobs apache2.service loaded active running The Apache HTTP Server apparmor.service loaded active exited AppArmor initialization apport.service loaded active exited LSB: automatic crash report generation aptik-battery-monitor.service loaded active running LSB: start/stop the aptik battery monitor daemon atop.service loaded active running Atop advanced performance monitor atopacct.service loaded active running Atop process accounting daemon avahi-daemon.service loaded active running Avahi mDNS/DNS-SD Stack colord.service loaded active running Manage, Install and Generate Color Profiles console-setup.service loaded active exited Set console font and keymap cron.service loaded active running Regular background program processing daemon cups-browsed.service loaded active running Make remote CUPS printers available locally cups.service loaded active running CUPS Scheduler dbus.service loaded active running D-Bus System Message Bus postfix.service loaded active exited Postfix Mail Transport Agent
-
UNIT
L’unità descrive il nome dell’unità di sistema corrispondente. -
LOAD
Questo descrive se l’unità corrispondente attualmente caricata in memoria o meno. -
ACTIVE
Indica se l’unità è attiva o meno. -
SUB
Indica se l’unità è in esecuzione o meno. -
DESCRIPTION
Una breve descrizione l’unità.
L’opzione seguente ti aiuta a elencare le unità in base al tipo.
# systemctl list-units --type service UNIT LOAD ACTIVE SUB DESCRIPTION accounts-daemon.service loaded active running Accounts Service acpid.service loaded active running ACPI event daemon anacron.service loaded active running Run anacron jobs apache2.service loaded active running The Apache HTTP Server apparmor.service loaded active exited AppArmor initialization apport.service loaded active exited LSB: automatic crash report generation aptik-battery-monitor.service loaded active running LSB: start/stop the aptik battery monitor daemon atop.service loaded active running Atop advanced performance monitor atopacct.service loaded active running Atop process accounting daemon avahi-daemon.service loaded active running Avahi mDNS/DNS-SD Stack colord.service loaded active running Manage, Install and Generate Color Profiles console-setup.service loaded active exited Set console font and keymap cron.service loaded active running Regular background program processing daemon cups-browsed.service loaded active running Make remote CUPS printers available locally cups.service loaded active running CUPS Scheduler dbus.service loaded active running D-Bus System Message Bus fwupd.service loaded active running Firmware update daemon loaded active running Getty on tty1 grub-common.service loaded active exited LSB: Record successful boot for GRUB irqbalance.service loaded active running LSB: daemon to balance interrupts for SMP systems keyboard-setup.service loaded active exited Set the console keyboard layout kmod-static-nodes.service loaded active exited Create list of required static device nodes for the current kernel
L’opzione seguente ti aiuta a elencare le unità in base allo stato. È simile all’output precedente ma semplice.
# systemctl list-unit-files --type serviceUNIT FILE STATE accounts-daemon.service enabled acpid.service disabledalsa-restore.service static alsa-state.service static alsa-utils.service masked anacron-resume.service enabled anacron.service enabled apache-htcacheclean.service disabled disabledapache2.service enabled disabledapparmor.service enabled static apport.service generatedapt-daily-upgrade.service static apt-daily.service static aptik-battery-monitor.service generatedatop.service enabled atopacct.service enabled enabled avahi-daemon.service enabled bluetooth.service enabled
Esegui il seguente comando per visualizzare lo stato del servizio specifico.
# systemctl | grep apache2 apache2.service loaded active running The Apache HTTP Server
In alternativa, utilizzare il comando seguente per visualizzare lo stato del servizio particolare.
Eseguire il comando seguente per visualizzare solo i servizi in esecuzione nel sistema.
# systemctl | grep running acpid.path loaded active running ACPI Events Check cups.path loaded active running CUPS Scheduler init.scope loaded active running System and Service Manager session-c2.scope loaded active running Session c2 of user magi accounts-daemon.service loaded active running Accounts Service acpid.service loaded active running ACPI event daemon apache2.service loaded active running The Apache HTTP Server aptik-battery-monitor.service loaded active running LSB: start/stop the aptik battery monitor daemon atop.service loaded active running Atop advanced performance monitor atopacct.service loaded active running Atop process accounting daemon avahi-daemon.service loaded active running Avahi mDNS/DNS-SD Stack colord.service loaded active running Manage, Install and Generate Color Profiles cron.service loaded active running Regular background program processing daemon cups-browsed.service loaded active running Make remote CUPS printers available locally cups.service loaded active running CUPS Scheduler dbus.service loaded active running D-Bus System Message Bus fwupd.service loaded active running Firmware update daemon loaded active running Getty on tty1 irqbalance.service loaded active running LSB: daemon to balance interrupts for SMP systems lightdm.service loaded active running Light Display Manager ModemManager.service loaded active running Modem Manager NetworkManager.service loaded active running Network Manager polkit.service loaded active running Authorization Manager
Utilizza il seguente comando per visualizzare l’elenco dei servizi in esecuzione abilitati all’avvio.
# systemctl list-unit-files | grep enabledacpid.path enabled cups.path enabled accounts-daemon.service enabled anacron-resume.service enabled anacron.service enabled apache2.service enabled apparmor.service enabled atop.service enabled atopacct.service enabled enabled avahi-daemon.service enabled bluetooth.service enabled console-setup.service enabled cron.service enabled cups-browsed.service enabled cups.service enabled display-manager.service enabled dns-clean.service enabled friendly-recovery.service enabled enabled gpu-manager.service enabled keyboard-setup.service enabled lightdm.service enabled ModemManager.service enabled network-manager.service enabled networking.service enabled NetworkManager-dispatcher.service enabled NetworkManager-wait-online.service enabled NetworkManager.service enabled
systemd-cgtop mostra i principali gruppi di controllo in base al loro utilizzo di risorse come attività, CPU, memoria, input e output.
Inoltre possiamo controllare i servizi in esecuzione utilizzando il comando pstree (output dal sistema SysVinit) .
Inoltre possiamo controllare i servizi in esecuzione usando il comando pstree (Output dal sistema systemd).
Metodo-4: Come controllare i servizi in esecuzione nel sistema systemd usando il comando chkservice
chkservice è un nuovo strumento per la gestione delle unità systemd nel terminale. Richiede privilegi di super utente per gestire le unità.
# chkservice
Per visualizzare la pagina della guida, premi il pulsante “?”. Questo ti mostrerà le opzioni disponibili per gestire i servizi systemd.