nixp.ru v3.0

17 января 2017,
вторник,
12:07:05 MSK

DevOps с компанией «Флант»
Wlad написал 16 февраля 2005 года в 06:49 (260 просмотров) Ведет себя неопределенно; открыл 9 тем в форуме, оставил 26 комментариев на сайте.

какой загрузчик корректнее?

Wlad

Уточняю вопрос: какой загрузчик корректнее работает, если поставлено три ОС. Две ЛИнукс о одна В-с ХР. Конечно Изделие Гейтса ставилось первым, иначе MBR был бы перезаписан некорректно.

fly4life

А что значит: «корректно» или «некорректно»?

А грузить три ОСи можно любым загрузчиком.

Wlad

Ну так вот. Стоял у меня ХР. Я добавил ASP v. 10. Все нормально было. Обе оси появились в меню первоначальной загрузки. Добавил ALT COmpact 2.3 , та к его загрузчих поймал только ХР и себя , любимого, а ASP после этого из меню первоначальной загрузки исчезло.

fly4life

А что мешает тебе в настройках альтовского загрузчика прописать соответствующие настройки для загрузки ASP Linux’а?

Wlad

Мешает, как обычно, незнание. Иначе бы я не задавал вопросов.

fly4life
Wlad
Мешает, как обычно, незнание. Иначе бы я не задавал вопросов.

какой загрузчик?

Uncle Theodore

Ну хорошо, а чем этот ALT грузится, lilo? Тогда редактируй /etc/lilo.conf в нем соответствующим образом (вписывай второй Линукс) и прогоняй lilo из командной строки. Если дашь больше информации (где стоЯт Линуксы на жестком диске), могу даже сказать, как именно вписать второго пингвина.

C GRUB’ом не работал, не знаю.

Good Luck,

UT

sky

В ALT’e должно быть grub стоит. Открой /boot/grub.conf или что-то подобное, посмотри как там прописан ALT и также опиши ASP.

Wlad

Acronix решил все проблемы. Поставил я его с CD после всех незагрузок. Он спокойно все нашел, выдал графическое меню. Остается только выбрать ось и нажать enter.

serzhinio

Появилась проблемка следующего рода. Загружался в линукс mandrake 10.1 через ntloader (стоит winxp на hda1) и вобщем както загрузчик lilo пару дней эдак нормально поработал (линукс стоит на hdb1 — отдельный винт) а сейчас заглючил — появляется L 99 99 99 99 и тд. (что то с геометрией диска что ли), загружаюсь без NTloadera, напрямую (в биосе отключаю диск hda вообще) все грузится нормально, прям мистика

Что б такого сделать чтоб все работало без всяких переключений биоса — через виндосовский загрузчик?

Genie

хммм.. видимо, Linux ставился во время того, как биск был hda, и, соответственно, загрузочный сектор содержит информацию обращаться именно в первому диску, на котором в текущей конфигурации винтов Linux отсутствует как класс. ;)

поэтому — загрузиться в Linux, запустить lilo (предварительно может потребоваться немного почитать man lilo на предмет map)

после этого скопировать загрузочный сектор и указать его для загрузки by ntloader (раз такое было сделано, то это не так уж и долго, и операция знакомая).

STR

Мда, а если акроникс не может найти Linux, нормального конфигуратора нет (где можно было бы прописать пути) Linux не грузится, запуск с системной дискеты ничего не дает (в смысле aspldr не запускается). И что делать в таком случае?

rgo

я обычно гружусь с установочного диска линукса. там есть всё необходимое чтобы добраться до lilo.conf и /sbin/lilo

STR
rgo
я обычно гружусь с установочного диска линукса. там есть всё необходимое чтобы добраться до lilo.conf и /sbin/lilo

Согласен, но сидирома нет, можно найти в короткие сроки, но так не интересно, вот и ищу ответ на свой вопрос. Кстати Lilo тоже не грузится, не хватает библиотек. Мда.

Genie
Кстати Lilo тоже не грузится, не хватает библиотек. Мда.

ч-ч-чегось?

поподробнее.

STR

Создаю загрузочную дискету под ASPLinux, далее гружусь с нее. Получаем консоль. Редактируем lilo.conf, и запускаем Lilo (чтобы загрузить Linux). При запуске выдает что библиотека не найдена. Дальнейший поиск привел к тому что загрузочная дискета поставляется с самым минимумом, поэтому ничего путного не получается. Нужно качать нормальные образа дискет, и запускаться с нее.

Genie

мдя.. может эта.. документацию по данному вопросу в гугле поищем, а?

в двух словах — для того, чтобы этой проблемы не было, следует воспользоваться chroot на примонтированный раздел «/» установленной системы.

после этого данной проблемы быть, вообще-то, не должно, так как библиотеки оно будет искать с самой установленной системы.

STR

