2009-05-08 2 views
0

Я настраиваю тестовую кровать, где я тестирую соединение с устройством на нескольких ОС Windows. Я не могу сделать это в виртуальной машине (не могу виртуализировать доступ к устройству), поэтому у меня довольно многозадачная система. У меня есть сценарий для автоматизации процесса, но я хочу, чтобы он продолжался и заканчивался, выбирая следующую ОС для загрузки и запуска своего теста.Программный способ выбора ОС загрузки?

Одна проблема заключается в том, что XP/2K3 использует boot.ini в то время как Vista и позже используют BCDEdit. Я мог бы вручную иметь два сценария ... один для каждого XP/2K3 для редактирования boot.ini. А затем в BCDEdit для систем Vista. Мне бы очень хотелось, чтобы каждый из них был жестким, хотя, если мне нужно изменить порядок и/или переключить некоторые ОС в зависимости от условий тестирования.

BCDEdit также использует GUID для своих записей, что означает, что настройка на разных машинах означала бы определение того, какой GUID должен идти дальше.

Любые мысли или намеки? Существуют ли какие-либо утилиты, которые помогают автоматизировать это?

ответ

1

Я предполагаю, что ваши различные варианты Windows размещены на разных разделах. Use an Ubuntu LiveCD to install GRUB и напишите несколько файлов конфигурации, каждая из которых имеет одну ОС, выбранную по умолчанию. Создайте раздел HD для/boot и сохраните конфигурации GRUB в том же месте.

Для каждого раздела Windows необходимо установить Ext2 IFS driver и установить раздел EXT2, который вы сделали ранее, в качестве z: или что-то еще. Тогда ваш тестовый скрипт может сделать что-то вроде:

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

%bootvolname% немного сложнее, и от операционной системы. Вам нужно будет сохранить его с каждым разделом ОС, и вы можете получить его, выполнив mountvol z: /l, пока эта ОС работает.

Смежные вопросы