Fórum Ubuntu CZ/SK
Ubuntu pro osobní počítače => Obecná podpora => Téma založeno: On 07 Září 2008, 19:16:16
-
Mám dva disky, které jsem doteď používal (na jednom Linux, na druhém záloha programů atd)..k nim chci přidat disk třetí, kde potřebuji windows. Podle návodů na wikině se mi vše podařilo rozběhat, widle mi přepsaly grub, dle návodu jsem ho znovu zavedl, ale problém nastal při zavádění obou systému do menu.lst. Nevím, kde můžu zjistit, jak Grub značí disky. Na wiki http://wiki.ubuntu.cz/Linuxov%C3%A9%20zna%C4%8Den%C3%AD%20disk%C5%AF je krásně tento převod popsán, já jsem ale bohužel ten případ, kdy nemám jen SATA nebo PATA, ale mám právě tu kombinaci..takže 1x SATA, 2xPATA. Celý problém teda spočívá v tom, co mám dopsat v menu.lst, v řádku: root (hdx,y). Je to disk s jedním oddílem, takže jsem zkusil tři možnosti (hd0,0 hd1,0 a hd2,0), ani jedno neslavilo úspěch.
Jedna věc mi ale není jasná, jinak bych to možná nějak vykoumal..nechápu, proč mi příkaz "sudo grub" a následný "find /boot/grub/stage1" ukazuje "hd2,0", takhle jsem zavedl grub. Ale v samotném menu.lst je cesta:
title Ubuntu 8.04.1, kernel 2.6.24-21-generic
root (hd0,0)
Jak je možné, že v samotném grubu mi psal, že to bude zavádět z hd2,0, když v menu.lst je hd0,0..? Jak teda zjistit, kde ty widle vůbec mám..? :) Vím, že jsou v /dev/hda1, ale to je tak vše.
-
Dej do terminálu
sudo fdisk -l
Zobrazí se ti, jak máš disky rozdělený, jaký mají označení (a - první disk hd0, b - druhý disk hd1, c - třetí disk - hd2) a boot partition.
Ať ti to píše hd nebo sd, do menu.lst se píše hd místo sd.
Jinak to vypadá, že by jsi měl mít u ubuntu hd2,0.
-
jj, to značení chápu..ať už to píše sd nebo hd, grub si to značí jinak, vždy hd...jde mi ale o to číslování. Když jsem hledal zavaděč (pomocí "find /boot/grub/stage1"), tak mi vypsal hd2,0. Po nainstalování grubu a načtení z "hd2,0" se vše rozběhalo..jen nevím, proč je v menu.lst "hd0,0"..když mi teda vyhledal zavaděč na hd2,0, proč z menu.lst bootuje z hd0,0, když se jedná o stejný disk.. tím pádem mě to jaksi mate :)
Jinak fdisk je teda zde:
Disk /dev/sda: 250,0 GB, 250 059 350 016 bajtů
hlav: 255, sektorů na stopu: 63, cylindrů: 30 401
Jednotky = cylindry po 16065 * 512 = 8 225 280 bajtech
Identifikátor disku: 0xdb39db39
Zařízení Zavádět Začátek Konec Bloky Id Systém
/dev/sda1 * 1 12158 97659103+ 83 Linux
/dev/sda2 12159 13617 11719417+ 82 Linux swap/Solaris
/dev/sda3 13618 30401 134817480 83 Linux
Disk /dev/hda: 120,0 GB, 120 034 123 776 bajtů
hlav: 255, sektorů na stopu: 63, cylindrů: 14 593
Jednotky = cylindry po 16065 * 512 = 8 225 280 bajtech
Identifikátor disku: 0x83a63bca
Zařízení Zavádět Začátek Konec Bloky Id Systém
/dev/hda1 * 1 14592 117210208+ 7 HPFS/NTFS
Disk /dev/hdb: 160,0 GB, 160 041 885 696 bajtů
hlav: 255, sektorů na stopu: 63, cylindrů: 19 457
Jednotky = cylindry po 16065 * 512 = 8 225 280 bajtech
Identifikátor disku: 0xfd19e9c4
Zařízení Zavádět Začátek Konec Bloky Id Systém
/dev/hdb1 * 1 19457 156288321 7 HPFS/NTFS
-
Aha, tak tohle mě nedošlo - ten výpis.
No podle toho máš ubuntu na sda tedy hd0,0 -> to je ok.
Win a data máš podle výpisu na hda a hdb což bych "normálně" označoval jako hd0,0 a hd1,0 ale když už máš ubuntu na hd0,0 tak ....
S tímto jsem se nesetkal, takže víc ti nepomůžu -> počkám si na nějakýho guru :) (tohle mě docela zajímá)
EDIT: napadá mě snad jedině, zda nejde do grubu zapisovat místo sd a hd uiid, jako v fstab, ale to jen hádám.
-
tohle je výpis z příkazu "find /boot/grub/menu.lst"
grub> find /boot/grub/stage1
(hd2,0)
A tohle je úryvek z menu.lst
title Ubuntu 8.04.1, kernel 2.6.24-21-generic
root (hd0,0)
kernel /boot/vmlinuz-2.6.24-21-generic root=UUID=71e009e5-2db9-4fd5-8e44-1a42eef0c84f ro quiet splash locale=cs_CZ
initrd /boot/initrd.img-2.6.24-21-generic
quiet
a pak je tady onen WIN:
title Windows XP
rootnoverify (hd?,?)
makeactive
chainloader +1
edit: Ta změna mohla nastat až po připojení toho třetího disku...nejsem si jistý, ale mám pocit, že jen tak na zkoušku jsem příkaz "find /boot/grub/stage1" zkoušel ještě před tím, než jsem připojil ten nový disk. A mám dojem, že hd0,0 tam bylo, ale jistý si teda nejsem..a až po připojení se to změnilo..ale pokud by se to změnilo na hd2,0, muselo by se to změnit i v menu.lst...ale tam mu to evidentně nevadí, linux se nabootuje.
-
Opravdu někdo nezná nějaký příkaz nebo konfigurační soubor, odkud se dá zjistit, jak grub značí aktuální uložení disků?
-
No, zkusil jsem a částečně funguje, v menu.lst jsem dodal nějaké ty řádky, co jsem vyčetl na netu a pomohlo. Menu.lst vypadá následovně:
title=Windows
rootnoverify (hd1,0)
map (hd1) (hd0)
map (hd0) (hd1)
chainloader +1
to "map" je tam proto, pač Widle jsou nainstalovány na fyzicky jiném disku, než Linux. Takže Win XP se úspěšně nabootovali. Vznikl ale další problém. Ve WIN mám JEDNOHO uživatele a po najetí na nabídku start zmizela funkce "vypínání" a příkazový řádek "spustit"..po zmáčknutí kláves ctrl+alt+delete se nemůžu dostat do nabídky, která normálně fungovala, napíše mi to, že nemám oprávnění a mám požádat správce sítě :) účet mám sice jeden, ale budiž..tohle už bude snad problém widlí, každopádně problém s bootováním to vyřešilo.
K tomu "rootnoverify (hd1,0)": mně to nabootuje, ikdyž tam mám (hd2,0), což trochu nechápu, ale hlavně že jede
-
Já jsem de.... Hlavně, že to "skoro" každýmu radím, a jeden pc doma takto mám upravený. Teď jsem úplně na to zapoměl -> rozhodilo mě to sda a hda :D No hlavně, že jsi si poradil :D
-
Noo, tak hlavně, že se to vyřešilo :) Ono je pravda, že když je PATA a SATA disk v PC, tak opravdu doteď nevím, jak to ten GRUB značí. Pokud máš sda a hda, obojí je v podstatě pro GRUB (hd0)..resp. on si je zařadí jako hd0 a hd1, jen nedokážu dohledat, který je který...tím laborováním se na to přijít sice dá, ale je to takové jakože neprofesionální :) Navíc u mě funguje boot i jako hd1, i jako hd2 :)) Myslel jsem, že bude nějaký konfigurační soubor nebo příkaz, kde bude něco podobného:
/dev/hda1 (hd0,0)
/dev/hdb3 (hd1,2)
atd..
-
Noo, tak hlavně, že se to vyřešilo :) Ono je pravda, že když je PATA a SATA disk v PC, tak opravdu doteď nevím, jak to ten GRUB značí. Pokud máš sda a hda, obojí je v podstatě pro GRUB (hd0)..resp. on si je zařadí jako hd0 a hd1, jen nedokážu dohledat, který je který...tím laborováním se na to přijít sice dá, ale je to takové jakože neprofesionální :) Navíc u mě funguje boot i jako hd1, i jako hd2 :)) Myslel jsem, že bude nějaký konfigurační soubor nebo příkaz, kde bude něco podobného:
/dev/hda1 (hd0,0)
/dev/hdb3 (hd1,2)
atd..
Není co dodat, taky by mě tohle zajímalo.
-
Třeba se ještě najde někdo, kdo se kromě tebe na tohle vlákno chytne a poradí nám :) Každopádně dík, kdybych to nekonzultoval s nikým, asi bych se nedonutil to hledat :)
-
Začnem BIOSEM,všechna zařízení jsou číslována od nuly, disky hd0,hd1,.....atd.
Nejdříve se počítají ATA,SATA a disketové mech.
Moje zapojení disků a DVD
Chanel0 M DVD
Chanel0 S ATA hd0 dev/sda
Toto je už rozdělený disk s oddíly.
hd0.0 dev/sda1 /boot
hd0.1 dev/sda2 swap
hd0.2 dev/sda3 /
hd0.3 dev/sda4 exdendet (rozšířený oddíl)
hd0.4 dev/sda5 /home
Chanel1 M DVD
Chanel2 M SATA hd1 dev/sdb
hd1.0 dev/sdb1
hd1.1 dev/sdb2
hd1.2 dev/sdb3
Co mam v menu.lst
title Ubuntu 8.04.1, kernel 2.6.24-19-generic
root (hd0,0)
kernel /vmlinuz-2.6.24-19-generic root=UUID=205fa902-c894-402f-b95c-65ea8c0a7dba ro quiet
splash
initrd /initrd.img-2.6.24-19-generic
quiet
title Microsoft Windows XP Professional
root (hd1,0)
savedefault
makeactive
map (hd0) (hd1)
map (hd1) (hd0)
chainloader +1
device.map
(hd0) /dev/sda
(hd1) /dev/sdb
Při startu PC než začne boot, zmáčkni F8 a v tabulce boot loaderu jsou kanály atd.
Také jsem z toho vycházel.
-
ZdenoTN: Takže když tam má On sda a hda, takže se berou nejdříve všechny hda (ATA) - tedy hd0, hd1 atd. a za ně se přidá sda i když by to mělo být podle výpisu označeno jako hd0, tedy nebude se zapisovat hd0, ale např. u 3 disků hd2, až za všemi disky ATA?
-
Ano, nejdříve se počítají ATA disky, takže
hd0 /dev/hda
hd1 /dev/hdb
hd2 /dev/sda1
-
Ano, nejdříve se počítají ATA disky, takže
hd0 /dev/hda
hd1 /dev/hdb
hd2 /dev/sda1
Super, tak sem zase o něco Zdenovatější :D Díky ZdenoTN
-
Kurník, jak je teda možné, že můžu bootovat win jak z hd1, tak z hd2..? Obojí mají společný jen file systém - NTFS. Ale systém je jen na jednom. A jak mi mohl nabootovat vůbec Linux, když jsem grub zaváděl pomocí hd2, což by odpovídalo tvému vysvětlení, ale proč ho v menu.lst zavádí z hd0,0?
Navíc v devices.map mám:
ladik@ladik:~$ cat /boot/grub/device.map
(hd0) /dev/sda
Což zas neodpovídá, pač mám disky hda(winxp), hdb(data) a sda(linux)..a sda by měl být teda hd2, ale v menu.lst ho bootuje z hd0,0 :)
ZdenoTN: tady bych to chápal:
Toto je už rozdělený disk s oddíly.
hd0.0 dev/sda1 /boot
hd0.1 dev/sda2 swap
hd0.2 dev/sda3 /
hd0.3 dev/sda4 exdendet (rozšířený oddíl)
hd0.4 dev/sda5 /home
a v menu.lst:
title Ubuntu 8.04.1, kernel 2.6.24-19-generic
root (hd0,0)
Takhle by to bylo pochopitelné, hd,0,0 máš jako bootovací oddíl dev/sda1 a v menu.lst je také hd0,0. Já jen nechápu, proč při zavádění grubu ho znal (asi podle řazení toho biosu) jako hd2, ale samotné ubuntu ho zná jako hd0. A proč v device.map mám jen teda jeden zavaděč, když tam mám i ty win xp, to už radši ani neřeším :) ono je to jedno, hlavně, že jede