Les systèmes d’exploitation de Microsoft sont très fragiles. Windows XP n’échappe pas à la règle : une petite installation de driver ou autre opération innocente, et paf il ne démarrera plus.
Ma solution: avoir une version de « test » où le déploiement de logiciels est évalué d’un point de vue stabilité, utilité etc. et une version de « production » censée fonctionner. Je garde des images à des points particuliers (ex: mise à jour du système, installation d’un programme spécial) sur une partition dédiée. Et le tout est démarré/secouru en cas de problème par Linux.
Pourquoi utiliser XP ? C’est un système d’exploitation assez ancien, donc assez bien connu, léger, qui permet de faire fonctionner la plupart des logiciels « Windows-uniquement » nécessaire pour des opérations spécifiques comme reflashage, mise à jour de firmwares, tests à domicile par un fournisseur d’accès internet qui a du personnel uniquement formé à Windows...
L’opération se déroule en 3 phases :
- création des partitions pour la manoeuvre
- installation du XP et de ses drivers
- installation de Linux et démarrage du versionnage
- restoration des images
Pour les partitions, je vous recommande de respecter le mode de compatibilité Windows Vista, qui a surtout pour avantage une maximisation des performances sur les disques durs SSD en respectant l’alignement des partitions sur les blocs logiques de 4ko
Beaucoup d’informations sont disponibles sur divers sites - pour faire simple, il suffit que fdisk avec les options « c » et « u » affiche des multiples de 2048 pour le début et la fin de chaque partition.
Pour XP, les drivers et Linux - faites votre choix !
Personellement, une simple version de secours de Linux me suffit : un noyau, un initrd mis dans une partition vfat cachée (pour ne pas déranger Windows : type 1c en LBA, 1b sinon), grub par dessus et voilà !
Pour lancer le versionnage, faites une image de votre partition avec l’outil de votre choix - comme partimage.
Ensuite, on attaque la partie sérieure : la restoration des images.
XP est fait d’une telle manière que déplacer une image binaire de sa partition ne suffit pas à le faire redémarrer. D’autres modifications sont nécessaires.
1) Écrire l’offset de début de la partition en hexadécimal / petit boutien à 0x1c
Par exemple chez moi :
Partition / offset / Hexadécimal
/dev/sda3 / 219566080 / 0d165000
/dev/sda4 / 422354944 / 192ca000
Si l’image faite par partimage vient de /dev/sda3 et que vous l’installez sur /dev/sda4, avec hexedit /dev/sda4 aller à 0x1c et remplacer 00 50 16 0d, par 00 0a 2c 19:
2) Enlever la table des volumes du registre
Un outil dédié existe sous Linux : chntpw
Supposons que l’image de /dev/sda3 a été restorée sur sda4, ces deux partitions faisant la même taille, et que sda4 est montée dans /mnt en lecture-écriture par exemple grâce à ntfs-3g
chntpw /mnt/sda4/Windows/system32/config/system
ls
cd MountedDevices
ls
delallv
q
3) Éditer boot.ini pour corriger la partition
boot.ini est l’équivalent de menu.lst de grub pour Windows. Il sert à indiquer quels systèmes sont démarrables sur quelles partitions.
Le fichier /mnt/sda4/boot.ini doit ressembler à :
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(4)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(4)\WINDOWS="XP /dev/sda4" /fastdetect /NoExecute=OptIn
En démarrant avec grub (chainload) sur cette partition XP devrait démarrer.
Pour grub : penser à cacher la partition inutilisée, ici sda3, et révéler la partition utilisée, ici sda3 par hide/unhide),
Au moindre problème sur ce XP, retour à la version voulue. À la moindre évolution (nouveau programme), version de sauvegarde.
Et XP vivra sur la partition de votre choix sans vous poser plus de problèmes...
0 commentaires:
Enregistrer un commentaire