Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Автоматическая установка Windows 2000/XP/2003 (http://forum.oszone.net/forumdisplay.php?f=32)
-   -   Запустить Setupldr из Isolinux напрямую? (http://forum.oszone.net/showthread.php?t=142363)

conteacky 10-06-2009 15:29 1140144

Запустить Setupldr из Isolinux напрямую?
 
Во всех известных мне примерах для запуска установки Windows из Isolinux используются промежуточные загрузчики типа VOLS и т.п. Это крайне неудобно, особенно "Press any key" после выполнения команды Isolinux. При попытке выполнить запуск установки командой "KERNEL /I386/SETUPLDR.BIN" виртуальная машина вылетает (на живой не рискую). Можно ли все-таки запустить Setupldr из Isolinux напрямую?

vsu 12-06-2009 00:06 1141340

Реально работает способ с использованием GRUB4DOS:
Код:

KERNEL grub.exe
APPEND --config-file="chainloader (cd)/I386/SETUPLDR.BIN"

(в зависимости от версии GRUB4DOS и способа сборки образа может иметь значение регистр символов в именах файлов, передаваемых GRUB).

Вариант с использованием только компонентов Syslinux, который мог бы работать, если бы не лишняя проверка в com32/modules/chain.c:
Код:

KERNEL chain.c32
APPEND boot ntldr=/i386/setupldr.bin

При большом желании эту проверку можно и вырезать, пересобрав Syslinux с соответствующим патчем:
читать дальше »
Код:

diff --git a/com32/modules/chain.c b/com32/modules/chain.c
index 7c7c9eb..0b6dbc2 100644
--- a/com32/modules/chain.c
+++ b/com32/modules/chain.c
@@ -666,8 +666,7 @@ int main(int argc, char *argv[])
  } else if (!strcmp(drivename, "boot")) {
    const union syslinux_derivative_info *sdi;
    sdi = syslinux_derivative_info();
-    if (sdi->c.filesystem == SYSLINUX_FS_PXELINUX ||
-        sdi->c.filesystem == SYSLINUX_FS_ISOLINUX)
+    if (sdi->c.filesystem == SYSLINUX_FS_PXELINUX)
      drive = 0x80;                /* Boot drive not available */
    else
      drive = sdi->disk.drive_number;


Впрочем, вариант с GRUB4DOS более функционален - например, можно ещё добавить команды map для подсовывания установщику виртуального флопика с файлом winnt.sif; memdisk из Syslinux для этой цели неудобен, поскольку умеет продолжать загрузку только с эмулируемого диска, и для возврата к загрузке компонентов установщика с CD придётся засовывать в образ дискеты ещё что-то - например, тот же GRUB4DOS, только в другом варианте.

conteacky 12-06-2009 12:36 1141584

vsu, спасибо, grub рулит.
Тогда еще вопросы по isokinux:
1. запускаю Acronis Disk Director
Код:

KERNEL /boot/isolinux/modules/add_krn.dat ramdisk_size=32768 vga=791 acpi=on quiet initrd=/boot/isolinux/modules/add_ram.dat /s
Курсор ведет себя как псих. Я уже встречал подобное на форуме - веэде одно: "Отключи курсор". Может есть средство от головной боли без отрубания головы? Ведь Acronis TrueImage в этой=же ситуации ведет себя нормально
2. Не запускается Memtest 86
Код:

KERNEL /boot/isolinux/modules/mt86p
3. То же тест HDD
Код:

KERNEL /boot/memdisk
APPEND initrd=/boot/isolinux/modules/Victoria.IMA

Заранее спасибо

vsu 12-06-2009 13:25 1141606

Цитата:

Цитата conteacky
Не запускается Memtest 86
KERNEL /boot/isolinux/modules/mt86p »

Точнее, судя по имени файла, Memtest86+. Странно - именно с запуском проблем вроде бы никогда не наблюдалось (хотя у оригинального Memtest86 попадались откровенно нерабочие версии). Могу предложить только проверить правильность бинарника mt86p и попробовать другие версии.

Цитата:

Цитата conteacky
KERNEL /boot/memdisk
APPEND initrd=/boot/isolinux/modules/Victoria.IMA »

Тут можно ещё попробовать добавить в APPEND опцию safeint (хотя, начиная с Syslinux 3.73, она и так используется по умолчанию). Если не поможет - пробовать другие варианты (raw, bigraw).

conteacky 12-06-2009 13:33 1141609

vsu, по поводу запуска приложений - вопрос снимаю, был кривой memdisk, я его заменил.
А вот насчет курсора в Директоре...
Кстати, когда его запускаешь из BCDW через Isolinux - все нормально !

conteacky 13-06-2009 11:35 1142187

Ладно, оставим ADDS в покое.
А можно ли запустить из-под isolinux ISO-образ? Acronis, Hiren's, LiveCD?

vsu 13-06-2009 17:17 1142386

Цитата:

Цитата conteacky
А можно ли запустить из-под isolinux ISO-образ? Acronis, Hiren's, LiveCD? »

Непосредственно из-под isolinux - нельзя. Можно опять-таки через GRUB4DOS:
Grub4dos Guide - Booting from .ISO Images
grub4dos, .iso images and (hd32) or (0xFF) mapping
Можно продолжать использовать меню из Syslinux, откуда запускать grub.exe, передавая нужную последовательность команд через параметр --config-file="..." (команды разделяются точкой с запятой).

Загрузка с ISO-образов работает далеко не всегда - нужно, чтобы запускаемые оттуда программы либо работали со своими файлами только через BIOS, либо (при использовании внутри Linux или WinNT-подобных ОС) предварительно загружали все свои компоненты в RAM и в дальнейшем не обращались к своему диску. Т.е., можно так загружать образы LiveCD типа RIPLinux (в основном режиме загрузки всё размещается в initrd; имеющийся рядом "non-initramfs method" работать уже не будет), некоторые сборки WinPE, загружающиеся полностью в ramdisk.

conteacky 13-06-2009 18:58 1142430

vsu, вот нвшел код для grub:
Код:

find --set-root /acronis10.iso 
map /acronis10.iso (hd32) 
map --hook 
root (hd32) 
chainloader (hd32)

А для multilinux как это должно быть?
Код:

KERNEL /boot/grub.exe
APPEND --config-file= ?????

???

vsu 14-06-2009 00:09 1142664

Цитата:

Цитата conteacky
вот нвшел код для grub »

В простейшем случае нужно просто записать его в одну строку:
Код:

KERNEL /boot/grub.exe
APPEND --config-file="find --set-root /acronis10.iso; map /acronis10.iso (hd32); map --hook; root (hd32); chainloader (hd32)"

Либо можно обойтись без find, явным образом указав (cd):
Код:

KERNEL /boot/grub.exe
APPEND --config-file="map (cd)/acronis10.iso (hd32); map --hook; root (hd32); chainloader (hd32)"


CXREF 14-06-2009 00:56 1142683

Цитата:

Цитата conteacky
Во всех известных мне примерах для запуска установки Windows из Isolinux используются промежуточные загрузчики типа VOLS и т.п. Это крайне неудобно, особенно "Press any key" »

Цитата:

Цитата conteacky
Можно ли все-таки запустить Setupldr из Isolinux напрямую? »

Цитата:

Цитата vsu
Реально работает способ с использованием GRUB4DOS: »

Поскольку обсуждается все-равно промежуточный загрузчик, то, производить зупуск установки, путем запуска из IsoLinux, boot сектора от тог-же установочного диска, котрый в свою очередь, естественным образом стартует setupldr.bin ...
Хотя, не проверял.

Комсомолец 14-06-2009 06:02 1142759

conteacky,
Цитата:

Цитата conteacky
Это крайне неудобно, особенно "Press any key" после выполнения команды Isolinux »

"Press any key" появляется только в том случае, если в директории есть файл bootfix.bin - удалите его и не появится больше.
Цитата:

Цитата conteacky
загрузчики типа VOLS »

Это не загрузчики. Это мультибут. Для загрузки setupldr используется bootsect. (isolinux.bin -> bootsect.bin -> setupldr.bin). Связано это с тем, что сам isolinux не умеет напрямую стартовать виндовый загрузчик.
Цитата:

Цитата conteacky
Курсор ведет себя как псих. Я уже встречал подобное на форуме - веэде одно: "Отключи курсор". Может есть средство от головной боли без отрубания головы? Ведь Acronis TrueImage в этой=же ситуации ведет себя нормально »

Mouse.com не пробовали положить рядом с kernel.dat и ramdisk.dat? У меня все акронисы ведут себя прилично.
Цитата:

Цитата conteacky
Не запускается Memtest 86 »

Код:

        LABEL memtest
                MENU LABEL Memtest 86+ 2.11
                KERNEL /boot/memtest
        TEXT HELP
  Крохотная утилита для тестирования о
перативной памяти (RAM).
        ENDTEXT

С Viktoria у вас тоже судя по всему проблемы...

conteacky 14-06-2009 09:29 1142787

CXREF, Setupld из Isolinux зарускается с помощью Grub. Проверено. Сейчас пытаюсь запустить Acronis.iso

vsu, а можно в качнстве разделителя строк использовать "|"? Вот так:
Код:

APPEND --config-file="
|find --set-root /acronis10.iso; 
|map /acronis10.iso (hd32); 
|map --hook; root (hd32); 
|chainloader (hd32)"

Я попробовал и как у тебя и так. Grub выдает ошибку при запуске акрониса типа "Is64bit" но это похоже просто нестыковка версии grub и Acronis.
Да,точно,я проверил - для работы с ISO нужен Grub4dos - работает."|" не катит.

Acidag 16-07-2009 16:12 1169518

conteacky

Родной виндовый загрузчик тоже нормально подхватывается Isolinux'ом. И дальше перенаправит загрузку на setupldr.bin.
И как было сказано, не будет выдавать запрос на нажатие клавиши, если рядом нет bootfix.bin.

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

Кстити, setupldr.bin можно и c помощью BCDW загрузить ;)

blacksirius 20-09-2009 14:11 1223216

делаю свой инсталятор системы, запуск меню идет через syslinux и isolinux. нужно что бы могло работать с диска и с флешки.
загрузка образов, и на сд, и на флешке работает
Код:

LABEL acronis
MENU LABEL Acronis
        kernel /boot/grub/grub.exe
        APPEND --config-file="find --set-root /Acronis_All.iso; map /Acronis_All.iso (hd32); map --hook; root (hd32); chainloader (hd32)"

но вот установка виндовса работает только на сд, на флешке граб находит бинарный файл, черный экран, и ребутится
Код:

LABEL winsp3
MENU LABEL Установка Windows XP SP3
        KERNEL /boot/grub/grub.exe
        APPEND --config-file="find --set-root /I386/Setupldr.bin; chainloader /I386/Setupldr.bin"



Время: 03:18.

Время: 03:18.
© OSzone.net 2001-