infos_systeme.sh
Note de lecture générée automatiquement
Le vrai fichier est
scripts/linux/infos_systeme.sh(Obsidian n’affiche pas les scripts eux-mêmes). Ne modifie pas cette note : modifie le script, puis relancepython3 generer_vues_obsidian.pydans le dossierscripts.
- À quoi il sert : Fiche d’identité d’une machine Linux
- Lancer (dans le dossier
scripts/linux/) :./infos_systeme.sh - Fiche : L05 - Services, processus et journaux
- Retour : 00 - Tous les scripts
Code
#!/usr/bin/env bash
# =============================================================================
# infos_systeme.sh — Fiche d'identité rapide d'une machine Linux
# (utile en début d'intervention, ou pour remplir un compte rendu de TP)
# Usage : ./infos_systeme.sh (aucun droit root nécessaire)
# =============================================================================
titre() { printf '\n\033[1;36m== %s ==\033[0m\n' "$1"; }
titre "Système"
echo "Nom d'hôte : $(hostname)"
if os-release; then
. /etc/os-release
echo "Distribution : ${PRETTY_NAME:-inconnue}"
fi
echo "Noyau : $(uname -r)"
echo "Architecture : $(uname -m)"
echo "Allumé depuis : $(uptime -p 2>/dev/null || uptime)"
titre "Processeur et mémoire"
echo "CPU : $(grep -m1 'model name' /proc/cpuinfo | cut -d: -f2 | sed 's/^ //')"
echo "Cœurs : $(nproc)"
free -h | sed 's/^/ /'
titre "Disques"
df -h -x tmpfs -x devtmpfs -x squashfs -x overlay 2>/dev/null | sed 's/^/ /'
titre "Réseau"
ip -br address | sed 's/^/ /'
echo " Passerelle : $(ip route show default | awk '{print $3; exit}')"
if command -v resolvectl > /dev/null; then
echo " DNS : $(resolvectl dns 2>/dev/null | awk -F': ' 'NF>1 && $2!="" {print $2}' | tr '\n' ' ')"
else
echo " DNS : $(awk '/^nameserver/ {print $2}' /etc/resolv.conf | tr '\n' ' ')"
fi
titre "Ports en écoute"
ss -tuln 2>/dev/null | sed 's/^/ /'
titre "Services en échec"
systemctl --failed --no-legend 2>/dev/null | sed 's/^/ /' || echo " (systemd absent)"
titre "5 processus les plus gourmands en mémoire"
ps -eo pid,user,%mem,%cpu,comm --sort=-%mem | head -n 6 | sed 's/^/ /'