Sziasztok,
az eddigi laptopom felépítése úgy nézett ki, hogy volt benne egy jó mélyen beépített (értsd mindent szét kell szedni hogy hozzáférj) 500 GB-os HDD, az kétfelé partícionálva, rajta egy Win7 + a másik partíción adatok. (SDA diszk)
ESATA csatlakozóval egy külső dokkolóban egy 128GB-os SSD-re feltettem egy Linux Mintet, 17.1 -est (SDB diszk). A telepítés nagyon frankó volt, a GRUB boot menüben szépen ki lehet választani indulásokor a Windowst is meg a Linuxot is, ment minden rendesen.
Azon kaptam magam, hogy az elmúlt 3 hónapban kizárólag a Linuxot használom viszont az Esata miatt a gépet nem igazán tudtam így mozgatni. Ezért vettem egy beépítőkeretet és a DVD helyére ezzel a kis tálcával beépítettem a Linux Mintet tartalmazó SSD-t.
Azóta viszont nem tud a GRUB bebootolni, ez a hibaüzenet jelenik meg:
error: no such device: itt jön a drive ID-je
Megkapom a grub rescue promptot.
Nem ijedtem meg, megtaláltam hogyan lehetne a grub rescue-ból elindítani az operndszert,
csakhogy az a bajom, hogy ha "ls"-sel kilistázom a diszkeket és partíciókat, a grub csak a hd0 -t látja,
azon a két windowsos partíciót.
A hd1 -et, ami az SSD volna, azt nem látja a grub.
Ha live CD-vel bootolok, akkor természetesen az újonan indult oprendszerrel látom mind a 2 diszket, a 2 windows partíciót és a Mintet tartalmazó SSD-t is.
Próbáltam a GRUB-rescue-diszkkel is újra rendbe tenni a dolgokat, de vagy azt érem el, hogy visszaállítja a Windows MBR-t, így a Win elindul a bootoláskor automatikusan rendesen, vagy ha újra generálom a GRUB-ot, akkor megint errorra futok.
Ezt a diszkinfót hozta létre a resce CD:
http://paste.ubuntu.com/9707567/
A sok magyarázás után a kérdésem a következő:
mit kellene csinálnom ahhoz, hogy a GRUB az első 500 GB-os diszk MBR-jéből be tudja tölteni a másik diszken lévő Linuxot?
Nagyon sokat olvastam utána, meg kipróbáltam sok leírást, de nem jutok dűlőre.
Legrosszabb esetben szétszerelem az egész gépet és kicserélem a diszkeket, bár nem tudom az működne e.
Ja, és a BIOSban nem tudom a boot sorrendben kiválasztani azt, hogy az SSD diszk legyen az első, csak azt, hogy a Hard Drive legyen az első, hogy azon belül melyik, azt nem.
- 2773 megtekintés
Hozzászólások
Live cd-ről indítva bind-del, és chroot-tal belépsz a telepített rendszerbe, és onnan próbáld meg újrarakni a grub-ot (grub-install /dev/sda), talán megjavul.
- A hozzászóláshoz be kell jelentkezni
Először is köszi a segítséget, de egész pontosan hogyan kell ilyenkor használni a bind + chroot kombót?
- A hozzászóláshoz be kell jelentkezni
http://ubuntuforums.org/archive/index.php/t-1156240.html
ez jónak tűnik pl.
- A hozzászóláshoz be kell jelentkezni
Ez a doksi jo volt, koszonom, be birtam menni a sajat telepitesembe chroot-tal (a live oprendszeren nincs ekezetem) es megprobaltam ujrainstallalni a grubot az SDA-ra.
Eredmeny:
lubuntu / # grub-install /dev/sda
grub-install: error: /usr/lib/grub/i386-pc/modinfo.sh doesn't exist. Please specify --target or --directory.
lubuntu / #
- A hozzászóláshoz be kell jelentkezni
Biztosan mindent jól csatoltál? Én így szoktam:
sudo mount --bind /proc /mnt/proc
sudo mount --bind /dev /mnt/dev
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
grub-install /dev/sda
exit
Remélem, nem írtam el semmit.
- A hozzászóláshoz be kell jelentkezni
Pont ezeket a parancsokat adtam ki a doksi alapjan:
# mount -o bind /proc /mount/point/proc
# mount -o bind /dev /mount/point/dev
# mount -o bind /dev/pts /mount/point/dev/pts
# mount -o bind /sys /mount/point/sys
# cp /etc/resolv.conf /mount/point/etc/resolv.conf
# chroot /mount/point /bin/bash
Ezek utan inditottam a grub-install /dev/sda parancsot, erre jott a hibauzenet.
- A hozzászóláshoz be kell jelentkezni
Ez pont ugyanazt jelenti, mint az enyém? Nem tudom... Nekem eddig mindig működött.
- A hozzászóláshoz be kell jelentkezni
Persze, a legelső lépést kihagytam, az mnt-be mountolom az sdb-t...
- A hozzászóláshoz be kell jelentkezni
A leiras elso lepese tartalmazta ezt, ezt nem irtam be a leirasba, de megvolt!
- A hozzászóláshoz be kell jelentkezni
https://www.gnu.org/software/grub/manual/html_node/Device-map.html
Van neked device.map file-od? Lehet, azzal tudnál valamit kezdeni.
tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE
- A hozzászóláshoz be kell jelentkezni
Szia, rakerestem, de nincs ilyen nevu fajlom. (se *.map) :(
- A hozzászóláshoz be kell jelentkezni
Azt értem, hogy nincs, de miért nem írsz magadnak egyet? ;) Ilyesmire gondolok:
(hd0) /dev/sda
(hd1) /dev/sdb
tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE
- A hozzászóláshoz be kell jelentkezni
Sikerült generálnom egy fájlt a grub-mkdevicemap programmal, most lett egy ilyen fájlom, benne nagyon hasonló paraméterekkel amit írtál. És most?
- A hozzászóláshoz be kell jelentkezni
Ezek szerint nem lett jobb? A nagyon hasonló mit jelent?
tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE
- A hozzászóláshoz be kell jelentkezni
A helyzet az, hogy nem bírtam tovább, valamilyen megoldás kellett.
Csináltam egy mentést a linuxról és nekikezdtem egy új installnak.
Szépen végig is ment minden, újraraktam a linuxot az SDB-re, majd a GRUB-ot a telepítés végét az SDA-ra.
A helyzet: az új install végén a bootoláskor ugyanezzel a hibával elhasal a GRUB.
Ezek után bármennyire is nem akartam, darabjaira szedtem a lapopom, betettem a belső HDD-nek a linuxos SSD-t, a nagyobb diszket a windows-zal meg a beépítőkeretbe.
Persze egyből elindult a GRUB, viszont így meg a windwost nem tudja bootolni!!!!
Vagyis én a következőre jutottam, az hogy a DVD helyére beépítőkerettel beteszek egy második vinyót, az azzal jár, hogy arról nem tudok bootolni. A tippem az, hogy a GRUB azért nem tud tölteni így, mert az a HDD az MBR betöltésekor még fizikailag nem áll rendelkezésre. Vagyis a rendszerbetöltők ekész egyszerűen akkor még nem láthatják azt a diszket.
Lehet ez hülyeség, mindenesetre több nap szívás után erre jutottam...
A segítséget azért mindenkinek nagyon köszönöm!!!
- A hozzászóláshoz be kell jelentkezni
Akkor a BIOS beállításaival lehet valami gond. Már, ha a feltételezésed igaz, s valóban csak a kernel inicializálja a SATA interface-t.
Másfelől tovább szimatolnék a device.map környékén, mert ha jól gondolom, az nagyjából erre van. Mi több, a Grub2-nek van konzolos módja, lehet valós időben „kísérletezni”, megadni, lekérdezni dolgokat. Ezen felül be is drótozhatsz hivatkozást, valahogy így:
linux (hd0,1)/boot/vmlinuz root=/dev/sda1 ro quiet
Erősen csak példa, nem épp erre van szükséged. Ha sikerül az interaktív interface-ről, akkor már csak bele kell faragni a grub.cfg-be.
Én egyszer azzal szívtam, hogy GPT-re volt partícionálva a HDD-m, SSD-re költözésnél az SSD-t meg hagyományos MBR alapúra partícionáltam. A Grub2 betöltötte a GPT-hez való modulját, aztán bambán nézett, nem tudott mit kezdeni az MBR-rel. Persze rájöttem, kijavítottam, ma is működik. Nem kellett újratelepítenem az oprendszert. Itt írtam erről.
tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE
- A hozzászóláshoz be kell jelentkezni
Tovább most azóta már nem kísérleteztem vele, de mint korábban írtam, a grub konzol módjában sehogyan sem tudtam lekérdezni a beleszkábált HDD-t.
Valószínűleg a laptop gyártásakor (Dell Inspiron N5010) nem feltételezték hogy valaki ilyen célra akarná használni a DVD meghajtó helyét.
És ugye a másik, hogy így, hogy a Linuxom már rendben van, a Grub a Windowst nem tudja most bootolni ezen a sata porton lévő vinyóról.
Talán a BIOS-t lehetne frissíteni, ennek még nem néztem utána.
Köszi az eddigieket is! :)
- A hozzászóláshoz be kell jelentkezni
Az, hogy a grub konzolból nem látod (hd1)-ként a második diszket, az azt jelenti, hogy a BIOS nem inicializálja azt, amikor beindítja a grubot. Így viszont a grubbal biztosan nem fogsz tudni róla betölteni semmit.
- A hozzászóláshoz be kell jelentkezni
De akkor mit lehet tenni?
Lehet hogy ezzel a BIOS-szal semmit?
- A hozzászóláshoz be kell jelentkezni
- megtalálod a megfelelő beállítást a BIOS-ban, amitől megjavul
- BIOS-t frissítesz
- máshova dugod a vinyót (ahol látja a BIOS)
- /dev/sda-ra rakod a boot partíciót (kernel + initram image)
- pendrive-ra rakod a boot partíciót
- A hozzászóláshoz be kell jelentkezni
Én azt tenném, hogy a Windows mellé tennék egy kb. 500 MB-os partíciót, ebbe a Grub2-t. Erről boot-olna a gép, a másik HDD-n lenne a Linux, de az előbbi HDD-n lévő picike filerendszert csatolná a /boot alá.
tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE
- A hozzászóláshoz be kell jelentkezni
Uh, kezdem kapisgálni, amiket írtatok.
A BIOS ennek a DELL-nek egy kalap fos, gyakorlatilag a boot sorrenden kívül még BIOS jelszót lehet beállítani meg disk encryption-t aztán kész, semmilyen paraméter nem állítható, ami mondjuk egy PC-n.
Akkor ezek szerint megint vár rám egy szerelés, a nagyobb HDD-t betenni a gyári helyére, kicsit csökkenteni a meglévő partíciók méretét mondjuk 500MB-tal, abba tenni a linux /boot fájlrendszerét, így a GRUB be tudna bootolni róla, és ezek szerint tudná indítani az azon a diszken lévő windowst is.
Jól értem?
- A hozzászóláshoz be kell jelentkezni
Gondolom, ha képes berántani a kernelt, meg az initrd-t, ami még a Windows-t is tartalmazó /boot-on van, akkor már a Linux tudja inicializálni a SATA interface-t, s eléri a root fs-t, felcsatolja, onnan meg már készen is vagy. Előfeltétel nyilván az, hogy az initrd-ben megtalálhatók legyenek azok a modulok, amelyekre szükséged van, de szerintem egy alap telepítésssel generált initrd épp ilyen lesz.
tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE
- A hozzászóláshoz be kell jelentkezni
Nem feltétlen kell szerelned. 500mb-t miatt szerintem nem érdemes vinyót cserélni. Az a lényeg, ami locsemege írt. Nekem is ilyen laptopom van, és az odd helyére berakott hdd-ről nem képes bootolni, mert azt a bios is odd-nek ismeri fel. Ezért a gyárilag bent lévő hdd-re csinálj egy partíciót, amin rajta lesznek a boothoz szükséges fájlok. Ennyi
- A hozzászóláshoz be kell jelentkezni
Visszaolvasva a hozzászólásomat, talán kicsit zavarosan írtam. Valami ilyesmire gondoltam:
sda
sda1 ext4 500 MB, ezen van a grub, kernel, initrd, ez csatolandó a /boot alá
sda2 ntfs Windows, vagy extended, és akkor sda5 az ntfs Windows
sdb
sdb1 ext4 500 MB, nem használt, de megcsinálnám, hogy legyen rajta grub, kernel, s szükség esetén a másik HDD nélkül is indítható lenne a Linux
sdb2 ext4 / de lehet akár LVM is
sdb3 ext4 /home
sdb4 swap swap
Az sda megy arra a helyre, ahonnan a gép képes boot-olni. Lehet, hagynék az sdb-n helyet egy picike filerendszernek, ez sdb1 lenne, hogy a HDD-ről önállóan is boot-olni lehessen a Linuxot, ha ezt a HDD-t átteszed sda pozícióba.
tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE
- A hozzászóláshoz be kell jelentkezni
Nagyon jók vagytok!!!!!!! :)
Ma rászántam magam és ez a megoldás!
Nem szereltem már, hanem a gyári helyen lévő SDD-n kialakítottam egy boot partíciót, így most már azon van a GRUB is és a win+linux boot rész, mind a kettőt tudja indítani!
Viszont nem voltam olyan ügyes, hogy egy már meglévő rendszeren változtassam meg a boot partíció helyét, így egy új installt kellett csinálnom és azzal már működött minden!
Köszi még egyszer! :)
ui.: Persze ha valaki ad egy jó tippet (linket) akkor szívesen utánaolvasok annak is, hogy egy már működő rendszeren hogyan lehet ezt megváltoztatni! :)
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
Ez lett a fajl, amelyet keszitett (beirtam a leirasba az elejen hogy mit ertem el vele) http://paste.ubuntu.com/9707567/
Nem sikerult vele megoldanom, se auto modban, se advanced modban. :(
- A hozzászóláshoz be kell jelentkezni
Apropó, ezt olvastad? Hasznos.
tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE
- A hozzászóláshoz be kell jelentkezni