Skip to main content

Documenting system uptime in Linux

The uptime command is simple but provides critical information to sysadmins.

The uptime command is straightforward and simple, but it can still be nice to see how some sysadmins use these common tools. Documenting the system's uptime may be important for service level agreements, performance monitoring, and general troubleshooting.

[ You might also like: Important Linux /proc filesystem files you need to know ]

The uptime command

The uptime command provides several useful results, depending on the information you need.

basic uptime output
Figure 1: Basic uptime command output.

Breaking down the output here:

  • Current time
  • Up (the current status of the system)
  • Total time the system has been running
  • User count (number of current logged in users)
  • System load averages over 1, 5, and 15 minutes

Note: The load average is based on both running and uninterruptable processes.

Documenting system uptime

So how can sysadmins use this information?

First, the command itself gives a quick look at a few general performance parameters. For example, you can see whether the system has restarted recently. You can also see how many users are logged in, letting you know whether the system is busy, if it can be rebooted, or even how useful the local services might be. Obviously, the ability to see the system load averages over time provides important system performance information.

Next, you can combine the uptime results with other commands to document the system's configuration and current status. Such a report might be important for service level agreements or general server availability queries by management. I have written a few quick examples of gathering system information below.

You can use general redirectors to document uptime results:

# uptime > system-doc.txt

Take a look at my recent article Five ways to use redirect operators in Bash for a reminder on using redirectors.

If there's already content in the system-doc.txt file, be sure to use the append redirector instead:

# uptime >> system-doc.txt

It is easy to combine the uptime results with the output of other commands to quickly report on the system's current status:

# date > system-doc.txt
# hostname >> system-doc.txt
# uptime >> system-doc.txt
# ip a >> system-doc.txt
basic documentation commands
Figure 2: Basic system documentation commands.

There are plenty of ways to automate and streamline such commands.

The uptime options

The uptime command doesn't have many options. In fact, there are only four, and one of those is the help option to view the other three. That option is -h.

First, use the -p option to organize the uptime output into a "pretty" format. Using this option results in just the system's running time being displayed on the screen.

uptime with -p option
Figure 3: The uptime -p command.

Redirect it into your documentation file like this:

# uptime -p >> system-doc.txt

Next, display the system date and time since the system started by using the -s option.

the uptime -s output
Figure 4: The uptime -s command.

SCREEN uptime -s

Redirect it into your documentation file like this:

# uptime -s >> system-doc.txt

Finally, the -V option displays the version information for the uptime command.

# uptime -V
uptime -V option
Figure 5: The uptime -V command.

[ Getting started with containers? Check out this free course. Deploying containerized applications: A technical overview. ]

Wrap up

I think it's worth pointing out that the uptime results are also displayed in the first line of the top command's output. That's pretty handy information when troubleshooting performance issues using top. In that case, knowing the system load averages over the five and fifteen-minute ranges is good as related to the current information dynamically displayed in top. For a reminder on how to use and customize top, see this article here on Enable Sysadmin.

While the uptime command is simple, I think it's useful for displaying basic system information. It can answer questions regarding how long the system has been available and give a general idea of performance based on user load.

Check out these related articles on Enable Sysadmin

Author’s photo

Damon Garn

Damon Garn runs Cogspinner Coaction, LLC, a technical writing and IT project company based in Colorado Springs, CO. He has been a technical instructor for nearly 20 years, with a focus on Windows Server, Linux, and security. More about me

On Demand: Red Hat Summit 2021 Virtual Experience

Relive our April event with demos, keynotes, and technical sessions from
experts, and sign up to attend breakout sessions June 15–16.

Related Content