Red Hat / CentOS Check and List Running Services Linux Command

last updated in Categories , , , , ,

How do I list all currently running services in Fedora / RHEL / CentOS Linux server? How can I check the status of a service using systemd based CentOS/RHEL 7.x?

There are various ways and tools to find and list all running services under a Fedora / RHEL / CentOS Linux systems.

Red Hat / CentOS Check and List Running Services Command

Please note that systemd based system such as CentOS/RHEL 7.x and latest version of fedora use the systemctl command to list running services.

List running services using service command on a CentOS/RHEL 6.x or older

The syntax is as follows for CentOS/RHEL 6.x and older (pre systemd systems):
service --status-all
service --status-all | more
service --status-all | grep ntpd
service --status-all | less

Print the status of any service

To print the status of apache (httpd) service:
service httpd status

List all known services (configured via SysV)

chkconfig --list

List service and their open ports

netstat -tulpn

Turn on / off service

ntsysv
chkconfig service off
chkconfig service on
chkconfig httpd off
chkconfig ntpd on

ntsysv is a simple interface for configuring runlevel services which are also configurable through chkconfig. By default, it configures the current runlevel. Just type ntsysv and select service you want to run.

Red Hat / CentOS List Running Services using systemctl (RHEL/CentOS 7.x)

If you are using systemd based distro such as Fedora Linux v22/23/24/26/27/28/29 or RHEL/CentOS Linux 7.x+. Try the following command to list running services using the systemctl command. It control the systemd system and service manager.

To list systemd services on CentOS/RHEL 7.x+ use

The syntax is:
systemctl
systemctl | more
systemctl | grep httpd
systemctl list-units --type service
systemctl list-units --type mount

To list all services:
systemctl list-unit-files
Sample outputs:

Fig.01: List all units installed on the CentOS /RHEL 7 systemd based system, along with their current states
Fig.01: List all units installed on the CentOS /RHEL 7 systemd based system, along with their current states

To view processes associated with a particular service (cgroup), you can use the systemd-cgtop command. Like the top command, systemd-cgtop lists running processes based on their service:
systemd-cgtop
Sample outputs:

Path                                            Tasks   %CPU   Memory  Input/s Output/s
 
/                                                  85    0.3   240.1M        -        -
/system.slice/NetworkManager.service                2      -        -        -        -
/system.slice/auditd.service                        1      -        -        -        -
/system.slice/crond.service                         1      -        -        -        -
/system.slice/dbus.service                          1      -        -        -        -
/system.slice/lvm2-lvmetad.service                  1      -        -        -        -
/system.slice/polkit.service                        1      -        -        -        -
/system.slice/postfix.service                       3      -        -        -        -
/system.slice/rsyslog.service                       1      -        -        -        -
/system.slice/sshd.service                          1      -        -        -        -
/system.slice/...tty.slice/getty@tty1.service       1      -        -        -        -
/system.slice/systemd-journald.service              1      -        -        -        -
/system.slice/systemd-logind.service                1      -        -        -        -
/system.slice/systemd-udevd.service                 1      -        -        -        -
/system.slice/tuned.service                         1      -        -        -        -
/system.slice/wpa_supplicant.service                1      -        -        -        -
/user.slice/user-0.slice/session-2.scope            1      -        -        -        -
/user.slice/user-1000.slice/session-1.scope         4      -        -        -        -

To list SysV services only on CentOS/RHEL 7.x+ use (does not include native systemd services)

chkconfig --list
Sample outputs:

Fig.02: List Sysv based services on systemd
Fig.02: List Sysv based services on systemd

How to check the status of a service using systemd

Say you want to check status of a service named sshd, run
$ systemctl status sshd.service
Sample outputs:

? sshd.service - OpenSSH server daemon
   Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2018-10-15 11:59:40 IST; 4 weeks 0 days ago
     Docs: man:sshd(8)
           man:sshd_config(5)
 Main PID: 1540 (sshd)
    Tasks: 1
   CGroup: /system.slice/sshd.service
           ??1540 /usr/sbin/sshd -D
 
Nov 06 00:00:00 centos7-box sshd[27878]: Accepted publickey for vivek from 192.168.2.30 port 37785 ssh2: RSA SHA256:GVszs/CD7zRUV6uFCp1c9/8OEgzI5RTD2TvPkglS0AA
Nov 12 14:15:44 centos7-box sshd[29290]: Accepted publickey for backup from 192.168.2.24 port 59226 ssh2: ED25519 SHA256:uym82tbI4l6Gfl+uf/+lfzymbkhstTnAS35lcoa6VLU

One can verify that if a service named sshd is running (active) or not running (inactive) on a CentOS/RHEL 7.x+:
systemctl is-active sshd
systemctl is-enabled sshd
systemctl is-active nginx
systemctl is-enabled nginx
systemctl is-enabled httpd

Check whether a service is running or not running on a CentOS RHEL

Conclusion

For latest version of the CentOS/RHEL 7.x use the systemctl command and for older version try service command to show all services running under Centos or RHEL Server.

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

Start the discussion at www.nixcraft.com

Historical Comment Archive

22 comment

  1. would these work on a ubuntu-server install? i would really have some use for commands to list running services.

  2. thanks vivek, am hoping its already installed coz on a server you definitely wanna check on services.
    but isn’t it like ubuntu doesn’t follow the SysV model, especially in terms of the init system but has its own upstart something?

  3. service httpd mysqld tomcat5 start/stop/restart/status
    chkconfig service on/off
    netstat -tulpn
    ntsysv gui
    service service start is different from chkconfig , when the server is rebooted , service start will not work .

  4. In debian/ubuntu, install sysv-rc-conf and sysvinit-utils. That’s the first thing I do on any .deb box. These should be default with debian and ubuntu installs, IMO.

  5. I would love an article discribing all the “default” services in a Centos 5.x installation and which to keep for performance and secrutiy and which to turn off. Basically discribing the more common ones.
    When i list with ntsysv i see a ton i have no clue what really does ;)

  6. Dear sir!
    Right now i have some question about Centos.
    i can not configure some main service dns, apache …
    please you help me!!!

  7. For Ubuntu 12.04, you can list service status with 2 commands (first for SysV services and second for upstart services):

    service –status-all
    initctl list

  8. hi guys please help me out,
    i have to run “.jar” as service in centos32 machine.
    how can i do that…

  9. Hello Sir,
    i am using RHEL server 5.8 . Now i want to know the list of Services running as per OS level..
    I have executed “service –status-all ” -> it showing Error :bash :: command service not found..
    what ‘s the problem in my case ??
    my info ::: uname -a
    o/p :: Linux NEURAREPO 2.6.18-308.el5 #1 SMP Fri Jan 27 17:17:51 EST 2012 x86_64 x86_64 x86_64 GNU/Linux
    pls guide me to know the lsit of Services running in my server.thnak you..

  10. On CentOS7 I had to run

    systemctl

    To list all active services. Service –status-all no longer gives the desired result since systemd handles the init scripts.

  11. I am using RHEL to host Bitbucket/Stash and would like to find out what account is using the service. How can I figure this out other than checking init.d script?

  12. My device is reporting that services are not active. Email , notifications, calendar and therefore can not verify my email address.All signed apps are also not active.Please help.(iCloud Drive is not active, backup not active,and can not save documents, Keynote, Pages, numbers can not work if the email is not verified).

    Have a question? Post it on our forum!