Todos los artículos

linux

How to Check Running Processes on a Linux Server

A plain-English guide to seeing what is running on your server, what is using CPU or memory, and what to do when something looks suspicious.

  • linux
  • processes
  • troubleshooting
A calm abstract Linux server dashboard shows a magnifier inspecting running processes and CPU memory bars.

Your server feels busy, slow, or mysterious, and you need to know what is actually running before you start guessing.

Short version: to check running processes on a Linux server, you usually look at tools like top, htop, ps aux, systemctl, and, if you use containers, docker ps. These show which programs are alive, how much CPU and memory they are using, and whether a background service is supposed to be running. The goal is not to memorize every line, but to spot the few things that explain the problem.

What is running on your Linux server?

A process is just a program that is currently alive.

Some processes are obvious: your web app, database, background worker, or file sync tool. Others are part of the operating system: login services, network services, scheduled jobs, and helpers that keep the server usable.

Think of your server like a small workshop. A process is a person or machine doing a task inside that workshop. Some are building your website. Some are sweeping the floor. Some are waiting by the door in case a visitor arrives.

That is why a long process list is normal. The question is not “why are there so many things?” The better question is “which thing is using too much, crashing, or not supposed to be here?”

A running process usually has a few useful labels:

  • a name, like nginx, postgres, node, php-fpm, or mysqld
  • a process ID, often called a PID, which is its temporary number
  • a user, which tells you who started it
  • CPU use, meaning how much brainpower it is taking
  • memory use, meaning how much working space it is holding

If your server is slow, this list is one of the first places to look. For a broader view of slow-server causes, see Why Is My VPS Slow? A Beginner’s Guide to CPU, RAM, Disk, and Traffic Problems.

How do you check running processes on a Linux server?

The most common live view is top.

top is like looking through the workshop window. It refreshes every few seconds and shows the busiest processes near the top. If one process is using 95% CPU, it will usually stand out quickly.

Many people prefer htop, which is a friendlier version of the same idea. It is easier to read, easier to sort, and shows CPU and memory bars visually. If top feels like a spreadsheet, htop feels more like a dashboard.

For a one-time snapshot, ps aux is useful. It prints a list of running processes at that moment. This is good when you want to search for a name, compare output, or paste the result into notes while troubleshooting.

You may also need systemctl, which shows system services. A service is a process the server is expected to manage for you, such as a web server, database, or queue worker. If your app should be running after a reboot, it is often represented as a service.

If your projects run in Docker, the command people usually recognize is docker ps. It shows running containers, which are like boxed-off mini-environments for apps. A container may hide several internal processes, so Docker adds one more layer to check. If that layer is new to you, this guide may help: Docker on a VPS for Beginners: What It Is, When You Need It, and When You Don’t.

How do you find what is eating CPU, RAM, or disk?

CPU problems usually look like one process sitting near the top of top or htop and staying there.

A short spike is normal. A backup, image resize, update, or report export may briefly work hard. A constant spike is more suspicious. It can mean a traffic surge, a stuck background job, a bad loop in code, a search engine crawler being too aggressive, or malware.

Memory problems are quieter. A process may slowly grow until the server runs out of room. When that happens, Linux may start killing processes to survive. You might see your site disappear, then come back, then disappear again.

Disk problems are different again. A process may not use much CPU, but it can write logs, uploads, cache files, or database changes so heavily that everything feels stuck. If your disk is full, even healthy apps can fail in strange ways.

Names help, but context matters. postgres using memory may be normal for a database. node using CPU may be normal during a build, but not all day. nginx with many connections may point to traffic. A random unknown process under a strange user deserves a closer look.

When you see something odd, match it with logs. Process lists tell you what is busy; logs often tell you why. For that next step, read How to Read Server Logs When Something Breaks.

FAQ

Is a high number of processes bad? Not by itself. Linux runs many small background helpers. Look for high CPU, high memory, strange names, or services that keep restarting.

**What is the difference between top and ps aux?** top is a live view that keeps updating. ps aux is a snapshot of what was running at one moment.

Why does the same app show several processes? Many apps use workers. A web server, database, or app runtime may split work across several processes so it can handle more requests.

Should I kill a process that uses too much CPU? Only if you understand what it is. Killing the wrong process can take your website, database, or login session down.

How often should I check running processes? Check when the server is slow, after deploying something new, after a reboot, and whenever you see errors or unexpected resource use.

The shortcut

Server Manager helps by keeping the important parts of your server understandable without forcing you to rebuild the story from raw process names months later.

That matters when the same server hosts several projects. Instead of wondering whether a busy process belongs to your website, a background worker, a database, or an old experiment you forgot about, the setup stays easier to read. It reduces the chance that one project breaking another becomes a mystery.

The real benefit is not avoiding every problem. It is having a clearer map when a problem appears: which app should be running, which service belongs to it, and what changed since the last time everything worked.

How do you stay in control next time?

Checking running processes on a Linux server is less about being a system expert and more about learning where to look first.

If something is slow, find the busiest process. If something is missing, check whether its service is running. If something keeps coming back, read the logs and connect the dots.

Your win is simple: fewer blind guesses, less panic, and a server that feels like a place you can inspect instead of a black box.