Ru-Board.club
← Вернуться в раздел «Программы»

» GRUB4DOS и GNU GRUB (часть 3)

Автор: bomzzz
Дата сообщения: 12.03.2016 06:44
да ни причем этот срытый активный. как активный определяется первый логический раздел на расширенном разделе.
Автор: andre_d
Дата сообщения: 12.03.2016 18:34
Извиняюсь, если не посчитаете вопрос не теме, но но если это так, то хотелось бы от знатоков grub4dos услышать мнение что дело не в нем.
Пробую разные сборки live Linux, пытаюсь сабжем v0.4.6а, установленном на основном hd загружать образы, хранящиися на этом же или втором hd.
Некоторые успешно загружаются, но большая часть загружает initframs и сообщает, что не может найти live fs. (аналогичные сообщения получал пару раз и при попытке загружаться классическим путем с cd, созданным из образа, что наводит на мысль, что дело не в grub4dos).

Может дело в том, что нельзя загружать из ntfs разделов может надо образы храить на Linux разделах или если initframs загрузилась, то grub4dos уже отработал нормально и больше не нужен?
Тогда надо что-то править в исходном образе Linux или можно что то скомандовать загруженной initframs?
Автор: QSQ
Дата сообщения: 12.03.2016 22:04
dialmak01, ссылка не открывается без пароля.
Цитата:
Прога живет тут http://www.msfn.org/board/topic/149612-winntsetup-v3855/


bomzzz, насколько наверху? как называется?
Автор: bomzzz
Дата сообщения: 12.03.2016 22:43
http://www.msfn.org/board/topic/149612-winntsetup-v386/
http://1drv.ms/1rihbgL
Автор: At1ant
Дата сообщения: 12.03.2016 23:12
andre_d В процессе загрузки ОС переходит в защищенный режим процессора и программный мапинг Grub4Dos-а или его аналога отваливается. Для решения этой проблемы в линуксах использует гибридную загрузку - образ монтируется как 4-й раздел флешки (команда partnew), в Windows - FiraDisk драйвер (он считывает из озу команды для монтирования образов). Пример гибридной загрузки образа:

Цитата:
title Linux
partnew (%@root:~1,3%,3) 0x00 /Boot/Linux.iso
map /Boot/Linux.iso (0xff)
map --hook
chainloader (0xff)


В данном меню partnew использует 4-ю позицию таблицы разделов, и если там есть основной раздел/расширенный с логическими дисками, то он будет затерт!
Автор: andre_d
Дата сообщения: 13.03.2016 18:01

Цитата:
andre_d В процессе загрузки ОС переходит в защищенный режим процессора и программный мапинг Grub4Dos-а или его аналога отваливается. Для решения этой проблемы в линуксах использует гибридную загрузку - образ монтируется как 4-й раздел флешки (команда partnew), в Windows - FiraDisk драйвер (он считывает из озу команды для монтирования образов). Пример гибридной загрузки образа:

Цитата:
title Linux
partnew (%@root:~1,3%,3) 0x00 /Boot/Linux.iso
map /Boot/Linux.iso (0xff)
map --hook
chainloader (0xff)


В данном меню partnew использует 4-ю позицию таблицы разделов, и если там есть основной раздел/расширенный с логическими дисками, то он будет затерт!


Спасибо!!
Но все-таки не совсем понятно Т.е. если образ находится в спец. разделе флешки, то initframs найдет его, а если на разделе hd, то маппинг отвалится?
Автор: At1ant
Дата сообщения: 13.03.2016 21:50
Флешка или винчестер значения не имеет. Команда partnew пишет в 4-ю позицию таблицы разделов номер первого сектора образа и общее количество секторов. Linux при загрузке считывает эту информацию и интерпретирует эти данные как раздел винчестера. Таким образом загрузчик лиункса потеряв доступ к файлам образа (программный map отвалился), ищет их по всем доступным устройствам/разделам и находит в гибридном разделе.
Автор: andre_d
Дата сообщения: 14.03.2016 13:51

