Автор Тема: Win7, Win XP и Alt Linux, организация тройной загрузки, частный случай  (Прочитано 3401 раз)

Оффлайн greyzy

  • Участник
  • *
  • Сообщений: 277
    • http://samba-doc.ru
Тема скорее небольшая заметка, как я из lilo сделал тройную загрузку, две винды и альтлинукс, хотя есть и один вопрос чуть ниже.

Был у меня винт sda, на нем была windows 7, потом своп, потом /, затем /home. Потребовалась мне win XP, выделил я ей место между семеркой и свопом. Получилось:
/dev/sda1: UUID="9070374470373078" TYPE="ntfs" LABEL="system" это windows 7
/dev/sda2: UUID="BC5CE5D25CE5880A" LABEL="xp" TYPE="ntfs" это windows XP
/dev/sda5: TYPE="swap" UUID="92834b99-a593-4ed6-8af8-97f8148ae1c3" это своп
/dev/sda6: UUID="9856b867-2658-4b17-a20a-d07ef6f47915" SEC_TYPE="ext2" TYPE="ext3" это корень /
/dev/sda7: UUID="e4a204ca-b5ec-49e4-ae00-a969d4a1f795" TYPE="ext3" SEC_TYPE="ext2" это папка /home
/dev/sda8: UUID="FAAC0E1BFAB00DB7" LABEL="backup" TYPE="ntfs" это тут данные
После этого установилась успешно win XP, ну ессено надо возвращать нормальное бутовое меню.
fixmbr с rescue диска как всегда не работает, поэтому сделал, как на нашем вики, загрузившись в просто лив-режиме http://www.altlinux.org/Восстановление_загрузчика.
Ну и подредактировав lilo.conf, он получился таким:
map="/boot/map"
lba32
prompt
compact
install="menu"
vga="0x314"
append="resume=/dev/disk/by-uuid/92834b99-a593-4ed6-8af8-97f8148ae1c3 panic=30 splash=silent"
message="/boot/splash/message"
boot="/dev/disk/by-id/ata-ST3500320AS_5QM23T03"
timeout="100"
default="ALTLinux"

image="/boot/vmlinuz"
label="ALTLinux"
initrd="/boot/initrd.img"
root="UUID=9856b867-2658-4b17-a20a-d07ef6f47915"
read-only

image="/boot/vmlinuz"
label="failsafe"
initrd="/boot/initrd.img"
root="UUID=9856b867-2658-4b17-a20a-d07ef6f47915"
addappend="failsafe"
vga="normal"
read-only

other="/dev/disk/by-id/ata-ST3500320AS_5QM23T03-part1"
label="Windows_7"

#добавил я свою XP:
other="/dev/disk/by-id/ata-ST3500320AS_5QM23T03-part2"
label="Windows_XP"

image="/boot/memtest-4.00.bin"
label="memtest"
После этого при выборе в меню загрузки Windows_7 загрузилась windows XP, а при выборе Windows_XP я получил сообщение:
ntldr is missing, перезагружайтесь, товарищ Присмотрелся я к разделам с виндами, оказалось, XP закинула свои нужные для загрузки файлы (ntldr, Bootfont.bin, NTDETECT.COM, boot.ini) на первый раздел, где установлена win7, такое бывает.
Хорошо, перенес я их на второй раздел (где win XP), теперь при выборе Windows_7 говорит
ntldr is missing, перезагружайтесь, товарищ А при выборе Windows_XP загружает win XP. Таким образом осталось загрузить семерку.

Как же я получил загрузку семерки? А понял, что на первом разделе, где win 7, загрузочный сектор от win XP (что логично), поэтому надо его переписать на виндовосемерочный, для этого загрузился с установочного диска win 7, выбрал язык, и нажал Восстановление системы, выбрал эту самую систему, и в вариантах вызвал командную строку. Для записи загрузочного сектора висты или семерки на раздел с этой вистой или семеркой есть команда:
Bootrec.exe /FixBootКоторую я и выполнил.
Внимание! Не путайте с перезаписью главной загрузочной записи MBR (команда Bootrec.exe /FixMbr), которая бы затерла mbr lilo

Ну и все, после этого при выборе Windows_7 читался загрузочный сектор win 7, который обращался к bootmgr и грузил семерку с первого раздела, а при выборе Windows_XP загружается win XP со второго. Аль с самого начала грузился без проблем.
Еще мои винды при данной конфигурации разделов можно грузить так (не знаю хуже это или лучше):
other="/dev/sda1"
label="Windows_7"

other="/dev/sda2"
label="Windows_XP"
Может кому пригодится для систем с тремя ОС.

А вопрос, который я не понял: если со второго раздела загружается win XP, получается там есть загрузочный сектор XP, в какое время от туда попал? Выходит, во время установки установщик XP записал его и на первый и на второй раздел (хотя ntldr и иже с ним записала на первый)?
(Просто я думал, что lilo ищет на разделе файл ntldr, либо bootmgr, а выходит он все-таки обращается к загрузочному сектору раздела, а тот уже ищет "вторичный загрузчик" в зависимости от win-операционки)

« Последнее редактирование: 23.12.2010 10:19:38 от greyzy »

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
lilo ищет именно загрузочную запись в первом секторе раздела

Оффлайн Sergulet

  • Участник
  • *
  • Сообщений: 73
А подскажите пожалуйста как настроить grub2 в такой же ситуации.
XP и 7 на 1 жд, Altlinux Centaurus и загрузчик на 2 жд. Подхватился после установки Кентавра Windows 7 loader.
7 загружается, а XP уходит в перезагрузку.
На 5 платформе дописывал в lilo.conf
boot-as=0x81
и грузились обе винды, а тут не знаю как.
В /etc/sysconfig/grub ничего похожего, в /boot/grub/grub указано не редактируйте файл и не очень понятно как.