System uptime tracking tool that preserves historical uptime/downtime statistics across reboots with detailed reporting
Tuptime is a system monitoring tool that tracks and reports historical uptime and downtime statistics across system reboots. Unlike the standard uptime command which only shows current session data, tuptime maintains a persistent SQLite database of all system startups and shutdowns, providing comprehensive statistics including longest uptimes, average downtimes, and system reliability metrics.
The tool operates without running as a daemon, executing only during system startup and shutdown events. It includes cron job integration to periodically update records and handle unexpected shutdowns like power failures. Tuptime can output data in multiple formats including tabular views (-t), detailed lists (-l), and CSV format for integration with other tools.
The tool is designed for system administrators who need to track system reliability over time. It provides detailed statistics such as total system life, startup counts, shutdown types (clean vs bad shutdowns), and can filter data by date ranges or boot sessions. Tuptime also handles edge cases like NTP clock adjustments and virtualized environments that can cause false startup records in other monitoring tools.
# via Package Manager
Available via apt (Debian/Ubuntu), dnf (Fedora), pacman (Arch), pkg (FreeBSD)
# via One-liner Script
bash < <(curl -Ls https://raw.githubusercontent.com/rfmoz/tuptime/master/tuptime-install.sh)
# via Manual
git clone --depth=1 https://github.com/rfmoz/tuptime.git && cp tuptime/src/tuptime /usr/bin/tuptime