Цитата:
Флешка или винчестер значения не имеет. Команда partnew пишет в 4-ю позицию таблицы разделов номер первого сектора образа и общее количество секторов. Linux при загрузке считывает эту информацию и интерпретирует эти данные как раздел винчестера. Таким образом загрузчик лиункса потеряв доступ к файлам образа (программный map отвалился), ищет их по всем доступным устройствам/разделам и находит в гибридном разделе.

Спасибо, сейчас начну пробовать.
А partnew будет работать обязательно с 4-й позицией mbr - то есть логическим разделом целиком - выделить ей часть логического раздела уже не получится.
или может быть можно предложить ей 3-ю позицию - неиспользуемую пока область второго винчестера, в которой можно создать третий первичный раздел?

Встроенный help (>help partnew ) говорит, что будет создаватьcя первичный раздел, а в readme.txr из комплекта говорится о логическом разделе (hdx,3), про другие номера раздела не упоминается случайно?.
Автор: dialmak01
Дата сообщения: 14.03.2016 14:50

Цитата:
говорит, что будет создаватьcя первичный раздел

Да, первичный

Цитата:
или может быть можно предложить ей 3-ю позицию  - неиспользуемую пока область  второго винчестера, в которой можно создать третий первичный раздел?

Новый четвертый раздел (он 3 по номеру ибо есть и 0 в груб) будет создан на устройстве, где лежит ISO. Создать его на другом устройстве не выйдет.
Дабы случайно не ошибиться и не напартачить, лучше вначале найти @root с ISO

Код: title Linux
find --set-root --ignore-floppies /Boot/Linux.iso
partnew (%@root:~1,3%,3) 0x00 /Boot/Linux.iso
map /Boot/Linux.iso (0xff)
map --hook
chainloader (0xff)
Автор: bomzzz
Дата сообщения: 14.03.2016 15:05
по сути это тоже самое что разобрать исообраз на части
Автор: andre_d
Дата сообщения: 14.03.2016 16:19

Цитата:
или второй

Код:
partnew (%@root:~1,3%,1) 0x00 /Boot/Linux.iso

но смысла в этом нет


Да, вижу получается довольно замысловато. Вроде бы простая хотелка, но похоже все непросто.
Я пытаюсь научиться загружать ISO Live Linux, из образа который лежит на логическом НТФС разделе на втором диске (hd1,5). grub4dos стоит на первом диске.
Мне кажется, что смысл, который я пытаюсь найти состоит в том, что еcли с помощью partnew удасться в во втором разделе создать копию образа то initramfs сможет его найти и продолжить загрузку linux.

Цитата:
по сути это тоже самое что разобрать исообраз на части

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

Что то не врубаюсь в синтаксис параметра
(%@root:~1,3%,1) в команде partnew

Автор: dialmak01
Дата сообщения: 14.03.2016 17:31
andre_d

Цитата:
Что то не врубаюсь в синтаксис параметра
(%@root:~1,3%,1)  в команде   partnew  

