How to Use Linux List Services

Managing a Linux VPS is a critical and sometimes very difficult task if you don’t have the right tools. Often the difficulty lies in having to configure and maintain many resources and services. On a server, most resources are software making them a little easier to monitor. In this tutorial, you’ll learn all the Linux service basics, including how to manage, control, and list services using Linux commands.

Linux Services

A service is a program that runs in the background outside the interactive control of system users as they lack an interface. This in order to provide even more security, because some of these services are crucial for the operation of the operating system.

On the other hand, in systems like Unix or Linux, the services are also known as daemons. Sometimes the name of these services or daemons ends with the letter d. For example, sshd is the name of the service that handles SSH.

So, let us start to work and list services in Linux.

How to List Services in Linux

Let’s look at a potential scenario. While running your Linux system, you can no longer access localhost. Chances are that the HTTP service was disabled, and causing the problem.

To troubleshoot issues like this one and many others, it’s good to know how to list all services in Linux.

Fortunately, CentOS and Ubuntu – two of the most popular operating systems in their areas – share systemd. That means that the commands we are going to present are compatible with both systems.

First, we have to connect to our server using SSH. If you’re having trouble, check out our PuTTY tutorial.

Once inside, we need to be the root user to list service in Linux.

su

Now we can list all services in Linux. To do it, run the command:

sudo systemctl list-unit-files --type service --all

When the command is run, we will see all the services that are on the system. However, we will also see that some have a defined status. Let’s learn what all these mean.

  • Enabled services are currently running. They usually have no problems.
  • Disabled services are not active but can be activated at any time without a problem.
  • Masked services won’t run unless we take that property away from them.
  • Static services will only be used in case another service or unit needs it.
  • Finally, there are services generated through a SysV or LSB initscript with systemd generator.

In case we want to know only the services that are active, we have to use a command together with grep, like so:

sudo systemctl | grep running

Managing Linux Services

Now it is time to learn how to manage a specific service. Note that each service represents software that works differently. In this tutorial, we will only show how to start, check the status of and stop services – the basic controls

To start a service on Linux, we need to run the following command:

sudo systemctl start [service_name]

If the service is correctly configured, it will start. Now, if we want to stop it, we will use the following command:

sudo systemctl stop [service_name]

Meanwhile, to check the status of a service we can use:

sudo systemctl status [service_name]

It is also possible to have a service run while the operating system is being loaded:

sudo systemctl enable [service_name]

Or remove it from the initial load:

sudo systemctl disable [service_name]

Finally, it is possible to verify which port is being used by a service. For this, we will use netstat.

To install it on Ubuntu, we just run:

sudo apt install netstat-nat

If we are using CentOS 7:

yum install net-tools

Then, we run the following command:

sudo netstat -plnt

The output will give us all the required network information.

Conclusion

Learning how to list services in Linux is easy and can greatly speed up troubleshooting! In this tutorial, we learned how to start, enable, disable, stop, and list all services in Linux! Now you can manage your Linux VPS like a pro.

Finally, we recommend you to read more about systemctl to learn all the in-depth uses. Happy developing!

Author
The author

Edward S.

Edward is a content editor with years of experience in IT writing, marketing, and Linux system administration. His goal is to encourage readers to establish an impactful online presence. He also really loves dogs, guitars, and everything related to space.