Linux list running services

Red Hat / CentOS Check and List Running Services Linux Command

H ow 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 and RHEL/CentOS 8.x?

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

Tutorial details
Difficulty level Easy
Root privileges Yes
Requirements RHEL or CentOS Linux
Est. reading time 6 minutes

Red Hat / CentOS Check and List Running Services Command

Please note that systemd based system such as CentOS/RHEL 7.x/8.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

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

List all known services (configured via SysV)

List service and their open ports

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/8.x )

If you are using systemd based Linux distros such as Fedora Linux v22/23/24/26/27/28/29/30/31 or RHEL/CentOS Linux 7.x/8.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

Источник

How to List All Running Services Under Systemd in Linux

A Linux systems provide a variety of system services (such as process management, login, syslog, cron, etc.) and network services (such as remote login, e-mail, printers, web hosting, data storage, file transfer, domain name resolution (using DNS), dynamic IP address assignment (using DHCP), and much more).

Technically, a service is a process or group of processes (commonly known as daemons) running continuously in the background, waiting for requests to come in (especially from clients).

Linux supports different ways to manage (start, stop, restart, enable auto-start at system boot, etc.) services, typically through a process or service manager. Most if not all modern Linux distributions now use the same process manager: systemd.

Systemd is a system and service manager for Linux; a drop-in replacement for the init process, which is compatible with SysV and LSB init scripts and the systemctl command is the primary tool to manage systemd.

In this guide, we will demonstrate how to list all running services under systemd in Linux.

Listing Running Services Under SystemD in Linux

When you run the systemctl command without any arguments, it will display a list of all loaded systemd units (read the systemd documentation for more information about systemd units) including services, showing their status (whether active or not).

