3 февраля 2013 г.

Установка Windows XP с флешки
[Install Windows XP from USB stick]

    Да, я все же решил написать руководство по установке WinXP с флешки. Никаких заливок. Просто ISO-образ дистрибутива Windows XP, загрузочная Grub4Dos флешка и прямые руки (куда же без них). Для Windows 7/8 тоже скоро появится статья.
    В статье будет рассмотрено 2 способа:
1 способ. Используя прямой маппинг образа и драйвер FiraDisk.
2 способ. Используя WinNTSetup из под WinPE.
    Какой использовать способ - Вам решать. Но мне больше WinNTSetup нравится. С ним быстрее и меньше шанс, что установка отвалиться на середине. Также больше возможностей по разбивке и настройке физического пространства жесткого диска.

1 способ.
Используя прямой маппинг образа и драйвер FiraDisk.

1. Создать папку Boot в корне флешки и скинуть в нее установочный образ Windows XP (WINXPx86.iso)
    Примечание:
    1) Образ должен быть дефрагментирован! Иначе получите ошибку:
    Error 60: File for drive emulation must be in one contiguous disk area.

2. Скинуть в папку Boot файл FiraDisk.img из архива (образ floppy-диска, который содержит драйвер FiraDisk).

3. Добавить следующие пункты в menu.lst:
title Windows XP Start Install
set MYISO=WINXPx86.iso
map --mem (md)0x800+4 (99)
map --mem /Boot/FiraDisk.img (fd0)
map --mem /Boot/FiraDisk.img (fd1)
map /Boot/%MYISO% (0xff) 
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/Boot/%MYISO%;floppy,vmem=find:/Boot/FiraDisk.img;\n\0
chainloader (0xff)/I386/SETUPLDR.BIN

title Windows XP Continue Install
set MYISO=WINXPx86.iso
map --mem (md)0x800+4 (99)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/Boot/%MYISO%;\n\0
chainloader (hd0)+1
    Примечание: при первой загрузке с флешки необходимо выбрать 1 пункт меню ("Windows XP Start Install"), после перезагрузки выбрать 2 пункт ("Windows XP Continue Install"), и при последующей перезагрузке тоже этот 2 пункт. Перезагружаться самостоятельно не желательно. Выключать ПК тоже. Иначе все поновой. Флешку лучше не трогать.

4. Всё, можете устанавливать WinXP.
    Примечание: 
    1) На некоторых мат.платах, почему-то способ не работает. При установке с USB-HDD тоже как говорят работать не будет.
    2) Не забудьте про интеграцию SATA/AHCI - драйверов в дистрибутив.

    Полный готовый комплект для установки Windows XP/Vista/7/8 - брать здесь.

2 способ.
Используя WinNTSetup из под WinPE.

    Примечание: в качестве WinPE будет использоваться Hiren's BootCD 15.1 RUS.

1. Скачиваем WinNTSetup. Можно взять здесь русскую версию WinNTSetup 2.3.3.0. Скачиваем и закидываем ее на флешку, в любое удобное место.

2. Скидываем образ WinXP тоже в любое место на флешке.

3. Загружаемся в Mini Windows Xp из HBCD.
    Примечание: если не знаете как, то читайте эту статью (19 пункт).

4. Запуcкаем WinNTSetup из под WinPE. Переключаемся на вкладку "Windows 2000/XP/2003" и указываем образ WinXP, который только что закинули на флешку, нажав "Выбрать" правой кнопкой мыши.
    Примечание: иногда бывает, что образ не определяется в WinNTSetup как установочный, тогда приходится его распаковывать или монтировать. Благо HBCD это позволяет сделать. Чтобы смонтировать образ необходимо нажать ПКМ на образе и смонтировать с помощью ImDisk в виртуальный привод (например F:).

5. Указываем диск, на который будет установлен загрузчик и сама WinXP (обычно это один и тот же диск). Диск можно отформатировать нажав на кнопку "F" справа от строки ввода имени диска.

6. Смотрим, чтобы были все "зеленые галки" у раздела для загрузчика, т.е. стоял правильный код MBR (WinNT5.x или WinNT6.x), правильный код PBR (NTLDR), и раздел был загрузочным (первичным и активным). Если же где-то отсутствует "галка" (стоит "крест"), то используем BOOTICE. Исправляем всё что нужно в BOOTICE, и заново выбираем этот диск в WinNTSetup. Все "крестики" должны стать "галочками".
    Примечание: как использовать BOOTICE писал в этой статье.

7. Ставим нужные "галочки" в настройках. Обычно этого не требуется, поэтому оставляем все как есть. Жмем кнопку "Установка".

8. Появляется окно. Проверяем источник и приемник установки. Bootsect оставляем. Жмем ОК.

9. Любуемся на процесс установки.

10. Ждем завершения копирования файлов.

11. Закрываем WinNTSetup. Перезагружаемся и продолжаем установку. Флешку можно извлечь.

Используемый материал:
Сообщение Atlant'a на greenflash.su
Создание установочной (загрузочной) флешки с помощью WinSetupFromUSB 1.0 beta 7 для установки Windows XP
GRUB4DOS; GRUB Legacy (<= 0.97)
LiveCD/BootCD (DVD/USB) на базе OPK WinPE (часть 4)
Установка windows xp с мультизагрузочной флешки
Установка Windows 7 и Windows XP с флешки

