uptime
cat /etc/os-release
💡Eine hohe Uptime (z. B. über 250 Tage) zeigt ein stabiles System,
kann aber darauf hinweisen, dass Kernel-Updates noch nicht aktiv verwendet werden.
Nach Kernel-Updates sollte daher immer ein Reboot durchgeführt werden,
damit der neue Kernel tatsächlich geladen wird.
Nur so werden Sicherheits- und Stabilitätsupdates auch wirksam.
uname -r
ls /lib/modules
Alternativ als mini Funktion:
current_kernel="$(uname -r)"
latest_installed="$(ls /lib/modules | sort -V | tail -n 1)"
if [ "$current_kernel" != "$latest_installed" ]; then
echo "Reboot required (running: $current_kernel, installed: $latest_installed)"
else
echo "No reboot required (kernel up to date)"
fi
# fehlerhafte Dienste anzeigen
systemctl list-units --type=service --state=failed
# Alle Dienste anzeigen
systemctl list-units --type=service
Kernel:
Kernel-Fehler anzeigen:
dmesg -T | grep -iE "error|fail|critical"
Systemlogs:
Fehler der letzten 50 Zeilen in syslog:
grep -iE "error|fail|critical" /var/log/syslog | tail -n 50
Alternativ:
journalctl -p 3 -xb --since "7 days ago"
Updates nur in einer tmux session installieren. Sollte beim Update die Verbindung zum Server unterbrochen werden, läuft das Update weiter. Somit wird sichergestellt das der Server beim Update nicht stribt
apt list --installed > ~/curr-pkgs.txt
apt update
apt list --upgradable
apt upgrade -y
apt autoremove -y
current_kernel="$(uname -r)"
latest_installed="$(ls /lib/modules | sort -V | tail -n 1)"
if [ "$current_kernel" != "$latest_installed" ]; then
echo "Reboot required (running: $current_kernel, installed: $latest_installed)"
else
echo "No reboot required (kernel up to date)"
fi
reboot now
apt clean
Die Architektur kannst du so prüfen:
dpkg --print-architecture
Intel/AMD:
apt install -y linux-headers-amd64
ARM64/aarch64:
apt install -y linux-headers-arm64
Alternative für den aktuellen Kernel:
apt install -y linux-headers-$(uname -r)
Das Paket
linux-headers-amd64bzw.linux-headers-arm64ist ein Meta-Paket und zieht bei zukünftigen Kernel-Updates automatisch die passenden Header nach.linux-headers-$(uname -r)installiert dagegen nur die Header für den aktuell laufenden Kernel.
df -hT \
-x overlay -x aufs -x tmpfs -x devtmpfs -x squashfs -x ramfs \
-x proc -x sysfs -x cgroup2 -x cgroup -x securityfs -x pstore \
-x mqueue -x debugfs -x tracefs -x fusectl -x nsfs \
| awk 'NR==1 || $1 ~ "^/dev/"'
Überblick nach Verzeichnissen
sudo du -xh --max-depth=1 <PATH> | sort -h
Einzelne große Dateien finden
sudo find /opt -type f -size +500M -exec ls -lh {} \;
smartctl -a /dev/sda | grep -E "SMART overall-health|Reallocated_Sector|Temperature"
Falls mehrere Disks vorhanden: /dev/sdb, /dev/nvme0n1, etc.
free -h
crontab -l
grep CRON /var/log/syslog
journalctl -u cron -n 20
systemctl list-timers --all
ss -tulnp
netstat -plant | grep LISTEN
# Firewall-Status prüfen
iptables -L -n -v
ps aux --sort=-%mem | head -n 10
ps aux --sort=-%cpu | head -n 10