To list all loaded services on your system (whether active; running, exited or failed, use the list-units subcommand and —type switch with a value of service.

List All Services Under Systemd

And to list all loaded but active services, both running and those that have exited, you can add the —state option with a value of active, as follows.

List All Active Running Services in Systemd

But to get a quick glance of all running services (i.e all loaded and actively running services), run the following command.

List Running Services in Systemd

If you frequently use the previous command, you can create an alias command in your

/.bashrc file as shown, to easily invoke it.

Then add the following line under the list of aliases as shown in the screenshot.

Create a Alias for Long Command

Save the changes in the file and close it. And from now onwards, use the “running_services” command to view a list of all loaded, actively running services on your server.

View All Running Services

Besides, an important aspect of services is the port they use. To determine the port a daemon process is listening on, you can use the netstat or ss tools as shown.

Where the flag -l means print all listening sockets, -t displays all TCP connections, -u shows all UDP connections, -n means print numeric port numbers (instead of application names) and -p means show application name.

The fifth column shows the socket: Local Address:Port. In this case, the process zabbix_agentd is listening on port 10050.

Determine Process Port

Also, if your server has a firewall service running, which controls how to block or allow traffic to or from selected services or ports, you can list services or ports that have been opened in the firewall, using the firewall-cmd or ufw command (depending on the Linux distributions you are using) as shown.

List Open Services and Ports on Firewall

That’s all for now! In this guide, we demonstrated how to view running services under systemd in Linux. We also covered how to check the port a service is listening on and how to view services or ports opened in the system firewall. Do you have any additions to make or questions? If yes, reach us using the comment form below.

If You Appreciate What We Do Here On TecMint, You Should Consider:

TecMint is the fastest growing and most trusted community site for any kind of Linux Articles, Guides and Books on the web. Millions of people visit TecMint! to search or browse the thousands of published articles available FREELY to all.

If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.

We are thankful for your never ending support.

Источник

How to List Services in Linux

In this article, I will show you how to list all running services on Linux. We will also check how to check the status of a service on a systemd system.

Let’s learn different commands used to list services on Centos/RHEL 7.x.

Check and Listing linux services (systemd on Centos/RHEL 7.x)

To list systemd services we will use systemctl command as below

Sample Output

To list active systemd services run

Sample Output

Another command you can use is

Sample Output

You can pipe the output to grep to search a more specific service as shown below

Output

Listing services using Netstat Command

Nestat command is a tool used for examining active network connections, interface statistics as well as the routing table. It’s available in all Linux distributions and here we will check how to list services using netstat command.

To check the services alongside the ports they are listening.

Output

Viewing /etc/services file

The /etc/services is an ASCII file that contains information about numerous services that client applications might use on the computer. Within the file is the service name, port number and protocol it uses, and any applicable aliases. ITO put t indicates whether a service is TCP or UDP and the name it goes by according to IANA. This information is helpful especially if you are unsure which service is running on which port by default.

To get a clearer picture, view the /etc/services file using a text editor of your choice.

Output

Systemd services status check

In newer versions of Linux, Systemd init is present. To check if a service is running, use the syntax below

Syntax

For example, to check if OpenSSH is running on your system, run

Output

Alternatively, you can use the syntax below to check if the service is active

In this case, to check if OpenSSH is active, execute

Output

Also, you can use the command below to check if a service is enabled

To check if OpenSSH is enabled, run

Output

Checking the status of services in older systems (Centos/Rhel 6.x)

For systems running SysV Init, you can check the status of services by running

For example, to check the status of OpenSSH, run

Output

You can also check all services by running

Output

We hope you found this article useful. Feel free to try out some of the systemd commands listed here.

Источник

how to list all running services in linux from command line

In operating system talk, a service is an application that can be run in the background, usually in perpetuity in order to perform some task or waiting for service requests from other applications to perform tasks. All operating systems, including Linux has some kind of support for these type of applications. Services are also sometimes referred to as daemons.

There are different services that are required for the functioning of an operating system, while others are used by the user. Some common examples of user services are web servers such as Apache or Nginx and database servers such as Oracle or MySql. Some examples of OS specific services are dbus, xdm, network etc.

Most Linux systems have a similar implementation when it comes to running services, but there are still some differences between distros. Many distros also comes with some easy to use GUI applications that allow you to view and manage system services, but not all. We will look at how this can be done from the command prompt.

I should confess that I have exclusively used and worked on Gentoo and have not been keeping up much with the other distros. So, it is quite possible that this post will skew more towards Gentoo but i will try to keep it as generic as possible.

This post solely deals with how to list all services that you are installed or are running on your system. It does not deal with how add, delete or manage the services. I will probably write another post to deal with those functions. I will however describe how to find the status of the service as well, as that somehow corresponds to the reason you might be listing them in the first place.

Systemd or SysV Init/OpenRC

Despite some difference with the commands used to manage the service, most Linux systems have one thing in common. It stores the service related files in the /etc/ folder. The startup scripts for the services are usually in the /etc/init.d/ folder. You might also want to check the /etc/rc.d folder if you do not find the init.d/ folder.

As your system starts up, there needs to be a program or application that finds and launches appropriate drivers and start services. The old and tried system has been SysV init which mainly loaded and ran the startup scripts from /etc/init.d folder. Systemd is a modern day replacement for init and is being adopted by many distros.

It is important that you be aware of what boot system you have, which will help you with finding the startup scripts. A detailed discussion on that topic is probably not for this post.

How to List all Services

As mentioned earlier, most systems keep the startup scripts for the services in the /etc/init.d/ folder. So, a simple listing of the directory contents should show you the list of services that are installed and available to you.

bash$ ls /etc/init.d/

the file names in the folder usually match the name of the service.

One of the most widely used commands to list services and its status is the service command. It could actually be a symlink to the openrc command in some distros, such as Gentoo. So, this could differ between Linux distros, which means you will need to use a command that is specific to your distro or install another utility for it.

Gentoo

In Gentoo, the rc-status command can be used to list the running services. The rc-status command has several useful command line options.

bash$ rc-status —all

–all or -a: This will list all the running or stopped services from all run levels, organized by run level.
–servicelist or -s: This option will list all available services, in a long list
–unused or -u: This will print out the list of services that has not been assigned a run level.

You can use the complementary commands: rc-update, rc-config and rc-service to manage the services in the system.

The Ubuntu distribution and the various other related distros such as Kubuntu, Mint, Xubuntu etc uses Upstart by default instead of the traditional init system, and you can use the service command to list the services. Upstart is a event based system, so the output might vary depending on the state of the system and fired events.

bash$ service —status-all

You can also check the status of a single service, if you know the service name as shown below.

bash$ service mysql status

where mysql is the name of the service.

You can also use the initctl command, which is equivalent to the service command.

bash$ initctl list

Fedora

Fedora does have support for the service utility that was described above, but they recommend the systemctl utility to manage services. The following command will list all the services that running in the system.

bash$ systemctl list-units —type=service

You can check the status of a single service with the same command and different command line arguments.

bash$ systemctl status httpd.service

where httpd.service is the name of the service.

If you have a different distribution that the ones mentioned and the above commands do not work for you then refer to the documentation that is specific to the distro. Also, be sure to execute the above commands with the superuser permissions by using sudo or equivalent.

Ideally, you should disable the services that are not required or being used. You should remove them from the run level as well. It is usually a waste of hardware resources if it running all the time even if it has a small footprint. There is also a possibility of it being a security risk, especially if it has an open port and is listening on it.

Источник

Читайте также:  Что такое бондинг linux
Оцените статью