При копировании статьи просьба указывать источник и автора.
С уважением, GRomR1.

9 комментариев:

  1. Везде читаю, про два этапа установки XP с флешки. По-моему достаточно и одного. Просто второй раз тоже надо выбрать этот же пункт и просто подождать пару секунд, пока не начнется загрузка с HDD. Правда все это работает на оригинальном образе. В сборках установка может начинаться с CD сразу без задержки.
    title Install Windows XP SP3 RUS
    debug off
    map --unhook
    set MYISO=/ISO/Windows_XP_SP3_RUS.iso
    map --mem (md)0x800+4 (99)
    map --mem /ISO/firadisk.img (fd0)
    map %MYISO% (0xff)
    map (hd0) (hd1)
    map (hd1) (hd0)
    map --hook
    write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:%MYISO%;\n\0
    chainloader (0xff)

    За несколько лет опробовал этот способ на многих ПК и лаптопах. Ни одного сбоя не было.
    Только есть один момент, про который почему-то молчат. На некоторых системах образ XP должен быть модиицирован для поддержки usb во время установки. Об этом можно почитать например здесь: http://reboot.pro/topic/13774-use-windows-xp-from-an-usb-external-hdd/

    Только пришлось отказаться от модификации файла USBSTOR.IN_, а то иногда он вызывал BSOD. Но и так все прекрасно работает.

    ОтветитьУдалить
    Ответы
    1. Обсуждали, что нужен именно оригинальный образ WinXP. Это не обязательно. Достаточно, чтобы в I386 был файл BOOTFIX.BIN - наличие его будет выдавать те самые: Press any key for boot from cd ...

      Удалить
  2. > Правда все это работает на оригинальном образе.
    Вот в том то и проблема.
    А так в общем аналогичный способ.

    ОтветитьУдалить
  3. Такой вопрос: почему образ не хочет запускаться из подменю? (File not found)
    Делаю следующим образом, и не работает ни в какую.

    # menu.lst
    title Install Windows XP/7/8
    find --set-root /winmenu.lst
    configfile /winmenu.lst

    # winmenu.lst
    title Install WinXP SP3 MSDN UPDATES (part 1)
    map --mem (md)0x800+4 (99)
    map --mem (hd0,0)/boot/winxp/FiraDisk.img (fd0)
    map --mem (hd0,0)/boot/winxp/FiraDisk.img (fd1)
    map (hd0,0)/boot/winxp/xp.iso (0xFF)
    map (hd0) (hd1)
    map (hd1) (hd0)
    map --hook
    write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:(hd0,0)/boot/winxp/xp.iso;floppy,vmem=find:(hd0,0)/boot/winxp/FiraDisk.img;\n\0
    chainloader (0xFF)/I386/SETUPLDR.BIN

    title Install WinXP SP3 MSDN UPDATES (part 2)
    map --mem (md)0x800+4 (99)
    map (hd0) (hd1)
    map (hd1) (hd0)
    map --hook
    write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:(hd0,0)/boot/winxp/xp.iso;\n\0
    chainloader (hd0)+1

    title Install Windows 7 SP1 x64 MSDN RU
    set MYISO=WIN7x86.iso
    map --mem (md)0x800+4 (99)
    map /Boot/%MYISO% (0xff)
    checkrange 0x80 read 0x8280 && map (hd0) (hd1)
    checkrange 0x80 read 0x8280 && map (hd1) (hd0)
    map --hook
    write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/Boot/%MYISO%;\n\0
    chainloader (0xff)/BOOTMGR || chainloader (0xff)

    title Install Windows 8.1 x64 MSDN UPDATE-1 RU
    map --mem (md)0x800+4 (99)
    map /Boot/WIN81x64.iso (0xFF)
    checkrange 0x80 read 0x8280 && map (hd0) (hd1)
    checkrange 0x80 read 0x8280 && map (hd1) (hd0)
    map --hook
    write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/Boot/WIN81x64.iso;\n\0
    chainloader (0xFF)/BOOTMGR || chainloader (0xFF)

    title Back
    find --set-root /menu.lst
    configfile /menu.lst

    Если же скопировать содержимое winmenu.lst в menu.lst, оттуда всё работает прекрасно. Подскажите, пожалуйста, где ошибка?

    ОтветитьУдалить
    Ответы
    1. Причем, File not found вот на этой строчке:
      chainloader (0xFF)/I386/SETUPLDR.BIN

      Удалить
    2. Заработало вот так ))

      chainloader (0xff)

      Удалить
  4. Вопрос, использую второй способ, скопировал на флешку с Mini Windows Xp нужный образ и программу, когда загружаюсь в Mini Windows Xp то как мне запустить программу?

    ОтветитьУдалить
    Ответы
    1. 4. Запуcкаем WinNTSetup из под WinPE. Переключаемся на вкладку "Windows 2000/XP/2003" и указываем образ WinXP, который только что закинули на флешку, нажав "Выбрать" правой кнопкой мыши.

      Удалить
  5. Первый способ тяжелый случай. Второй способ полегче.

    ОтветитьУдалить