Переменная %@root% определяет root раздел. Например (hd2,1)
Переменная (%@root:~1,3%,3) определит номер диска. Для случая выше (hd2,3)
Почему так -(читайте string cmd , например


Код: set a=0123456789abcdefghijklmnopqrstuvwxyz
echo %a:~0,3% displays 012
echo %a:~2,3% displays 234
echo %a:~-3,3% displays xyz
echo %a:~3% displays 3456789abcdefghijklmnopqrstuvwxyz
echo %a:~3,-2% displays 3456789abcdefghijklmnopqrstuvwx
echo %a:~,-2% displays 0123456789abcdefghijklmnopqrstuvwx
Автор: At1ant
Дата сообщения: 14.03.2016 23:22
andre_d Еще небольшой нюанс, в шапку menu.lst желательно добавить:
partnew (%@root:~1,3%,3) 0 0 0
или
if exist /Boot/Grub/Blue.tag partnew (hd0,3) 0 0 0
Эти команды стирают запись о прежде монтированном гибридном разделе. Чтоб не случилось прикола, когда грузишь другой линукс (не требующий partnew), а запускается первый или тупо виснет.
Обе строки имеют в себе проверку что partnew будет работать с загрузочной флешкой/HDD, за счет переменной @root или маркерного файла - выбирай что больше нравиться.
Автор: dialmak01
Дата сообщения: 14.03.2016 23:41
At1ant

Цитата:
Еще небольшой нюанс,

Согласен. Но это после проверки занятости раздела!
Может сделаешь универсальное меню? Мне нравиться с проверкой маркера и с проверкой занят ли 4 раздел.. Дополнительно ошибка при нефрагментированном образе.
Думаю многим будет актуально.

Добавлено:
bomzzz

Цитата:
по сути это тоже самое что разобрать исообраз на части

Это просто делает это действие ненужным.


Добавлено:
andre_d
Цитата:
Я пытаюсь научиться загружать ISO Live Linux, из образа который  лежит на логическом НТФС разделе на втором диске (hd1,5). grub4dos стоит на первом диске.

Если 4 раздел второго диска свободен (hd1,3), то получится. Где стоит grub4dos неважно.
Если уж настолько велики сомнения что занято, то есть TAB - для особо нетерпеливых в комстроке просто ввести
Код: (hd0,
Автор: At1ant
Дата сообщения: 15.03.2016 00:50

Цитата:
Дополнительно ошибка при нефрагментированном образе.

А смысл когда Grub4Dos и так выдает соответствующую ошибку при попытке выполнить ?
Думаю написать заметку по гибридной загрузке, по типу русских шрифтов что в шапке, а то надоело одно и тоже постить. Да то аврал на работе, сейчас курсы, потом небось еще какая хня В общем как только так сразу.
Автор: andre_d
Дата сообщения: 15.03.2016 12:58

Цитата:
Добавлено:
andre_d
Цитата:
Я пытаюсь научиться загружать ISO Live Linux, из образа который лежит на логическом НТФС разделе на втором диске (hd1,5). grub4dos стоит на первом диске.

Если 4 раздел второго диска свободен (hd1,3), то получится. Где стоит grub4dos неважно.

Я хочу partnew использовать для (hd1,2) а не (hd1,3). Ведь (hd1,3) это 4-й раздел, в котором есть логические, в том числе и (hd1,5) где лежит исходный iso и еще много чего.

стремно все грохнуть. думаю куда сделать backup, поэтому пока не попробовал.
Автор: bomzzz
Дата сообщения: 15.03.2016 13:11
вот у меня четыре раздела на винте. сд привод с трудом припоминаю когда последний раз доставал. мне кажется проще образ разобрать, в большинстве случаев на две части, не будет меню в меню
Автор: dialmak01
Дата сообщения: 15.03.2016 13:44
andre_d

Цитата:
стремно все грохнуть. думаю куда  сделать backup, поэтому пока не попробовал.

На флешке пробуйте. Если ISO положить на неё, то что там на HDD - неважно.

Добавлено:
Окончательное меню примерно такое, для переменных iso и menu нужно ввести свои данные.

Код: title Linux
set iso=/Boot/Linux.iso
set menu=/menu.lst
debug 1
find --set-root --ignore-floppies %iso%
parttype (%@root:~1,3%,3) | set check=
debug 0
set check=%check:~-5,4%
if "%check%"=="0x00" partnew (%@root:~1,3%,3) 0 0 0
if not "%check%"=="0x00" echo WARNING: PTN TABLE 4 IS ALREADY IN USE! && pause && configfile %menu%
debug 1
partnew (%@root:~1,3%,3) 0x00 %iso%
map %iso%
map --hook
chainloader (0xff)
Автор: bomzzz
Дата сообщения: 15.03.2016 14:24
вот например образ от акрониса родной, в нем внутри систмные файлы зоны восстановления, но виртуальный сдром под линуксом не читается, так что восстановление для загрузки все равно работать не будет, а это пол образа весом, зачем тащить все это на флешку

Добавлено:
в терабайт имаже это решено созданием таких файлов при загрузке автоматически скриптом

Добавлено:
http://download.wsusoffline.net/
вот это накачало, я установил это самодельным батником, но в списке обновений только 10 пишется, обновление не работает
Автор: andre_d
Дата сообщения: 15.03.2016 15:11

Цитата:
dialmak01

Добавлено:
Так можно создать третий

Код:
partnew (%@root:~1,3%,2) 0x00 /Boot/Linux.iso

или второй

Код:
partnew (%@root:~1,3%,1) 0x00 /Boot/Linux.iso

но смысла в этом нет


Извиняюсь, но так и уловил, почему нет смысла использовать второй или третий раздел.
Хочется не трогать четвертый, или он все равно грохнется?
Автор: dialmak01
Дата сообщения: 15.03.2016 15:50

Цитата:
Извиняюсь, но так и уловил, почему нет смысла использовать второй или третий раздел.
Хочется не трогать четвертый, или  он все равно грохнется?

Как правило разделы создаются по порядку.
Пример. То есть если (hd#,3) занят, то как правило занят и (hd#,2) и (hd#,1) и (hd#,0). Это конечно не всегда будет так ибо таблицу разделов можно и отредактировать, но это редкость.(hd#,4) - первый логический раздел (в расширенном разделе) на диске # и он будет занят, если какой-то из (hd#,0) .. (hd#,3) является расширенным разделом.
Скрин моей флешки. Видно, что флешка имеет MBR и занят (hd#,0) и (hd#,1).



Добавлено:
https://www.google.com.ua/search?q=Нумерация+устройств+в+Grub4dos

Добавлено:
Ещё одно. В bootice, как и в grub4dos НЕ ПОКАЗЫВАЕТСЯ расширенный раздел. Пример.



Смысл сей басни таков.
Если в bootice есть 0, 1, 2 и 4 раздел, то 3 занят и он является доп. разделом.
Если в bootice есть 0, 2 и 4 раздел, то 1 занят и он является доп. разделом.
Это справедливо и для grub4dos...
Автор: andre_d
Дата сообщения: 15.03.2016 18:11
dialmak01 Спасибо большущее!!! Ясности существенно прибавляется.
Не знаю как вставить картинку, но у меня на втором винчестере(hd1) сейчас один первичный раздел вначале, затем неиспользуемое место, затем в конце диска доп. раздел, в котором два логических.
И BootIce и Grub4dos нумеруют первичный 1, а затем логические 4,5.
Так что может дополнительный нумеруется первым если находится вначале?

Автор: dialmak01
Дата сообщения: 15.03.2016 20:28

Цитата:
И BootIce и Grub4dos нумеруют первичный 1, а затем логические 4,5.
 Так что может дополнительный нумеруется первым если находится вначале?

так как нет скрина и сужу по инфе выше, то на этом диске - 0 раздел является расширенным ( доп. разделом). 1 раздел является первичным (основным). Это странно, ибо как правило такое не бывает (обычно все наоборот), но это не смертельно.. Такое бывает, если человек сам делает свои разделы по своему, ему понятному, разумению...

Добавлено:

Цитата:
Не знаю как вставить картинку,

Дык просто.
http://forum.ru-board.com/topic.cgi?forum=5&topic=35257&start=300&limit=1&m=3#1


Добавлено:
Выше просто пример как можно вставить картинку, и не нужно копировать действия.. Это непродуктивно ибо устарело...
Автор: boss_911
Дата сообщения: 17.03.2016 11:39
Есть у меня давнишняя мечта, сделать мультизагрузочную флешку, сил уже нет с этими компактами. Но мечта заключается в том, чтобы скинуть несколько загрузочных ISO'шек с виндой (и не только) на флешку и потом подгружать нужную ISO. Но абсолютно ничего не понимаю в этих делах, особенно в бутах и все, что с этим связано, второй день разбираюсь, паа из ушей уже валит, а толку мало.

Существует ли такой метод без интеграции в дистрибутив с виндой FiraDisk драйвера?
Без FiraDisk драйвера, загрузчик Grub4Dos не подгрузит ISO с виндой или винда откажется устанавливаться?
Есть ли способ без интеграции, просто положить рядом FiraDisk драйвер и чтобы установщик ОС их подхватил?

Задача такова, хочется загружаться из ISO который лежит на флешке, при этом ISO/дистрибутив оставить в оригинальном состоянии. Реально и каким методом?
Автор: bomzzz
Дата сообщения: 17.03.2016 11:41

Цитата:
Существует ли такой метод без интеграции в дистрибутив с виндой FiraDisk драйвера?

можно положить фирадиск на образ флопика и промапить его вместе с виртуальным сд ромом


Цитата:
title Find and Boot MYISO.iso from HD to mem with Firadisk
map --mem /firadisk.gz (fd0)
map --mem /MYISO.iso (0xff)
map --hook
chainloader (0xff)

title Find and Boot MYISO.iso from HD with WinBlock
map --mem /winblock.gz (fd0)
map /MYISO.iso (0xff)
map --hook
chainloader (0xff)


Добавлено:
напиши что ты на флешку собрался влепить
Автор: boss_911
Дата сообщения: 17.03.2016 12:25
bomzzz

Теоретически я понимаю о чем вы, а вот практически абсолютный ноль. Как оказалось, понял это только пару дней назад, я занялся тем, в чем абсолютно ничего не понимаю.

На флешку хочу положить и загружать/устанавливать:

Код: ru_winxp_pro_with_sp3_vl.iso
ru_windows_7_ultimate_with_sp1_x86_dvd_u_677463.iso
ru_windows_7_ultimate_with_sp1_x64_dvd_u_677391.iso
ADD12_3223_ru-RU.iso
KRD_01.03.16.iso
memtest86_6.3.so
Автор: bomzzz
Дата сообщения: 17.03.2016 12:37
да ничего сложного просто неведомое. винду лучше ставить WinNTSetup-ом.

Добавлено:
http://rghost.ru/7cTNNM8Mk

вот я мемтест вытащил. если тебе уефи не важно

title memtest
kernel /memtest

Добавлено:

Цитата:
ru_winxp_pro_with_sp3_vl.iso
ru_windows_7_ultimate_with_sp1_x86_dvd_u_677463.iso
ru_windows_7_ultimate_with_sp1_x64_dvd_u_677391.iso

берешь вин пе, загружаешься и с помощью winntsetup-а спокойно ставишь любую винду используя образ.


Цитата:
map /SATA.IMA (fd0)
map --hook
map /Win$.iso (0xff)
map --hook
chainloader (0xff)


Win$.iso 34,9 МБ (36 687 872 байт)
семерка этой не ставится, только хп можно поставить.
AZJIO сборку возьми

Добавлено:
груб превратился в полноценную систему. причем совместимой с любым оборудованием. но это все знать не обязательно чтоб вещи делать для которых он сразу был предназначен
Автор: bomzzz
Дата сообщения: 17.03.2016 14:41
у почему версия мемтеста такая странная, последняя вроде пятая
Автор: boss_911
Дата сообщения: 17.03.2016 18:46
bomzzz

WinNTSetup штука интересная и полезная, но не мое это, не мой метод, другого хочется. Да и грузить WinPe, чтобы потом запустить WinNTSetup, совсем не то для меня. Но обязательно буду иметь в виду, метод не плох.

Так а тот вариант, который вы предложили:

Цитата:
можно положить фирадиск на образ флопика и промапить его вместе с виртуальным сд ромом

Код: title Find and Boot MYISO.iso from HD to mem with Firadisk
map --mem /firadisk.gz (fd0)
map --mem /MYISO.iso (0xff)
map --hook
chainloader (0xff)
Автор: bomzzz
Дата сообщения: 17.03.2016 19:11
надо фирадиск положить на образ флоппи, а флоппи пожать в GZIP архив

Добавлено:
http://rghost.ru/7qSqGXGRB
http://rghost.ru/7G6Tl8ZNP

Страницы: 1234567891011121314

Предыдущая тема: Софт где есть голосоой чат с незнакомцами.


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.