Ну я сделал все несколько запутанней, подключил раздел линуксовый и оттуда выдрал все нужные библиотеки. И усе Linux загрузился, а далее делов совсем немного. Спасибо за подсказку, следующий раз попробую :-). Щас с IrDa мучаюсь, подлючил, телефон определил, не могу указать на используемый порт. Но это уже другая тема. А насчем google — дак как же без него.

DimkaS

Объясните пожалуйста, как настроить лило так, чтоб он мог загружать несколько разных линуксов. Каждая ось стоит на отдельном логическом диске (hdc5, hdc6 и т.д.). Попытки прописать путь к ядру и иниту как /dev/hdc5 приводят к «Fatal: ….. Not a directory. Может, нужен основной раздел /boot, на котором лежат ядра, а оси будут стоять на расширеном? Или для каждой оси ставить загрузчик в ее раздел, а в МБР ставить еще один лило с параметром other=….

fly4life
DimkaS
Объясните пожалуйста, как настроить лило так, чтоб он мог загружать несколько разных линуксов. Каждая ось стоит на отдельном логическом диске (hdc5, hdc6 и т.д.). Попытки прописать путь к ядру и иниту как /dev/hdc5 приводят к «Fatal: ….. Not a directory. Может, нужен основной раздел /boot, на котором лежат ядра, а оси будут стоять на расширеном? Или для каждой оси ставить загрузчик в ее раздел, а в МБР ставить еще один лило с параметром other=….

В путях к файлам ядра и initrd необходимо ставить абсолютные пути (/boot/vmlinuz, /boot/initrd или подобное), а названия устройств (/dev/hdc5 и прочие) надо прописывать в параметре root= в секции к каждому ядру.

DimkaS

Прогресс невелик — теперь лило говорит, что не может открыть файл /boot/vmlinuz… Такое ощущение, что он кроме раздела родной мандраки больше ничего не видит. Однако, fly4life, ты прав — в секции мандраки все так и написано (сорри, проглядел…) Но с debian и fc не проходит…

fly4life
DimkaS
Прогресс невелик — теперь лило говорит, что не может открыть файл /boot/vmlinuz… Такое ощущение, что он кроме раздела родной мандраки больше ничего не видит. Однако, fly4life, ты прав — в секции мандраки все так и написано (сорри, проглядел…) Но с debian и fc не проходит…

Видимо, у тебя нету файла /boot/vmlinuz. Этот файл, во многих случаях, является символической ссылкой на настоящий файл ядра под названием, типа vmlinuz-2.6.11-20, лежащий в той же директории /boot. Если ссылки нету, то её либо надо создать, либо в lilo.conf прописать целиком название /boot/vmlinuz-2.6.11-20.

P.S. название vmlinuz-2.6.11-20 взято из головы. Что именно находится в /boot у тебя, лучше расскажет:

ls -l /boot
DimkaS

Вот мой lilo.conf Для debian линки есть. Пробовал и через них и напрямую. Никак. Пробовал отдельно для FС — та же картина.

# File generated by DrakX/drakboot

# WARNING: do not forget to run lilo after modifying this file

boot=/dev/hda

map=/boot/map

default=«WindowsXP»

keytable=/boot/us-latin1.klt

prompt

nowarn

timeout=100

message=/boot/message

menu-scheme=wb:bw:wb:bw

image=/boot/vmlinuz

label=«linux»

root=/dev/hdc5

initrd=/boot/initrd.img

append="devfs=mount acpi=ht resume=/dev/hdc1»

vga=791

read-only

other=/dev/hda1

label=«WindowsXP»

table=/dev/hda

other=/dev/hda2

label=«windows2»

table=/dev/hda

image=/boot/vmlinuz-2.4.27-2-k7

label=«Debian»

root=/dev/hdc6

initrd=/boot/initrd.img-2.4.27-2-k7

read-only

image=/boot/vmlinuz-2.6.11-1.1369_FC4

label=«Fedora»

root=/dev/hdc7

initrd=/boot/initrd-2.6.11-1.1369_FC4.img

read-only

fly4life

а где же содержимое директории /boot?

DimkaS

Результат ls -l

Debian:

итого 5448

-rw-r—r— 1 root root 44973 Май 16 12:17 config-2.4.27-2-k7

drwxr-xr-x 2 root root 4096 Окт 3 18:27 grub/

-rw-r—r— 1 root root 4120576 Окт 3 18:25 initrd.img-2.4.27-2-k7

-rw-r—r— 1 root root 531579 Май 16 12:45 System.map-2.4.27-2-k7

-rw-r—r— 1 root root 863723 Май 16 12:45 vmlinuz-2.4.27-2-k7

Fedora:

итого 3620

-rw-r—r— 1 root root 56991 Июн 3 07:03 config-2.6.11-1.1369_FC4

drwxr-xr-x 2 root root 4096 Май 20 07:36 grub/

