2009-05-08 6 views
0

Je configure un banc d'essai dans lequel je teste une connexion de périphérique sur plusieurs systèmes d'exploitation Windows. Je ne peux pas le faire dans une machine virtuelle (impossible de virtualiser l'accès à l'appareil), donc j'ai un système multi-boot. J'ai un script pour automatiser le processus, mais je le veux aller de l'avant et terminer, en sélectionnant le prochain système d'exploitation pour démarrer et exécuter son test.Manière programmatique de sélectionner le système d'amorçage?

Un problème est que XP/2K3 utilise boot.ini tandis que Vista et plus tard utilisent BCDEdit. Je pourrais avoir manuellement deux scripts ... un pour chaque XP/2K3 pour éditer boot.ini. Et puis à BCDEdit pour les systèmes Vista. Je détesterais avoir à coder en dur chacun, surtout si je dois changer d'ordre et/ou désactiver certains systèmes d'exploitation en fonction des conditions de test. BCDEdit utilise également le GUID pour ses entrées, ce qui signifie que la configuration sur des machines différentes signifierait déterminer quel GUID aller à la prochaine.

Des idées ou des conseils? Y a-t-il des utilitaires qui aident à automatiser cela?

Répondre

1

Je suppose que vos différentes versions de Windows sont hébergées sur différentes partitions. Use an Ubuntu LiveCD to install GRUB et écrire plusieurs fichiers de configuration, chacun ayant un système d'exploitation sélectionné par défaut. Créez une partition HD pour/boot et stockez les configs GRUB au même endroit.

Chacune de vos partitions Windows devra installer le Ext2 IFS driver, et monter la partition EXT2 que vous avez précédemment créée comme z: ou quelque chose. Ensuite, votre script de test peut faire quelque chose comme:

mountvol z: %bootvolname% 
copy /y boot_to_vista_64.lst z:\boot\grub\menu.lst 
shutdown -r -f -t 0 

%bootvolname% est un peu compliqué, et est spécifique à l'OS. Vous devrez le stocker avec chaque partition de système d'exploitation, et vous pouvez l'obtenir en faisant mountvol z: /l pendant l'exécution de ce système d'exploitation.

Questions connexes