Aller au contenu
minimachine.
← Le parcours
Étape 26 · Bien bosser Intermédiaire · 12 min

🔄Maintenir et mettre à jour

Une machine allumée en permanence se tient propre dans le temps. L'OS, les dépendances, les outils, les agents : ce qu'on automatise, ce qu'on met à jour à la main, et comment ne rien casser.


Une machine qui tourne 24 h/24 et qui est joignable de l’extérieur n’est jamais « finie ». Elle vit, et comme tout ce qui vit, elle a besoin d’un peu d’entretien. La bonne nouvelle : 90 % se résume à deux réflexes, l’un automatique, l’autre mensuel. On va voir lesquels, et surtout comment mettre à jour sans rien casser.

L’OS : le système de base

Votre Ubuntu est la fondation. Deux niveaux d’entretien :

# Le geste de routine : rafraîchir la liste des paquets, puis installer les mises à jour
sudo apt update && sudo apt upgrade -y
# Faire le ménage des paquets devenus inutiles
sudo apt autoremove --purge

Pour la sécurité, vous avez déjà tout automatisé dans Réglages système avec unattended-upgrades : la machine applique seule les correctifs critiques. C’est le réflexe automatique dont on parlait.

Une fois tous les deux ans, une nouvelle version LTS d’Ubuntu sort. La migration se fait avec sudo do-release-upgrade, mais prenez le temps : sauvegardez d’abord (voir Git, GitHub & sauvegardes), et lisez les notes de version. Rien d’urgent, une LTS est supportée des années.

Les dépendances : ce sur quoi vos projets reposent

C’est là que se cachent les surprises, parce qu’une dépendance qui change de version majeure peut casser un projet.

  • Node (via nvm) : nvm install --lts installe la dernière LTS, nvm alias default la fixe par défaut. Gardez l’ancienne le temps de vérifier que vos projets tournent.
  • Les paquets d’un projet : npm outdated montre ce qui est en retard, npm update met à jour dans les limites de votre package.json. Pour les versions majeures, lisez le changelog avant : c’est là que les ruptures arrivent.
  • Le réflexe qui sauve : les lockfiles. Versionnez vos package-lock.json / requirements.txt. Ils garantissent que votre projet réinstalle exactement les mêmes versions, partout, et que rien ne bouge dans votre dos.

Les outils et les agents

Le reste de votre stack se met à jour proprement, chacun à sa façon :

  • Docker : suit les mises à jour apt du système. Pensez à nettoyer ce qui s’accumule (voir plus bas).
  • Ollama : relancez le script d’installation pour passer à la dernière version (curl -fsSL https://ollama.com/install.sh | sh). Et pour les modèles, un nouveau millésime se récupère avec ollama pull <modèle> : la version locale est remplacée.
  • Vos agents de code : Claude Code et OpenCode se tiennent à jour quasiment seuls, et sinon un npm update -g (ou leur propre commande de mise à jour) suffit. Un agent à jour, c’est de nouvelles capacités gratuites.
  • Tailscale et cloudflared : installés via leurs dépôts, ils se mettent à jour avec le système. Rien à faire de spécial.

L’espace disque : le piège silencieux

Les modèles, les images Docker et les vieux paquets remplissent un disque sans prévenir, et une machine pleine se met à planter de façon mystérieuse. Le ménage tient en trois commandes :

df -h                      # combien de place il reste
docker system prune -a     # vire images et conteneurs inutilisés
ollama rm <modèle>         # supprime un modèle que vous n'utilisez plus
sudo apt autoremove --purge # paquets orphelins

Faites-vous aider par l’agent

C’est exactement le genre de corvée que votre agent adore. « Vérifie ce qui est à mettre à jour sur cette machine, résume-moi les changements importants, et propose un plan » : il liste les paquets en retard, lit les changelogs à votre place, et vous propose d’agir étape par étape. Vous gardez le doigt sur le bouton, lui fait le travail d’enquête.