1 (11.08.2013 03:31:55 отредактировано evolet)

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

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

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

LILO 22.8

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

ERROR 0x80

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

mount /dev/sda1 /mnt

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

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

can't read superblock

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

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

2

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

 # 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
Истинный hotplug - это обычная электрическая розетка: воткнул - работает, и никаких драйверов.
Slackware64-current/Xfce/Lenovo G580

3

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

fsck /dev/sda1

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

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

И

fsck -y /dev/sda1

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

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

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

4

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

Истинный hotplug - это обычная электрическая розетка: воткнул - работает, и никаких драйверов.
Slackware64-current/Xfce/Lenovo G580

5

yars пишет:
# mkdir /mnt/slack
# mount /dev/sda1 /mnt/slack

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

6

bormant пишет:
yars пишет:
# mkdir /mnt/slack
# mount /dev/sda1 /mnt/slack

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

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

Истинный hotplug - это обычная электрическая розетка: воткнул - работает, и никаких драйверов.
Slackware64-current/Xfce/Lenovo G580

7

yars⇓ пишет:

где я могу об этом подробнее почитать?

Загрузиться с CD/DVD Slackware:
1)

# 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.

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

Невозможно запустить 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