Portál AbcLinuxu, 10. května 2025 02:32
System.map-2.6.12-1-386 grub lost+found System.map-2.6.18-3-686 initrd.img-2.6.12-1-386 vmlinuz-2.6.12-1-386 config-2.6.12-1-386 initrd.img-2.6.18-3-686 vmlinuz-2.6.18-3-686 config-2.6.18-3-686 initrd.img-2.6.18-3-686.baktj. pripojene je to spravne
Přístup k disku by měl fungovat i v chroot:
# mount /dev/hdc6 /mnt # mount -o bind /proc /mnt/proc # mount -o bind /sys /mnt/sys # mount -o bind /dev /mnt/dev # chroot /mnt/ # vim /etc/mtab /dev/hdc6 on / type ext3 (rw,data=ordered) /dev/hdc5 on /boot type ext3 (rw,data=ordered) # mount -a
hdc5 != (hd0,5)
, ale (hd0,4)
..čísluje se od nuly setup (hd0)
..tak tímhle jste si patrně přepsal zavaděč Windows - takže další problém navíc.
root (hd0,4)
setup (hd0,4)
je však zvláštní, že to je hdc
. Pokud je to opravdu třetí disk, tak správně bude
root (hd2,4)
setup (hd2,4)
PS: Pokud jste při instalaci Linuxu zvolil instalaci zavaděče do /boot oddílu (obecně ne do MBR), stačilo nejspíš jen nastavit partition hdc5 jako aktivní. To už je ale asi passé.
PSS: v každém případě posečkejte na případné reakce/opravy k mému příspěvku.
Podle mě je problém v tom, že Grub nenašel svůj konfigurační soubor menu.lst
, protože root
neznamená v terminologii Grubu kořenový oddíl /
, ale adresář /boot
, který právě obsahuje tento konfigurační soubor. Takže jak říká kolega:
root (hd0,4)
A setup (hd0)
je správně, hodilo to skok na Grub do MBR a Windows se správně nabootují i bez svého MBR, který stejně nedělal nic jiného než, že skočil na jejich zavaděč na jejich partišně.
Co se týče číslování hda, hdb, hdc, sda, tak to má Grub také trochu jinak. Jestliže je v systému pouze jeden HDD byť je to hdc, tak pro grub je to 0
Jestli jsem se v něčem zmýlil, tak mě opravte...
BTW: Ostatně, když Ti naběhne Grub shell tak máš vyhráno, ani nemusíš znovu spouštět LIVE CD, ale stačí zadat:
root (hd0,4)
configfile /grub/menu.lst
Pro doplňování a zároveň ověření zdali požadovaný soubor opravdu existuje, lze použít TAB stejně jako v Bashi Po potvrzení posledního řádku by se měla objevit nabídka.
Booting 'Debian GNU/Linux, kernel 2.6.18-3-686' root (hd0,4) Filesystem type is ext2fs, partition type 0x83 kernel /vmlinuz-2.6.18-3-686 root=/dev/hdc6 ro [Linux-bzImage, setup=0x1e00, size=0x13196d] initrd /initrd.img-2.6.18-3-686 Error 16: Inconsistent filesystem structure Press any key to continue...
Takže by mělo stačit nabootovat LIVE CD a spustit:
root (hd0,4)
setup (hd0)
Takže Ti to vypsalo něco jako:
grub> root (hd0,4) Filesystem type is ext2fs, partition type 0x83 grub> setup (hd0) Checking if "/boot/grub/stage1" exists... yes Checking if "/boot/grub/stage2" exists... yes Checking if "/boot/grub/e2fs_stage1_5" exists... yes Running "embed /boot/grub/e2fs_stage1_5 (hd0)"... 15 sectors are embedded. succeeded Running "install /boot/grub/stage1 (hd0) (hd0)1+15 p (hd0,4)/boot/grub/stage2 /boot/grub/menu.lst"... succeeded Done.
A po rebootu jen černá obrazovka? To je celkem divný, protože při zkopírování stage1 do MBR a restartu by to mělo hodit minimálně nějakou chybu...
fixmbr
je třeba nastavit /boot oddíl jako aktivní (tím se řekne BIOSu, z kterého má bootovat. A proto bootovaly Windows a ne GRUB). Dá se to např. pomocí fdisku
nebo také z GRUB shellu příkazem makeactive
(po nastavení root disku příkazem root
).
Nicméně, podle toho, co píšete zde, bude asi nutné také nejprve reinstalovat zmíněné komponenty GRUBU - jestli se nemýlím, tak příkazem grub-install
z "normálního" shellu na LiveCD.
BTW: Převodní tabulka Grub-style pojmenování disků na Linux-style se nachází v souboru /boot/grub/device.map
.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.