LILO
Модератор: gloom
LILO
Короче так. Есть у меня Windows XP и Mandriva Linux 10.2 и загрузчик по умолчанию LILO. Однажды пришлось переинсталлировать Виндозу, ну и как положено по-мелкософтски LILO стёрся. Теперь в Линух зайти не могу. Как переставить LILO ? (ну чтобы не обновлять Линух).
- -=aVENGEr=-
- Продвинутый
- Сообщения: 491
- Зарегистрирован: Ср май 05, 2004 05:25
- Откуда: eth1
- Контактная информация:
- andrew_grad
- Юзер
- Сообщения: 75
- Зарегистрирован: Вс сен 26, 2004 01:25
- Откуда: Кишингтон
Однажды пришлось инсталлировать Slackware 9.0 на ПК с уже установленной Windows XP Professional. В качестве основного загрузчика был, конечно же, NT Loader. Но вот беда: он никак не хотел грузиться через LiLo, выдавая ошибку «NTLDR is missing...». Что ж, с некоторыми версиями LiLo такое случается. Поскольку ничего иного под рукой не оказалось, пришлось разбираться с LiLo и NT Loader. Если NT Loader не хочет грузиться через LiLo, то, может, попробовать наоборот — LiLo через NT Loader, установив LiLo на раздел диска с Linux? Но ведь NT Loader не умеет работать с ext2 /ext3/ReiserFS. И все же выход нашелся! Нужно просто перенести LiLo из ext2/ext3/ReiserFS на любой раздел NTFS/FAT32, а затем прописать ссылку на него в boot.ini. Как это сделать? LiLo, установленный на раздел жесткого диска, занимает первый его сектор, точнее, первые 512 байт. Их нам и нужно перенести в файл, находящийся в разделе Fat/NTFS. Если планируется разместить LiLo на NTFS, то нужно подготовить дискету, отформатированную под MS-DOS.
Итак, порядок действий таков: загружаемся с загрузочного диска Slackware и монтируем дискету, если загрузчик будет на NTFS-разделе:
mount -t msdos /dev/fd0 /mnt/
Если LiLo будет размещен на Fat-разделе, то монтируем Fat32-раздел:
mount -t vfat /dev/hda1 /mnt/
/dev/hda1.
Теперь с помощью стандартной утилиты dd прочтем первые 512 байт диска, содержащего LiLo (у меня /dev/hda5), и запишем их в файл boot.linux на дискете или Fat-разделе:
dd if=/dev/hda5 of=/mnt/boot.linux bs=512 count=1
Когда мы записываем LiLo на дискету, то перезагружаемся в Windows и копируем файл boot. linux c дискеты в корневой каталог NTFS-раздела, содержащего NT Loader. Если же LiLo переписан прямо на Fat-раздел, то удостоверимся, что в его корне появился 512-байтовый файл boot. linux. Осталось только добавить строку C:\boot.linux=«Slackware Linux» в секции «operating systems» файла boot.ini. После перезагрузки в меню NT Loader должен появиться пункт Slackware Linux. Выбрав его, загрузим меню LiLo! Отмечу лишь, что если вы захотите переустановить LiLo, то все описанные действия придется повторить.
Итак, порядок действий таков: загружаемся с загрузочного диска Slackware и монтируем дискету, если загрузчик будет на NTFS-разделе:
mount -t msdos /dev/fd0 /mnt/
Если LiLo будет размещен на Fat-разделе, то монтируем Fat32-раздел:
mount -t vfat /dev/hda1 /mnt/
/dev/hda1.
Теперь с помощью стандартной утилиты dd прочтем первые 512 байт диска, содержащего LiLo (у меня /dev/hda5), и запишем их в файл boot.linux на дискете или Fat-разделе:
dd if=/dev/hda5 of=/mnt/boot.linux bs=512 count=1
Когда мы записываем LiLo на дискету, то перезагружаемся в Windows и копируем файл boot. linux c дискеты в корневой каталог NTFS-раздела, содержащего NT Loader. Если же LiLo переписан прямо на Fat-раздел, то удостоверимся, что в его корне появился 512-байтовый файл boot. linux. Осталось только добавить строку C:\boot.linux=«Slackware Linux» в секции «operating systems» файла boot.ini. После перезагрузки в меню NT Loader должен появиться пункт Slackware Linux. Выбрав его, загрузим меню LiLo! Отмечу лишь, что если вы захотите переустановить LiLo, то все описанные действия придется повторить.