LinuxForum.Fans
Тема

Слетел загрузчик

Автор: evolet 7 сообщений 5067 просмотров
#332113

Здравствуйте. Недавно слетел загрузчик lilo на слаке.

При загрузке системы пропал выбор ОС(с логотипом linux Slackware).

Вместо этого пишет

LILO 22.8

Пытается загрузится и далее пишет

ERROR 0x80

Пробовал восстановить загрузчик lilo загрузившись с диска, но при вводе:

text
mount /dev/sda1 /mnt

(так же пробовал создавать каталог вида /mnt/system)

В любом случае пишет:

can't read superblock

И соответственно дальнейшие манипуляции бесполезны. Подскажите как восстановить lilo, или же поставить альтернативный загрузчик.

P.S. корневой раздел sda1 у меня, ничего не напутал.

#332118

Загрузитесь с LiveCD или с установочного диска и проверьте жесткий диск на ошибки при помощи fsck. Затем попробуйте выполнить

text
 # mkdir /mnt/slack
# mount /dev/sda1 /mnt/slack
# for i in dev proc sys ; do mount --bind "/$i" "/mnt/slack/$i"; done
#chroot /mnt/slack
# lilo
# exit
# reboot
#332207

yars, спс, про fsck забыл совсем, проблемы с суперблоком были, после прогона:

text
fsck /dev/sda1

Выдало несколько ошибок, появился загрузчик с выбором ОС(mount не пригодилось заюзать). Но по прежнему ядро системы было повреждено, далее:

text
fsck -b <код ошибки> /dev/sda1

И

text
fsck -y /dev/sda1

Дойдя до ошибок пошли надписи с кодами и помедкой fixed, меня это очень обнадежило, следующий reboot и ОС успешно загрузилась, даже в графическое окружение вошел без проблем.

По крайней мере можно сдампить важные файлы, которые мне очень нужны.

P.S. Загрузка стала немного отличаться от прежней.

#332217

Можно просмотреть в каталоге /lost+found, что именно пострадало. Данные восстановить из бэкапов, а пакеты переустановить, полностью всю систему переставлять необязательно.

#332346

yars написал:
text
# mkdir /mnt/slack
# mount /dev/sda1 /mnt/slack

Одно замечание (существенное). При работе с установочного диска Slackware монтировать корень рекомендуется в /mnt, а не куда-либо ещё. Причины просты: 1) setup, pkgtool, liloconfig ожидают корень именно в /mnt; 2) после загрузки PATH уже включает /mnt/{local/,usr/,}{sbin,bin}, и бинарники вашей системы будут вам доступны.
#332352

bormant написал:
[quote=yars]
text
# mkdir /mnt/slack
# mount /dev/sda1 /mnt/slack

Одно замечание (существенное). При работе с установочного диска Slackware монтировать корень рекомендуется в /mnt, а не куда-либо ещё. Причины просты: 1) setup, pkgtool, liloconfig ожидают корень именно в /mnt; 2) после загрузки PATH уже включает /mnt/{local/,usr/,}{sbin,bin}, и бинарники вашей системы будут вам доступны.[/quote]
Хм, спасибо, не знал. Хотя, оно же и так вроде бы работает. А где я могу об этом подробнее почитать?
#332356

"yars⇓" написал:
где я могу об этом подробнее почитать?
Загрузиться с CD/DVD Slackware:
1)
text

# pkgtool
You can't run pkgtool from the rootdisk until you've mounted your Linux partitions beneath /mnt. Here are some examples:

If your root partition is /dev/sda1 you would type: mount /dev/sda1 /mnt

Now you can find a list of all your partitions in /mnt/etc/fstab.

Then, supposing your /usr partition is /dev/sda2, you must do this: mount /dev/sda2 /mnt/usr

Please mount your Linux partitions and then run pkgtool again.

что примерно означает:

text

Невозможно запустить pkgtool пока в /mnt не будет примонтирован корневой раздел Linux. Вот несколько примеров:

Если корневой раздел /dev/sda1, наберите: mount /dev/sda1 /mnt

Теперь список всех используемых разделов доступен в /mnt/etc/fstab.

Предположим, раздел /usr - /dev/sda2, тогда нужно набрать: mount /dev/sda2 /mnt/usr

Примонтируйте все разделы Linux, затем снова запустите pkgtool.

2) почитать/погрепать на предмет /mnt текст сценариев liloconfig, pkgtool.

3) echo $PATH

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