uptime
how long, and how busyuptime prints one line: the time, how long since the last boot, the number of logged-in users, and the load average over 1, 5 and 15 minutes.
Compare the load with the number of CPU cores: at or below the core count, the machine is keeping up.
At the terminal
Read the session first, then the notes: each numbered line in the output is answered by the note with the same number.
What the numbered lines are telling you
It is 10:42; the system has been up 12 days and 3 hours; two users are logged in. The load has been steady at well under 1.
A load of 4.0 would mean all four are fully busy. 0.42 means the machine is mostly idle.
-s gives the date and time of the last boot — useful for matching against the time of an outage.
Switches
A switch changes how the command behaves. These are the ones used day to day; man uptime lists the rest. Single-letter switches can usually be joined, so -l -a may be written -la.
-p- Pretty: print only the running time, in words.
-s- Since: print the date and time the system booted.
Variations worth knowing
The same tool, pointed at a narrower question. These four cover most of what it is reached for day to day.
uptime -pPrints only the running time, in words.
wThe same header, followed by who is logged in and what they are running.
cat /proc/loadavgThe raw load figures, as scripts read them.
last reboot | head -3Lists the most recent restarts.
In cybersecurity
A long uptime is not something to be proud of.
Kernel fixes need a reboot. A server up for 400 days is running a kernel with every vulnerability found in that time.
If uptime is a few hours and nobody restarted the machine, find out why: a crash, a power loss, or someone covering their tracks.
A high load on a machine that should be idle points to a runaway process — or one that should not be there at all.