Liste de contrôle post-mise à niveau
Warning
26.10 : ne purgez pas en masse les packages OpenSSH dans l’état rc. Les packages de remplacement peuvent toujours utiliser l’ancienne configuration et la purge peut interrompre SSH. Vérifiez 26.10 problèmes connus et conservez l’accès à la récupération avant la maintenance à distance.
Une fois la mise à niveau du système terminée et le système redémarré, suivez cette liste de contrôle élément par élément pour vous assurer que tous les services et fonctionnalités fonctionnent correctement.
1. Vérification de base du système
Confirmer les informations sur la version
# Confirm system version
lsb_release -a
cat /etc/os-release
# Confirm kernel version
uname -r
# Confirm architecture
uname -m
dpkg --print-architectureVérifier le démarrage du système
# View boot time
uptime
systemd-analyze
# Check for errors during boot
systemd-analyze blame
journalctl -b -p err
# Check dmesg for errors
dmesg --level=err,warn | tail -302. Vérification de la gestion des colis
Résoudre les problèmes potentiels de package
# Check for broken packages
sudo dpkg --audit
# Fix broken dependencies
sudo apt --fix-broken install
# Complete any interrupted configuration
sudo dpkg --configure -a
# Check for held-back packages
apt list --upgradableMise à jour complète
# Update package lists and install remaining updates
sudo apt update
sudo apt upgrade -y
sudo apt dist-upgrade -yNettoyer les anciens paquets
# Remove packages that are no longer needed
sudo apt autoremove --purge -y
# Clean package cache
sudo apt clean
# View installed old kernels
dpkg --list | grep linux-image | grep -v $(uname -r)
# Old kernels will be handled by autoremove; you can also remove them manually
# sudo apt purge linux-image-x.x.x-xx-generic3. Vérification de l’état du service
Afficher l’état d’exécution du service
# Check for failed services
systemctl --failed
# If there are failed services, view details
# systemctl status failed-service-name
# journalctl -u failed-service-name
# View all running services
systemctl list-units --type=service --state=runningComparez avec la liste des services de pré-mise à niveau
# If you saved the service list before upgrading
diff <(cat /backup/services-running-*.txt | awk '{print $1}' | sort) \
<(systemctl list-units --type=service --state=running | awk '{print $1}' | sort)Chèques de service communs
# SSH
sudo systemctl status ssh
ssh localhost
# Web server
sudo systemctl status nginx 2>/dev/null || sudo systemctl status apache2 2>/dev/null
curl -I http://localhost
# Database
sudo systemctl status mysql 2>/dev/null || sudo systemctl status postgresql 2>/dev/null
# Docker
sudo systemctl status docker
docker ps
# Check all auto-start services
systemctl list-unit-files --state=enabled --type=service4. Vérification du réseau
Connectivité réseau de base
# Check network interfaces
ip addr
# Check routing table
ip route
# Check DNS resolution
resolvectl status 2>/dev/null || cat /etc/resolv.conf
dig ubuntu.com +short
nslookup ubuntu.com
# Test external connectivity
ping -c 3 8.8.8.8
ping -c 3 ubuntu.com
# Check listening ports
ss -tlnpComparer les modifications du réseau
# Check Netplan configuration
cat /etc/netplan/*.yaml
# Confirm network management tool
systemctl status systemd-networkd 2>/dev/null
systemctl status NetworkManager 2>/dev/nullPare-feu
# Check UFW status
sudo ufw status verbose
# Confirm rules are intact
sudo ufw status numbered5. Stockage et système de fichiers
# Check disk space
df -h
# Check inode usage
df -i
# Check for filesystem errors
sudo dmesg | grep -i "ext4\|xfs\|btrfs" | grep -i error
# Check LVM status (if using LVM)
sudo lvs
sudo vgs
sudo pvs
# Check mount points
mount | column -t
cat /etc/fstab6. Contrôle de sécurité
Configuration de SSH
# Confirm SSH configuration was not overwritten
sudo sshd -t
grep -E "^(PermitRootLogin|PasswordAuthentication|Port)" /etc/ssh/sshd_config
grep -rE "^(PermitRootLogin|PasswordAuthentication|Port)" /etc/ssh/sshd_config.d/
# Confirm custom SSH configuration is still in effect
sudo systemctl restart sshUtilisateurs et autorisations
# Check user list
cat /etc/passwd | grep -v nologin | grep -v /bin/false
# Check sudo permissions
sudo cat /etc/sudoers.d/*
# Check SSH authorized keys
cat ~/.ssh/authorized_keysMises à jour de sécurité automatiques
# Check auto-update configuration
cat /etc/apt/apt.conf.d/20auto-upgrades
cat /etc/apt/apt.conf.d/50unattended-upgrades
# Ensure unattended-upgrades is running
sudo systemctl status unattended-upgrades7. Vérification de la candidature
Applications Web
# Check web server configuration syntax
sudo nginx -t 2>/dev/null
sudo apache2ctl configtest 2>/dev/null
# Check PHP version and modules (if using PHP)
php -v
php -m
# Check SSL certificates
sudo certbot certificates 2>/dev/nullDocker Conteneurs
# Check Docker service
docker info
# Check running containers
docker ps
# Check stopped containers
docker ps -a --filter "status=exited"
# Restart Docker Compose projects
cd /path/to/project && docker compose up -d
docker compose psBases de données
# MySQL/MariaDB
mysql -u root -p -e "SHOW DATABASES;"
mysql -u root -p -e "SELECT VERSION();"
# PostgreSQL
sudo -u postgres psql -c "SELECT version();"
sudo -u postgres psql -l8. Sources tierces et PPA
Vérifier les sources désactivées
# Third-party sources disabled during the upgrade
ls /etc/apt/sources.list.d/*.distUpgrade 2>/dev/null
# View currently active sources
apt-cache policy | head -30
grep -r "^Types:" /etc/apt/sources.list.d/*.sources 2>/dev/null
grep -r "^deb " /etc/apt/sources.list.d/*.list 2>/dev/nullRestaurer les sources tierces nécessaires
# Restore after confirming the source supports 26.04
# For example, restoring the Docker source
# sudo mv /etc/apt/sources.list.d/docker.list.distUpgrade /etc/apt/sources.list.d/docker.list
# Or re-add
# sudo add-apt-repository ppa:example/ppa
# Update sources
sudo apt update9. Tâches planifiées
# Check user cron
crontab -l
# Check system cron
cat /etc/crontab
ls /etc/cron.d/
ls /etc/cron.daily/
ls /etc/cron.weekly/
# Check systemd timers
systemctl list-timers --all10. Journaux et surveillance
Vérifier les journaux de mise à niveau
# Upgrade log directory
ls -la /var/log/dist-upgrade/
# View main log
cat /var/log/dist-upgrade/main.log | grep -E "(ERROR|WARNING)"
# View APT log
cat /var/log/dist-upgrade/apt.log | tail -50Nettoyer les journaux
# Clean old logs to free space
sudo journalctl --vacuum-time=7d
sudo journalctl --vacuum-size=500MRésumé de la liste de contrôle
- Version du système confirmée comme 26.04 LTS
- Aucun colis cassé ou retenu
- Tous les services critiques fonctionnent normalement
- La connectivité réseau est normale (interne et externe)
- Les règles du pare-feu sont intactes
- L’espace disque est suffisant
- L’accès à distance SSH fonctionne
- Les applications Web répondent normalement
- Les services de base de données sont normaux
- Conteneurs Docker fonctionnant normalement
- Les tâches planifiées fonctionnent
- Les mises à jour de sécurité automatiques sont activées
- Sources tierces restaurées si nécessaire
- Anciens noyaux et paquets inutiles nettoyés
- Stratégie de mise à niveau définie sur
lts
# Final confirmation
grep Prompt /etc/update-manager/release-upgrades
# Should output: Prompt=lts