Identifier
Lister les disques, isoler le support de sauvegarde et choisir un snapshot actuel, jamais un identifiant repris au hasard.
Cette page reprend le flux de documentation privée de restauration PRA automatisée sous forme publique. Les chemins, périphériques, snapshots et noms d'outils réels sont remplacés par des placeholders, mais l'ordre opératoire et les contrôles restent visibles.
Lister les disques, isoler le support de sauvegarde et choisir un snapshot actuel, jamais un identifiant repris au hasard.
Lancer le flux sans mode applicatif pour vérifier paramètres, montage, dépôt et options de boot.
Appliquer la procédure seulement après validation humaine du disque cible et du profil VM ou physique.
Comparer les UUID, contrôler / et /boot, puis vérifier systemd-boot et la chaîne Secure Boot/UKI si elle est active.
Un PRA ne vaut rien s'il s'arrête à une sauvegarde théorique. La procédure doit prouver qu'un système peut repartir depuis un snapshot choisi, avec les bons UUID, le bon bootloader et une chaîne de confiance encore cohérente.
La page reprend les preuves utiles sans donner les identifiants réels du dépôt, du snapshot ou des disques.
snapshot PRA de référence valeur masquée
dépôt Restic nom générique
outils PRA exportés sur le support backup
validation restauration et post-restore atteints
preuve suivante rapport pré-boot après revalidation
post-boot contrôles validés en VM
chaîne renforcée LUKS + UKI + TPM/FIDO2 + Secure Boot
Le point critique n'est pas la commande: c'est le rapport pré-reboot qui prouve que les fichiers restaurés pointent vers les bons disques.
Rapport final pre-reboot:
UUID disque root: ...
UUID disque boot: ...
UUID disque swap: ...
fstab root: ...
fstab boot: ...
fstab swap: ...
Diff UUID disque attendu vs fichiers boot/fstab:
UUID OK: fstab et entrees boot alignes avec les disques cibles.
La restauration n'est validée qu'après contrôle du montage, du bootloader et des artefacts de confiance réellement utilisés.
racine restaurée / monté depuis la cible restaurée
partition boot ESP restaurée montée sur /boot
fstab UUID alignés avec les disques réels
bootloader entrée systemd-boot attendue
UKI / Secure Boot cohérence vérifiée si profil renforcé
VM UEFI fallback EFI accepté si le boot fonctionne
La page privée décrit la restauration de bout en bout, depuis l'ISO live jusqu'aux vérifications dans le système restauré.
La validation en VM garde LUKS et UKI, mais n'active TPM, FIDO2 ou Secure Boot qu'après configuration explicite du matériel virtuel.
Le script borne la résolution DNS, corrige le résolveur si nécessaire et actualise le trousseau de clés Arch avant d'installer Restic.
Le script affiche les UUID racine, boot et swap attendus; une incohérence bloque le redémarrage au lieu de masquer l'erreur.
Cette page documente le flux validé pour restaurer un système depuis un disque de backup vers une VM vierge ou une machine physique. Le flux de référence inclut une chaîne renforcée: LUKS, TPM, FIDO2, UKI, Secure Boot et systemd-boot.
La vue d'ensemble de cette chaîne est rattachée à la page Boot Trust du portfolio.
<SNAPSHOT_ID>.<DEPOT_RESTIC>.<OUTILS_PRA>.<MONTAGE_BACKUP_LIVE>.<VM_TEST_PRA>.LUKS + UKI + clé de récupération. TPM, FIDO2 et enrôlement Secure Boot n'étaient pas demandés pendant cette phase.Avant le mode applicatif, le plan complet a été affiché et relu sans partitionnement ni restauration. Ces deux captures ouvrent la chronologie des preuves.
Le test public retient uniquement les propriétés non sensibles suivantes:
/bin, /lib et /lib64 sont recréés si nécessaire.systemd-ukify est installé dans la cible lorsque le profil UKI le demande.Les UUID affichés appartiennent exclusivement à cette VM jetable. Snapshot, secret Restic, phrases de passe et clé de récupération sont masqués.
archlinux-keyring, puis téléchargement automatique de Restic depuis les dépôts Arch.
sbctl déjà présents sur le système restauré signent ou vérifient les artefacts générés.
Après enrôlement du vTPM et régénération de l'UKI, la VM démarre sur le système restauré. Les contrôles suivants relient le disque reconstruit, le chiffrement et l'artefact de boot réellement utilisé.
/boot, partition LUKS ouverte, mapper racine actif en AES-XTS 512 bits et arborescence disque cohérente.
sbctl verify confirme la signature de l'UKI LTS et des noyaux. L'inspection UKI expose ses sections mesurables; les chargeurs fallback non utilisés restent hors de cette preuve.
tpm2-device=auto.
Ces captures ne sont pas présentées comme le post-boot de la VM restaurée. Elles démontrent séparément que la chaîne renforcée utilisée comme référence fonctionne sur l'hôte Morpheus.
bootctl. Les identifiants firmware et partition sont masqués.
morpheus-uki.conf pointe vers l'UKI LTS attendue. Le chemin de credentials et l'identifiant de l'ESP sont masqués.Dans l'ISO live Arch:
lsblk -f
Identifier:
<DISQUE_VM> en VM ou <DISQUE_PHYSIQUE> sur machine physique;<PARTITION_BACKUP>;restic snapshots; ne jamais reprendre aveuglément un identifiant historique.Monter le backup:
mkdir -p <MONTAGE_BACKUP_LIVE>
mount <PARTITION_BACKUP> <MONTAGE_BACKUP_LIVE>
Vérifier les outils:
grep -n "Rapport final pre-reboot\|Voulez-vous redemarrer" \
<MONTAGE_BACKUP_LIVE>/<OUTILS_PRA>/finalize-restore-target.sh \
<MONTAGE_BACKUP_LIVE>/<OUTILS_PRA>/run-pra-restore-luks-uki-tpm.sh
Vérifier et choisir le snapshot:
restic -r <MONTAGE_BACKUP_LIVE>/<DEPOT_RESTIC> snapshots --compact
Toujours lancer la commande sans --apply avant une restauration réelle:
<MONTAGE_BACKUP_LIVE>/<OUTILS_PRA>/run-pra-restore-luks-uki-tpm.sh \
--disk <DISQUE_CIBLE> \
--backup-dev <PARTITION_BACKUP> \
--snapshot <SNAPSHOT_ID> \
--target-root <RACINE_CIBLE> \
--backup-mount <MONTAGE_BACKUP_LIVE> \
--restic-repo-path <DEPOT_RESTIC> \
--password-prompt \
--install-restic \
--luks \
--uki \
--tpm \
--tpm-pcrs <PCRS_TPM> \
--recovery-key \
--fido2-pair \
--secure-boot
Cette variante valide la restauration LUKS + UKI sans supposer que la VM dispose déjà d'un vTPM, d'un passthrough FIDO2 et des clés Secure Boot adaptées:
<MONTAGE_BACKUP_LIVE>/<OUTILS_PRA>/run-pra-restore-luks-uki-tpm.sh \
--disk <DISQUE_VM> \
--backup-dev <PARTITION_BACKUP> \
--snapshot <SNAPSHOT_ID> \
--target-root <RACINE_CIBLE> \
--backup-mount <MONTAGE_BACKUP_LIVE> \
--restic-repo-path <DEPOT_RESTIC> \
--password-prompt \
--install-restic \
--luks \
--uki \
--recovery-key \
<MODE_APPLICATIF_PRIVÉ>
Ajouter --tpm, --fido2-pair ou --secure-boot uniquement après avoir configuré et vérifié les périphériques et clés correspondants dans la VM.
Exemple anonymisé pour restaurer une machine physique avec les clés Secure Boot déjà enrôlées:
<MONTAGE_BACKUP_LIVE>/<OUTILS_PRA>/run-pra-restore-luks-uki-tpm.sh \
--disk <DISQUE_PHYSIQUE> \
--backup-dev <PARTITION_BACKUP> \
--snapshot <SNAPSHOT_ID> \
--target-root <RACINE_CIBLE> \
--backup-mount <MONTAGE_BACKUP_LIVE> \
--restic-repo-path <DEPOT_RESTIC> \
--password-prompt \
--install-restic \
--luks \
--uki \
--tpm \
--tpm-pcrs <PCRS_TPM> \
--recovery-key \
--fido2-pair \
--secure-boot \
<MODE_APPLICATIF_PRIVÉ>
L'ancien flux simple reste documenté pour les restaurations sans chaîne renforcée:
<MONTAGE_BACKUP_LEGACY>/<OUTILS_PRA>/run-pra-restore.sh \
--disk <DISQUE_CIBLE> \
--backup-dev <PARTITION_BACKUP> \
--snapshot <SNAPSHOT_ID> \
--target-root <RACINE_CIBLE> \
--backup-mount <MONTAGE_BACKUP_LEGACY> \
--restic-repo-path <DEPOT_RESTIC> \
--password-prompt \
--install-restic \
<MODE_APPLICATIF_PRIVÉ>
<RACINE_CIBLE> et l'ESP sur <RACINE_CIBLE>/boot.<RACINE_CIBLE>./bin, /lib, /lib64.mkinitcpio -P.systemd-boot.Le rapport pré-reboot affiche:
Rapport final pre-reboot:
UUID disque root: ...
UUID disque boot: ...
UUID disque swap: ...
fstab root: ...
fstab boot: ...
fstab swap: ...
Puis compare les UUID attendus avec les fichiers:
Diff UUID disque attendu vs fichiers boot/fstab:
UUID OK: fstab et entrees boot alignes avec les disques cibles.
Si une incohérence est détectée, le script bloque le redémarrage.
Dans le système restauré:
findmnt /
findmnt /boot
sed -n '<DEBUT>,<FIN>p' <FSTAB_RESTAURE>
bootctl status
Attendu:
/ monté depuis la partition root du disque restauré;/boot monté depuis l'ESP du disque restauré;fstab aligné avec les UUID réels;<ENTREE_BOOT_ATTENDUE>;bootctl status et sbctl status confirment que l'entrée de boot et la signature attendues sont cohérentes.La restauration ne s'arrête pas à remettre / et /boot. Le système est considéré restauré seulement si la chaîne de confiance reste cohérente:
En pratique, la phase post-restore vérifie:
bootctl status
sbctl status
findmnt /
findmnt /boot