-rw-r—r— 1 root root 1198690 Окт 3 14:57 initrd-2.6.11-1.1369_FC4.img

-rw-r—r— 1 root root 764778 Июн 3 07:03 System.map-2.6.11-1.1369_FC4

-rw-r—r— 1 root root 1639539 Июн 3 07:03 vmlinuz-2.6.11-1.1369_FC4

Genie

как вариант, скопировать файлы config*, initrd*, System.mmap*, vmlinuz* из этих директорий в /boot основной системы — Мандрейка, приписать аналогично тому, как они прописаны в их собственных системных lilo.conf (не уверен, что для FC такой будет, тогда надо делать по аналогии с grub/menu.list) и запустить lilo.

второй вариант, действительно — установить для каждой отличной от первой системы загрузчик не в mbr, а в раздел и делать их загрузку через other=hdXY.

rgo

вариант третий, смонтировать /dev/hdc6 и /dev/hdc7 куда-нибудь, чтобы все ядра имели реальные пути в текущей системе. После чего прописать эти пути в lilo.conf.

DimkaS

Кажется, я понял причину проблемы — размер раздела Мандрейка 8Гб. Дебиан и Федора живут еще дальше. Видимо, Лило не в сосотоянии их адресовать. Попробовал вариацию 1-го варианта: создал в начале диска раздел, на который сложил все ядра. Однако, результат тот же…

Касательно второго варианта. В доках к лило говорится, что его нельзя ставить в логический раздел, но можно попробовать в расширенный. Не знаю, стоит ли..

С 3-м вариантом не очень понял. При загрузке-то ничего не будет смонтировано. Как лило сможет эти ядра найти?

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

PS. О дисках. У меня их два /dev/hda и /dev/hdc. На первом живет Вин, а в МБР стоит лило. Все пингвины сидят на втором. Он порезан так: ~128Mb /boot, ~400Mb — swap, Extended(Logical(8Gb, Mandrake), Logical(8Gb, Debian), Logical(8Gb, Fedora))

rgo

насчёт третьего варианта: при загрузке и не должно быть смонтировано. просто программка /sbin/lilo создаёт списки секторов файлов которые нужны загрузичику, и для создания этих списков, /sbin/lilo должен уметь дотянутся до файлов, а для этого ему нужны пути на смонтированных фс. А загрузчик lilo (тот который в загрузочном секторе) уже ничего не знает про файловые системы, он работает с секторами.

а теперь почему не работает первый вариант… давай так, чтобы не было путаницы, напиши сюда ещё раз lilo.conf (я понимаю ты его уже изменил слегка?) + вывод команды mount.

DimkaS

Решил попробовать 3-й вариант. Сначала ошибся и прописал в параметр рут путь к бут-разделу… Зато теперь я знаю что такое Kernel panic =)

Так вот. Я сижу и ничего не понимаю. Вполне логичный 1-й способ не работает. Зато 3-й дал результат противоположный ожидаемому. Вместо ругательств, лило добавил ядра с примонтированных разделов, а после ребута смог их загрузить! Это при том, что ядро федоры лежит где-то в 20-ти гигах от начала диска! Честь и хвала разработчикам.

Жаль, что я так и не стал счастливым пользователем Debian — х-сервер не вынес отсутствия мыши :) Но это все потом. Главное, что на машине стоит 3 линукса, все на логических дисках и все успешно грузятся.

Всем спасибо :)

Genie
Вполне логичный 1-й способ не работает.

а что конкретно делалось?

каков был lilo.conf?

Это при том, что ядро федоры лежит где-то в 20-ти гигах от начала диска! Честь и хвала разработчикам.

а lilo уже, собственно, без разницы, где ядра лежат. :)

главное — это слово lba32 (для самых последних версий актуальным становится введение lba48) в конфиге lilo.

Касательно второго варианта. В доках к лило говорится, что его нельзя ставить в логический раздел, но можно попробовать в расширенный. Не знаю, стоит ли..

а инсталлятор дебиана об этом почему-то не в курсе. берёт, ставит.

и, что самое подозрительное — работает.

правда, ставить его так на второй диск — не пробовал, за ненадобностью..

(хотя вру, надобность была, но там система ставилась в chroot-е)

DimkaS

Привожу кусочек по памяти:

image=/boot/vmlinuz-2.4.27-2-k7

label=«Debian»

root=/dev/hdc6

initrd=/boot/initrd.img-2.4.27-2-k7

Кажись, так. Проблема в том, что фс с ядрами должна быть примонтирована, чтоб лило их мог прочесть. А я думал, что он их сам как-нить найдет…

Я потом попробовал грузить все ядра с одного раздела — работает. Но пусть уж лучше каждое на своем живет.

Кст, Debian — единственный, кто нашел ВСЕ установленные оси. Mandrake и Fedora ограничились собой и виндой.

ecobeingecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.