Добро Пожаловать  Ru.Board
 

Навигация
  • Главная
  • Форум
  • Темы
  • Топ лист
  • Файловый архив

  • Реклама





    Проголосуй!
    Статьи на какие темы вы бы желали видеть на нашем сайте?

    Системное администрирование Windows
    Администрирование *nix систем
    Обзоры пользовательского программного обеспечения
    Вебмастеринг: тонкости сайтостроения
    Вебмастеринг: юзабилити сайтов
    Вебпрограмминг: полезные решения
    Linux-системы: вопросы по работе
    Вопросы по аппаратной части компьютеров
    Обзоры программ для администраторов
    Компьютерная безопасность (для пользователей)
    Компьютерная безопасность (для администраторов)
    Другое


    Результаты
    Другие Опросы

    голосов: 16198

    Избранное
  • Установка Php-Nuke
  • Установка IkonBoard на локалхосте



    Форум по движку IkonBoard V.2

    Файловый архив для вебмастеров: полезные скрипты

    Форум по операционным системам: Linux, Windows, Mac

  • Поиск по сайту




    Операционные системы: Восстановление загрузчиков Linux/FreeBSD
    Опубликовал lynx 08.03.2004 17:02

    Операционные системы
    Достаточно частой является ситуация, когда на одном компьютере одновременно установлены две операционные системы, например, Windows и Linux или Windows и FreeBSD. При этом нередко случается необходимость переустановить Windows.
    Те, кто оказывался в подобной ситуации, знают, что в таких случаях происходит затирание загрузчика Linux (FreeBSD), и вторая операционная система (Linux или FreeBSD) становится недоступной для загрузки.



     

    Загрузчик становится недоступен потому, что при установке/переустановке Windows переписывает MBR - Master Boot Record (главную загрузочную запись диска), записывая туда свой загрузчик. Соответственно, любой другой загрузчик, находившийся там, будет затёрт. Очевидно, специалисты Microsoft ставили целью избавить конечного пользователя Windows от проблем, связанных с загрузчиком, и пытались облегчить установку ОС. Тем же, у кого на диске расположена не одна, а несколько операционных систем, такая ситуация только добавляет хлопот.

    Затирания загрузчика при переустановке Windows можно избежать, если до инсталляции операционных систем произвести некоторые манипуляции с диском. Но об этом речь пойдет ниже.

    А сейчас давайте рассмотрим, что же делать, если загрузчик Linux/FreeBSD стал недоступен. Конечно, можно заново переустановить Linux/FreeBSD, но делать это всякий раз после переустановки Windows, согласитесь, не хотелось бы.

     

      Восстановление загрузчика состоит из следующих основных этапов:

      1. Вначале необходимо каким-то образом загрузить установленную систему.
      2. Затем, при необходимости, следует поправить конфигурационные файлы загрузчика и перепрописать его в MBR.

     

    Загрузка системы Linux

     
    Для загрузки системы можно использовать, например, загрузочную дискету Linux/FreeBSD, создать которую всегда предлагается в ходе инсталляции ОС.

    Если у вас нет загрузочной дискеты, но есть загрузочный CD, то можно поступить следующим образом. Обычно на загрузочных дисках присутствует возможность загрузки в режиме Rescue. В качестве примера берём Linux Red Hat.
    В приглашении boot: пишем:

    boot: linux rescue

    На экран будет выдана информация, куда примонтирована файловая система, например:

    /mnt/sysimage

    делаем его корневым:

    chroot /mnt/sysimage

    потом создаём дискету:

    mkbootdisk --device=/dev/fd0 <версия ядра>

    Версию ядра можно посмотреть по:

    uname -r

    Обратите внимание, версия ядра может не совпадать с установленной в самой ОС!

     
    Еще один способ создания загрузочной дискеты Linux - с помощью установочного CD с Linux.
    Обратитесь к диску из Windows. Вполне возможно, что программа автостарта запустит меню, где одним из пунктов будет предложено создать загрузочную дискету. Если программа автостарта не сработала, необходимо выполнить следующие действия.
    Находясь в Windows, перейдите в каталог \dosutils\ диска. Там вы увидите программы:

    rawwritewin.exe
    rawwrite.exe

    Запустив rawwritewin.exe мышью, либо из командной строки, вы получите диалоговое окно с предложением выбрать путь к образу диска. Образы дисков находятся в каталоге \images\, вам нужно выбрать файл \images\cdrom.img, если дистрибутив Linux расположен на CD, и \images\hd.img, если дистрибутив лежит на жестком диске. В Red Hat Linux для создания загрузочной дискеты используется один образ - \images\bootdisk.img.
    Подробнее об особенностях создания загрузочной дискеты с вашим дистрибутивом вы всегда можете прочитать в файле INSTALL.txt, расположенном в корне диска с дистрибутивом (если дисков несколько - в корне первого диска).

    После этого вам будет предложено вставить в дисковод чистую дискету, и на нее запишется образ загрузочного диска.

    Для предпочитающих аскетичный интерфейс те же действия можно совершить, набрав в командной строке, например:

    i:\dosutils\rawrite.exe -f i:\images\cdrom.img

    Где первая буква (в данном примере - i) - буква вашего CD-ROM-диска.

    Подробнее получить справку о команде rawwrite.exe можно, набрав ее с опцией -h:

    >i:\dosutils\rawrite.exe -h

     

    Восстановление загрузчика Linux

     
    Итак, загрузочную дискету вы создали. Загружаемся с нее и видим следующее приглашение:

    boot:

    Этим приглашением система просит указать ей boot-раздел (раздел, с которого ей следует грузить ядро).
    Указываем первый диск, на котором расположен ваш Linux:

    boot: vmlinuz -S root=/dev/hda5

    где /dev/hda5 - это первый раздел диска, на котором установлен Linux. В данном случае это пятый раздел первого IDE диска.

    Если вы неправильно укажете имя раздела, например, ошибетесь в цифре, то увидите похожую ошибку:

    kernel panic: VFS: Unable to mount root fs on 3a:05

    Ошибка означает, что диспетчер файловых систем не может смонтировать root-раздел с того диска, который вы ему указали.

    Если вы указали раздел правильно, то, скорее всего, вам удастся загрузить систему и войти в нее под пользователем root. Ошибки, которые, возможно, вы увидите при загрузке, игнорируйте.

     
    Иногда загрузить систему таким образом не удается. Не отчаивайтесь.
    В ответ на приглашение:

    boot:

    Наберите:

    vmlinux root=/dev/ваш_root_раздел init=/bin/bash/ rw

    Этим вы монтируете ядро в режиме чтение-запись, а вместо процесса init, выполняющего в системе вызов интерпретатора команд, загружаете интерпретатор команд bash. Будьте осторожны, в этих условиях вы легко можете повредить систему, так как из-за отсутствия init вы лишились контроля за недопустимыми действиями с вашей стороны. Сделайте только необходимые для восстановления загрузчика изменения (речь о них пойдет ниже), затем сбросьте кеш диска командой:

    sync

    и перемонтируйте корневую файловую систему в режим только для чтения:

    mount -o remount,ro /

    После этого дайте команду:

    reboot

    для перезагрузки системы.

    Если вы совершили правильно все действия по восстановлению загрузчика (включая те, о котрых пойдет речь ниже), перед вами окажется ваш привычный lilo (GRUB).

     

    Правка конфигурационных файлов для восстановления загрузчика

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

    /sbin/lilo -v

    если в качестве загрузчика используется lilo.

    Или:

    /sbin/grub-install /dev/hda

    для загрузчика GRUB. Где /dev/hda - это ваш диск.

     

    Восстановление загрузчика FreeBSD

     
    Для восстановления загрузчика FreeBSD также можно воспользоваться различными способами.

    Первый способ
    Находясь в Windows, можно вставить установочный CD в дисковод, и через командную строку зайти в каталог \TOOLS\ на этом диске (или же просто пишем команду через Run с указанием всех путей):

    ...\TOOLS> bootinst.exe boot.bin

    Второй способ
    Загружаемся с установочного диска и попадаем в sysinstall - универсальный инсталлятор/конфигуратор системы.
    Выбираем вариант установки Custom, затем заходим в Partition. Попадаем в редактор дисков и, не делая никаких изменений, нажимаем (W)rite.
    В диалоговом окне подтверждения отвечаем Yes, затем в появившемся окне выбора загрузчика выбираем Boot Manager.
    Эти манипуляции позволят перезаписать загрузчик в MBR.
    После чего следует выйти из программы установки и перезагрузить компьютер.

    Третий способ
    Аналогично загружаемся с установочного диска, в меню выбираем Fixit, там выбираем floppy, если есть загрузочная дискета или CDROM# 2 (опция "live" filesystem, требует наличия 2-го CD FreeBSD).

    Откроется консоль, в которой нужно написать:

    Fixit# fdisk -B -b /boot/boot0 загрузочное_устройство

    где загрузочное_устройство:
    /dev/ad0 - первый IDE-диск или
    /dev/da0 - первый SCSI-диск.

    Примечание:
    Если вы планируете использовать весь диск под FreeBSD, то устанавливать загрузчик не нужно. В fdisk после создания слайса FreeBSD нужно выделить его и нажать кнопку (S)et bootable. В меню выбора загрузчика следует отметить Standart MBR (no boot manager).

     

    Разбивка диска для установки двух и более операционных систем

     
    Чтобы полностью избежать ситуации, когда ваш Linux/FreeBSD загрузчик затирается при переустановке Windows, можно ставить Windows не на первый раздел диска. Оставьте первый раздел диска только для размещения на нем MBR и системных файлов, а операционные системы, в том числе Windows, ставьте на другие разделы.

    В этом случае большой размер первого раздела не потребуется, достаточно будет 23-25 Mb. К, сожалению, раздел меньшего размера вам сделать не удастся, так как в этом случае при инсталляции Windows вы будете получать ошибки с сообщениями о нехватке места.

    Разбивать диск на разделы можно любой программой, предназначенной для работы с партициями, например, PartionMagic, PartitionExpert. Файловую систему для этого диска можно выбрать FAT16.

    На этом же диске, по своему желанию, можете поместить DOS, командную оболочку, скажем, Norton Commander или Volcov Commander, - это может оказаться удобным, например, когда вы грузитесь с загрузочной дискеты DOS или Windows.

    Операционную систему Windows ставьте, например, на второй раздел диска. Если у вас нет опыта установки нескольких операционных систем на один диск, то ставьте сначала Windows, а затем Linux или FreeBSD. В этом случае в качестве загрузчика будет использоваться lilo или GRUB.

    При таком разбиении диска повторная установка Windows не вызовет затирания MBR и не приведет к потере Linux/FreeBSD загрузчика. Вы сможете переустанавливать операционные системы на вашей машине столько, сколько захотите, без боязни потерять доступ к какой-то из них.

     

    Дополнительная документация

     
    LILO mini-HOWTO
    Мультизагрузка с GRUB
    Linux + Win9x + GRUB HOWTO
    Linux + WindowsNT mini-HOWTO
    Использование FreeBSD совместно с другими операционными системами
    Загрузка FreeBSD с использованием GRUB

     

    Если после прочтения этой статьи для вас осталось что-то неясным, либо не получилось восстановить загрузчик, жмите линк «Комментировать» и задавайте вопросы в форуме.
    Если вы можете поделиться с пользователями форума «Операционные системы» чем-то полезным для них и оформить это в виде статьи - с удовольствием разместим ваш труд и наградим персональным статусом.

     

    Авторы статьи: lynx, Demetrio




    КомментироватьВерсия для печати

     
    Категории
  • В помощь сисадмину
  • Все о софте
  • Вебмастеру
  • Игры
  • Hardware
  • О сайте
  • Программирование
  • Операционные системы
  • IkonBoard
  • InvisionBoard
  • Скрипты в примерах
  • Php-Nuke
  • Цифровое изображение
  • Юмор

  • Ссылки по теме
  • Ещё о Операционные системы
  • Новости от lynx


    Популярная статья в категории Операционные системы:

    WinPE или LiveCD с Windows своими руками



  • This web site was made with PHP-Nuke