Uptime Command in Linux

When you log in to a server, one of the first things you often want to know is how long it has been running and whether it is under heavy load. The uptime command answers both at a glance.
As its name suggests, uptime shows how long the system has been running. It also displays the current time, the number of logged-in users, and the system load averages for the past 1, 5, and 15 minutes.
This guide explains how to use the uptime command and how to read its output, including the load averages.
Quick Reference
| Task | Command |
|---|---|
| Show uptime, users, and load | uptime |
| Show uptime in a readable format | uptime -p |
| Show the date and time of last boot | uptime -s |
| Read raw uptime in seconds | cat /proc/uptime |
How to Use the Uptime Command
The syntax for the uptime command is as follows:
uptime [OPTIONS]To display the system uptime, run the command without any options:
uptimeThe output looks something like this:
22:20:33 up 620 days, 22:37, 1 user, load average: 0.03, 0.10, 0.10Reading the output from left to right:
22:20:33- The current system time.up 620 days, 22:37- How long the system has been running.1 user- The number of logged-in users.load average: 0.03, 0.10, 0.10- The system load averages for the past 1, 5, and 15 minutes.
The information shown by uptime is the same as the header of the w
command, and it also appears at the top of top
.
Understanding Load Averages
The load average on Linux can be a little confusing. Unlike other operating systems that report CPU load only, Linux reports the system load.
The system load average is a measure of the number of processes that are either running or waiting for resources such as CPU time or disk I/O. In short, it tells you how busy the system has been over a given interval.
If the load averages are close to 0.0, the system is mostly idle. When the 1-minute average is higher than the 5- and 15-minute averages, the load is rising; when it is lower, the load is falling.
For a CPU-bound workload, compare the load average with the number of logical CPU cores. A sustained load near the core count can indicate that the CPUs are fully occupied, while a higher value means tasks are waiting. This is only a rough guide because Linux also counts tasks waiting in uninterruptible sleep, which commonly includes disk I/O.
The load usually climbs because of higher CPU usage or heavy disk activity. For a deeper explanation, see Brendan Gregg’s article Linux Load Averages: Solving the Mystery .
uptime Options
The uptime command accepts only a few options.
Use the -p (--pretty) option to show the uptime in a readable format:
uptime -pIt prints only how long the system has been running:
up 1 year, 36 weeks, 4 days, 23 hours, 15 minutesThe -s (--since) option shows the date and time when the system booted:
uptime -s2025-09-01 23:43:32The widely available options are:
-h,--help- Display a help message and exit.-V,--version- Show version information and exit.
Newer procps-ng releases may also provide -c (--container) for container uptime and -r (--raw) for raw output. Run uptime --help to see which options your installed version supports.
Reading Uptime Without the Command
The uptime command reads its data from the kernel, and you can get the raw value directly from the /proc/uptime file:
cat /proc/uptime53593122.45 53341908.88The first number is the total uptime in seconds, and the second is the time the system has spent idle, summed across all CPU cores.
FAQ
How do I check how long a Linux server has been running?
Run uptime for a one-line summary, or uptime -p for a readable format such as “up 3 weeks, 2 days”.
What does the load average in uptime mean?
It is the average number of tasks running or waiting for resources over the past 1, 5, and 15 minutes. For CPU-bound work, compare it with the logical CPU core count, but remember that tasks waiting on disk I/O also contribute to Linux load.
How do I see when the system was last booted?
Use uptime -s, which prints the boot date and time. The who -b command shows the same information.
Why does uptime report a different load than Windows Task Manager?
Linux load averages count processes waiting on disk I/O as well as on the CPU, so they reflect overall system demand rather than CPU usage alone.
Conclusion
The uptime command is a quick way to check how long a system has been running and how busy it is. When you need more detail about the processes behind a high load average, follow up with top
.
Tags
Linuxize Weekly Newsletter
A quick weekly roundup of new tutorials, news, and tips.
About the authors

Dejan Panovski
Dejan Panovski is the founder of Linuxize, an RHCSA-certified Linux system administrator and DevOps engineer based in Skopje, Macedonia. Author of 800+ Linux tutorials with 20+ years of experience turning complex Linux tasks into clear, reliable guides.
View author page