LinuxForum.Fans
Тема

Проблема с загрузкой (lilo)

Автор: caffy 23 сообщений 9420 просмотров
#946

При загрузке пишет: NTLDR is missing
На компьютере одна ось: Slackware 13.0
Вот мои разделы (fdisk -l):
Disk /dev/sdb: 320.0 GB, 320071851520 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sdb1 * 1 32518 261200803+ 7 HPFS/NTFS

Disk /dev/sda: 250.0 GB, 250059350016 bytes
128 heads, 37 sectors/track, 103124 cylinders
Units = cylinders of 4736 * 512 = 2424832 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 70133 103124 78125056 83 Linux
/dev/sda2 1 1650 3907181+ 82 Linux swap / Solaris
/dev/sda3 1651 70132 162165376 5 Extended
/dev/sda5 1651 37140 84040301+ 83 Linux
/dev/sda6 37141 70132 78125037+ 83 Linux

Partition table entries are not in disk order

lilo.conf:

append=" vt.default_utf8=0"
boot = /dev/sda
install = /mnt/boot.b lba32
bitmap = /boot/slack.bmp
bmp-colors = 255,0,255,0,255,0
bmp-table = 60,6,1,16
bmp-timer = 65,27,0,255
prompt
timeout = 1200
default = Linux
reset
vga = normal
# Linux bootable partition config begins
image = /boot/vmlinuz
root = /dev/sda1
label = Linux
read-only
# Linux bootable partition config ends

Выполняю:

#chroot /dev/sda1
#lilo
Warning: '/proc/partitions' does not exist, disk scan bypassed
Warning: Unable to determine video adapter in use in the present system.
Warning: Video adapter does not support VESA BIOS extensions needed for display of 256 colors. Boot loader will fall back to TEXT only operation.
Added Linux *
3 warnings were issued.

Были попытки:

#lilo -v
LILO version 22.8, Copyright (C) 1992-1998 Werner Almesberger Development beyond version 21 Copyright (C) 1999-2006 John Coffman Released 19-Feb-2007 and compiled at 12:43:17 on Nov 29 2008.
Reading boot sector from /dev/sda
Warning: '/proc/partitions' does not exist, disk scan bypassed
Warning: Unable to determine video adapter in use in the present system.
Using BITMAP secondary loader
Calling map_insert_data
Mapping bitmap file /boot/slack.bmp
Warning: Video adapter does not support VESA BIOS extensions needed for
display of 256 colors. Boot loader will fall back to TEXT only operation.
Calling map_insert_file
Boot image: /boot/vmlinuz -> vmlinuz-huge-smp-2.6.29.6-smp
Added Linux *
Writing boot sector.
/boot/boot.0800 exists - no boot sector backup copy made.
3 warnings were issued.

#lilo -M /dev/sda mbr
/boot/boot.0800 exists - no /dev/sda backup copy made.
The Master Boot Record of /dev/sda has been updated.

Ничего не помогает, видимо пытается грузить с ntfs раздела
Помогите

Проблема решилась правкой в lilo.conf на
boot = /dev/sdb

#1495

У меня при установке Слаки 12.2 на sata вент я у станавливал grub. Потому что я так понимаю Lilo имеет проблеми из етими винтами и такого розмера

#1685
caffy написал:

...

Проблема решилась правкой в lilo.conf на
boot = /dev/sdb

По-моему, так же помогла бы смена загрузочного устройства в BIOS. А так немного неэстетично получается - рабочая система на sda, а загрузочный сектор на sdb... Вам решать.

#1687
kisil написал:
У меня при установке Слаки 12.2 на sata вент я у станавливал grub. Потому что я так понимаю Lilo имеет проблеми из етими винтами и такого розмера

Не замечал никаких проблем у lilo с sata винтами с размерами до 1 террабайта.

#120100

У меня тоже эта проблема. Не встает Lilo. Перегуглил что можно.

При старте системы лило пишет unable to mount root fs on unknown-block

text
/dev/sda2    /            ext4          defaults    0    1
/dev/sda1    swap       swap      defaults    0    0
devpts             /dev/pts   devpts    defaults    0      0
none                /sys         sys          defaults    0      0
none                /proc        proc        defaults     0     0

vga=792
lba32
boot = /dev/sda
map=/boot/System.map
prompt
timeout = 50
default = Linux
image = /boot/vmlinuz
root = /dev/sda2
label = Linux
append="quiet"
read-only

Если дать команду lilo, то вроде как добавляется. Не выдает ошибок.
Если
#lilo -M /dev/sda mbr
/boot/boot.0800 exists - no /dev/sda backup copy made.
The Master Boot Record of /dev/sda has been updated.

#120160
xlin написал:
При старте системы лило пишет unable to mount root fs on unknown-block

[console]# tune2fs -l `sed -rn 's~.*root=(/dev/.*).*~\1~p' /etc/lilo.conf`[/console]
в студию

#120162
drBatty написал:
# tune2fs -l `sed -rn 's~.*root=(/dev/.*).*~\1~p' /etc/lilo.conf`

хотя так не пойдёт. надо так:
[console]tune2fs -l /dev/sda2[/console]
сдаётся мне, что вы не тот раздел прописали.

#120189
drBatty написал:
сдаётся мне, что вы не тот раздел прописали.

Щас систему переставлю и чуть диск разбил по другому. sda1 - /boot sda2 - swap sda3 - ext4. Сейчас ядро соберется и протестю еще раз.
Можно будет даже еще раз груб влепить. Может он на этот раз встанет :D

#120197
xlin написал:
sda1 - /boot sda2 - swap sda3 - ext4

что за странная ФС - /boot ?
что там? а что в / ?
кстати, поддержку EXT4 не забыли включить?

