Restaurer son TrueNAS sans perdre ses données après la mort de son device de boot
Retour d'expérience sur la récupération d'un TrueNAS SCALE après la mort de sa clé USB de boot, de la réinstallation sur SSD au réimport des pools ZFS.
Self hosting & homelab4 min de lecture

Un matin, impossible d'ouvrir Jellyfin. Je pense d'abord à un plantage de l'appli, ça arrive. Mais en regardant de plus près, c'est tout le TrueNAS qui ne répond plus, ni l'interface web, ni le SSH, rien du tout. Quelques recherches plus tard, le coupable est trouvé, la clé USB sur laquelle il démarrait venait de rendre l'âme. Heureusement, les disques de données n'ont rien eu. Il a quand même fallu réinstaller le système et réimporter les pools.
Le coupable#
Avant de tout réinstaller, je voulais être sûr que c'était bien la clé, et pas la carte mère ou un disque. Je l'ai donc retirée du NAS pour la brancher sur mon PC, avec dmesg ouvert en direct pour voir comment le noyau réagissait.
sudo dmesg -wAu branchement, tout a l'air normal, la clé est détectée comme n'importe quel périphérique USB. Puis au bout d'une quinzaine de secondes, les erreurs commencent à arriver.
Pour en avoir le cœur net, j'ai lancé smartctl dessus, qui interroge directement le périphérique sur son état de santé.
sudo smartctl -a /dev/sdXVerdict sans appel, la clé était bien morte. Le reste du NAS, lui, n'y était pour rien.
Le problème#
Mon TrueNAS SCALE démarrait sur une clé USB. Beaucoup de monde fait comme ça, c'était même la recommandation du temps de FreeNAS. Le souci, c'est qu'une clé USB supporte mal les écritures permanentes d'un système comme SCALE (logs, base de config…). Tôt ou tard elle cède, et rarement en prévenant.
Ce qui sauve la mise, c'est que TrueNAS sépare complètement le système des données. L'OS tourne sur son propre support, les données restent dans les pools ZFS. Quand le boot meurt, les données ne bougent pas, on réinstalle et on réimporte.
Le choix du nouveau support#
Cette fois, pas de clé USB. Un vieux Intel SSD 320 dormait dans un tiroir. il n'est pas tout jeune, mais il tourne toujours et pour faire démarrer un NAS ça devrait suffire.
Réinstaller TrueNAS SCALE#
On télécharge l'ISO sur le site de TrueNAS, la 25.10.7 pour moi, et on l'écrit sur une clé qui servira uniquement à l'installation.
sudo dd if=TrueNAS-SCALE.iso of=/dev/sdX bs=4M status=progress oflag=syncOn boote sur la clé, puis on choisit le SSD comme disque d'installation.
Réimporter les pools#
Sur une installation toute neuve, TrueNAS ne connaît encore aucun pool. On les récupère depuis l'interface, dans Storage puis Import Pool. Il repère tout seul ceux qui sont sur les disques.
Une fois les pools réimportés, chaque dataset a retrouvé sa place, et Jellyfin sa bibliothèque, comme si rien ne s'était passé.
En bref#
- Une clé USB n'est pas un support de boot fiable pour TrueNAS SCALE. Un petit SSD, même ancien, fait bien mieux l'affaire.
- Le système et les données sont séparés. Perdre le boot ne fait pas perdre les pools.
- Exportez votre config TrueNAS régulièrement, et stockez-la hors du NAS.
Bref, sur le coup c'est relou de devoir tout refaire, mais grâce à ZFS mes données n'ont jamais été en danger. Une réinstallation et un réimport plus tard, tout est reparti, et cette fois sur un support qui devrait tenir. prochain épisode, la mise en place d'un backup automatique de la config pour éviter de tout refaire à la main.