#120203
kisil написал:
У меня при установке Слаки 12.2 на sata вент я у станавливал grub. Потому что я так понимаю Lilo имеет проблеми из етими винтами и такого розмера

в slackware 13.1 такой проблемы нет.

#120212

Да описался.

sda1 - /boot - ext2
sda2 - swap
sda3 - / - ext4

Так тоже не работает. В /etc/fstab дописал строку для /boot

drBatty написал:
кстати, поддержку EXT4 не забыли включить?

Это как? Я ставлю CRUX, а не Slackware.

Что касаемо GRUB. Он не может найти файл stage1 Хотя он лежит в /boot/grub/

В лило строка такая root = /dev/sda1 Т.к. на нем стоит флаг boot, ну и ядро само лежит.

#120220
xlin написал:
Это как? Я ставлю CRUX, а не Slackware.

какая разница, что вы ставите? вы пока не дошли до дистроспецифичной части загрузки. если ядро не поддерживает EXT4, то оно не сможет смонтировать корневую партицию. Т.е., как я понимаю, lilo загрузило ваше ядро(из /boot), а уже это ядро не смогло смонтировать /. такие дела. Загрузчик тут ИМХО не причём.

xlin написал:
В лило строка такая root = /dev/sda1 Т.к. на нем стоит флаг boot, ну и ядро само лежит.

root это не загрузочный раздел, а корневой. Должно быть прописано root = /dev/sda3, учитывая

xlin написал:
sda3 - / - ext4

кроме того, ядро должно уметь ext4. Кстати, какая версия ядра и lilo?

#120225

Я это все понимаю. Как проверить?

Когда система запускается. Бежит ползунок из точек и все. Сразу ошибка. Я бы грешил на ядро, если бы хоть какая то была загрузка. Типа погрузит, погрузит и когда доходит до корня выдает ошибку. Тут не так.

Если смотреть по lsmod | grep ext то видно что ext4 модуль подгружен. Так что это явно Lilo. Почему тогда ГРУБ не встает?

lilo 23.00
kernel-2.6.35.6

#120240

1)

xlin написал:
При старте системы лило пишет unable to mount root fs on unknown-block

2)

xlin написал:
Когда система запускается. Бежит ползунок из точек и все. Сразу ошибка. Я бы грешил на ядро, если бы хоть какая то была загрузка. Типа погрузит, погрузит и когда доходит до корня выдает ошибку. Тут не так.

Если смотреть по lsmod | grep ext то видно что ext4 модуль подгружен. Так что это явно Lilo.

нет.
п1 пишет УЖЕ не lilo, монтирует рутовую партицию именно ядро (насколько я знаю).
и такую ботву ядро пишет в том случае, если ФС неправильная. А неправильная она возможно потому, что EXT4 не поддерживается ядром.

Кстати, зачем вы ext4 как модуль сделали? может из-за этого? (я просто так никогда не делал. у меня в ядро вкомпилено).

xlin написал:
Почему тогда ГРУБ не встает?

а это спрашивайте не у меня. я груб не юзаю, ибо ИМХО он не нужен. И слишком сложен для меня. Но это ИМХО.

#120242

PS: опция root = ... в /etc/lilo.conf это параметр не для lilo, а для ядра. lilo передаёт этот параметр ядру, а уж оно (ядро) монтирует рутовую партицию. А уж потом становится доступным /etc, в котором /etc/inittab для /sbin/init Ну а дальше начинается дистроспецифичные вещи. Но это уже потом, после запуска /sbin/init, которая у вас не запускается, ибо /sbin не смонтирован. И /etc тоже.

это верно (насколько я знаю) для любого линукса.

#120281

Если смотреть по lsmod | grep ext то видно что ext4 модуль подгружен. Так что это явно Lilo.
попробую объяснить этот эффект "курицы и яйца".... ядру для монтирования файловой системы нужен модуль ext4 ... но проблема в том что модули ядра лежат в /lib/modules на той самой ФС которую ему надо смонтировать... вот и получается "курица и яйцо".... варианта 2... вкомпилиривать ext4 в ядро (не в виде модуля)... либо использовать initrd...
#120288
odin написал:
попробую объяснить этот эффект "курицы и яйца".... ядру для монтирования файловой системы нужен модуль ext4 ... но проблема в том что модули ядра лежат в /lib/modules на той самой ФС

а как же тогда

xlin написал:
Если смотреть по lsmod | grep ext то видно что ext4 модуль подгружен.

???

#120295

И чего делать? Пересобрать ядро и сделать не модулем? Просто я брал стандартный конфиг.

drBatty написал:
Если смотреть по lsmod | grep ext то видно что ext4 модуль подгружен.

Я смотрел когда уже зачесрутился. Может в самом ядре и нет поддержки. ((( Грузился же он как liveCD.

И я не пойму... Почему он не может грузануться если у меня само ядро на ext2? Или я понимаю ядро срабатывает, но не может подмонтировать (т.к. не загружен модуль) ext4 ? Я верно понял?

#120300
xlin написал:
И чего делать? Пересобрать ядро и сделать не модулем?

я-бы так и сделал.

xlin написал:
Просто я брал стандартный конфиг.

видимо автор конфига считал 4ю версию слишком новой. не нужно было делать корень в такой ФС (хотя /usr, /var, /home можно)

xlin написал:
Грузился же он как liveCD.

дык в лайве корень вообще в памяти, там своя ФС. ext4 она для hdd.

#120301

Пере собираю ядро. Посмотрю что получится. Чувствовал же что не надо ext4 делать. Дык жаба задушила.

А как заюзать initrd? Вот есть http://crux.nu/Wiki/Cryptsetup, не уверен что это то.

Войдите или зарегистрируйтесь, чтобы ответить.