[Megoldva] Windows 8.1 bootolhatóvá tétele

Kaptam egy ASUS jóég tudja, milyen laptopot azzal, hogy jaj-jaj, bekapcsolás után a BIOS setup jön fel, se előre, se hátra. Valóban ez volt. Secure boot-ot ki tudtam kapcsolni, live Linuxot boot-oltam, szétroncsolt partíciós táblát helyrehoztam, miután testdisk-kel megkerestem rajta a filerendszereket. Sem fdisk, sem gdisk nem talált értelmesnek mondható partíciós táblát. Azért biztos ami tuti alapon a HDD első 2 MiB-ját lementettem file-ba, hogy az eredeti állapotot visszaállíthassam, ha kell.

Gépet szétszedtem, 500 GB-os HDD-t kiszedtem, saját gépemen felcsatoltam read only a filerendszereket. Van rajta egy 71 MB-os vfat, benne EFI-s cuccok, egy 900 MB-os ntfs, ebben is boot gyanús cuccok vannak, meg egy 187 GB-os ntfs, ezen van a Windows, meg minden személyes adat. A többi senki földje, szerintem valaki már próbálkozhatott vele, csak nem mondták, s akkor kaptam meg, amikor már minden veszni látszott. A file-ok szépen látszanak.

A boot flag-et még nem tettem fel talán a második(?) partícióra, ezt megpróbálom majd. Ezen felül van ötlet arra, hogyan kell életet lehelni egy döglött Windows-ba? Induljunk ki abból, hogy nincs Windows telepítő médiám, van internetem és Linuxom. :)

Megoldás

Egyfelől itt, másfelől emígyen:

menuentry 'Windows 8.1' {
    insmod ntfs
    set root='hd0,msdos6'
    chainloader +1
}

Hozzászólások

Keresd meg a bootmgr-t és a boot könyvtárat, arra a partícióra tedd a boot flaget.
Ha nincs Windowsod, akkor picit macerás, de elvileg a Recoveryben van egy wim file, amit a wimboottal és a grub2-vel be lehet röccenteni, és akkor már csak egy Bootice kell, és lehet felrakni az NT6 MBR-t.

Code:

menuentry "WinreWIM" {
insmod ntfs
set root=(hd0,msdos1)
linux16 /wimboot
initrd16 newc:bcd:/Recovery/WindowsRE/BCD newc:boot.sdi:/Recovery/WindowsRE/boot.sdi newc:bootmgr:/bootmgr newc:boot.wim:/Recovery/WindowsRE/Winre.wim
}

Nyilván az elérési utakat a valós állapot szerint kell megadni.

Ott tartok olvasgatva az EFI-ről, hogy ez valami szörnyű és borzasztó dolog. Ezt debugolni, hogy miért nem indul, meg intuitív módon konfigurálni nagyjából lehetetlen.

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Az embernek a windoza kell, vagy az adatai? Döglött windowsba életet lehelni olyan, mint tengerimalacot állatorvoshoz hordani. (utóbbit a csajom miatt próbáltam már. :) ) Nem éri meg. Kell egy új.

jAzz

Legszívesebben feltolnék rá egy Fedorát, aztán probléma megoldva. De egyes adatokból arra következtetek, valamiféle számlázó vagy mifene is van a gépen, ami windows-os program. De majd megkérdem a gazditól, hogy mi legyen.

Szerk.: Nem volt boldog a gazdija. Az a gyanúm, egész életében csak Windows-t látott. Miért találnak meg engem ezek az arcok mindig? Én meg nem tudok rá nemet mondani. :( Kellett ez nekem?

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

"egész életében csak windowst látott..." aztán jött a W8, majd a W10, meg a telefonja, amin pont android van, de ez OK, mert az más. Ha mutatsz neki egy asztalt, amin van startmenü (w8-at látott már?) a internet (népies nevén gúgli) meg a Firefox ikonnal indul, akkor semmi gond, simán használja. De megemlíted neki hogy linux, aszt' lepörög előtte az egész élete.

Nem tudom, hogyan fog a Linuxszal megbékélni a gazdája. Sok múlik a hozzáálláson. Azt tapasztalom, hogy aki eleve negatívan áll hozzá, az abban a pillanatban, ahogy belefut egy problémába, a Linux hibájának tekinti azt, s észre sem veszi, Windows-t használva mennyi gondja lett volna addig.

Van olyan ismerősöm, aki nem használt Linuxot, de elege lett a Windows nyűgjeiből, megkért, hogy telepítsek egy Fedorát a gépére. Feltettem neki, azóta békében használja. Nem a problémát keresi, hanem a megoldást.

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Igen, erre írtam, hogy lepörög előttük az életük. Komolyan, mostanában már a hecc kedvéért szoktam javasolni, hogy a lassan nagykorú WXP helyett ugyan tegyenek már egy próbát a linuxszal. Hát, az arckifejezéseket elnézve azt is mondhatnám nekik, hogy akkor mostantól leprásokat kell ápolniuk Kalkuttában...
Közben ugyanezek az emberek elviselik, (szerk: valójában kurvaanyáznak arra is, de beleszoknak) amikor hasba akasztják őket a W8 metrójával, vagy a w10-el. Merthogy az víndóz. És ugyanezek az emberek zökkenő nélkül használnak pl. egy lubuntuval telepített gépet, mert van rajta felismerhető startmenü, meg asztali ikonok. Kis túlzással egy lanka.bmp-vel hetekig észre se vennék, hogy mi történt.
Jó, a fájlkezelés más.

Most úgy érzem, ideje lenne valami mással foglalkozni. Mondjuk művészettel, vagy elmenni kamionsofőrnek, esetleg targoncásnak, netán szobafestőnek, de talán a pék mesterség is szóba jöhet. Mindegy, csak ne lássak számítógépet.

Izé, azt akartam mondani, hogy EFI-s gépen GPT-ről CSM-en keresztül BIOS-style boot-ot csinálni bizony igen nagy autofelláció. Odáig még nem jutottam el, hogy a belső HDD-ről bármit is boot-oljak.

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Igaz. Fentitől eltekintve, "parádés" négyzetmétert lehet ezen a módon "beteríteni", "kilakkozni" naponta. (Gondolom, ehhez kapcsolódik a piac munka-értékítélete is.)

Egyébként érdekes, és a világunkra nagyon jellemző, hogy, ha mögötte/fölötte ott marad "hegyekben" a galambszar, az senkit nem hoz lázba... De haladni kell...,

Bocs az abszolút off-ért.

Nem olyan fából faragtak, aki könnyen feladja. Fedorát már boot-ol a gép, mesélek a kalandomról. :)

Úgy döntöttem, megválok a GPT-től, legyen a hagyományos MBR+EBR metódus. A 3 windows-os filerendszer nem mozdulhat, a frissen telepített, ám nem induló Fedora viszont üsse kavics, csak kb. 7 GB, az igen.

Először is konvertáltam GPT-ről MBR+EBR-re. Értelemszerűen ezt nem lehet egy az egyben megcsinálni, hiszen az EBR egy láncolt lista, kell neki hely a filerendszerek között, ami most nincs. Úgy döntöttem, a Windows első két - talán boot és rescue - filerendszere legyen az MBR-be bejegyezve, mint sda1, sda2. A nagy, kb. 200 GB-os ntfs, amin a Windows van, legyen extended-en logikai drive, tehát EBR bejegyzés, sda6. Az sda5 egy kis 128 MB-os terület, fene tudja, miért hagyta ott a Windows ezt a lyukat, megformáztam ext4-re, senkinek sem kell. Az sda3-as bejegyzés nem létezik, az sda4 pedig az extended konténer.

Utána csináltam egy sda7-et, rátettem a boot flag-et, ez lett a /boot. Lett egy 8.1 GB-os sda8, ez a swap. Aztán egy sda9, ezen egy LVM-et hoztam létre, benne két filerendszer, az egyik a 30 GB-os rootfs, a másik a maradék összes /home.

Mivel eldöntöttem, nincs az az Isten, hogy újra telepítsem a Fedorát, a telepített de nem boot-oló példányt egy rsync -avHASX forrás cél paranccsal az ext4-et tartalmazó pendrive-omra másoltam. Mindent, a /, /boot, /home-ot. Miután kialakítottam az új disk layout-ot, ugyanígy, file-osan ment minden vissza.

Ezt követően Fedora live rescue boot, felcsatoltam, amit kell, a /proc, /sys, /run, /dev, /tmp-re bind mount, majd chroot. Utána a Grub2-t telepítettem sda-ba. Lekérdeztem a filerendszer uuid-okat, s javítottam az fstab-ot. Generáltattam egy új grub.cfg-t.

Reboot, és izgultam. Jó hír magamnak, hogy elkezdett boot-olni, tehát az EFI CSM modulja működött, rossz hír, hogy nem boot-olt be. Mondjuk elsőre elégedett voltam az eredménnyel. Generáltam dracut-tal új initramfs-t, meg kijavítottam egy copy-paste-ből származó elírást az fstab-ban. :)

Reboot, de még mindig nem indul el. Sokat várva kaptam egy dracut shellt, meg hibaüzenetet. Úgy tűnik, Fedorában a kötet név be van drótozva, mindenesetre nem stimmelt, nem találta meg a rootfs-t. Mondjuk a /home-ot sem, de az nem olyan fontos, azt meg lehet javítani a már futó oprendszer alól. Megint live boot, vgrename, reboot, és elindult hiba nélkül. :) Na jó, azért lvchange -ay izé bizé is volt előbb.

Mondjuk a partícionálásban külön öröm, hogy az LBA szektorcímeket úgy kellett megadnom, hogy a kezdeti értékre az LBA mod 8 = 0 teljesüljön, mert ez a HDD 4 kiB-os fizikai, és 0.5 kiB-os logikai szektorokkal rendelkezik.

A Windows 8.1 is elkezdett elindulni meglepő módon a Grub által, de csak pörögnek azok a pöttyök, és semmi. Gyors leállítás volt utoljára, így az ntfs-t csak read only mount-olom Linux alól.

Itt tartok most. Megy a kis dög! :)

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Az a legdurvább, hogy így, kiherélt EFI-vel - a kompatibilitási CSM modulon keresztül -, GPT helyett MBR+EBR-rel, a Windows logikai drive-ra téve Grub alól beboot-olt! :) Igaz, nem a Grub automatikusan írt bejegyzése alapján, hanem intuitív módon írtam egy egyszerű menuentry-t, az meg berántotta a Windows-t. A Fedora is ott van mellette. Ez épp most nem rég sikerült, utána a Windows-nak mondtam, álljon le, kijelzőt kikapcsolta, HDD kerregett, de nem állt még le. Nem merem kikapcsolni, mert lehet, hogy épp most kaparja össze romjaiból és journal-ból az ntfs-t, egyelőre hagyom. Csak idegtépő, hogy nem tudom, mi van, mert nincs semmi visszajelzés.

A Fedorával meg az a bajom, hogy - szerintem - az intel i915-ös VGA driver bugos, s néha spontán csonttá fagy. Ez biztos, hogy nem a „szokatlan” telepítés miatt van, mert van nálam egy másik hardware, azt normálisan telepítettem, s azon is előfordul. Abban is i915 kell a VGA-hoz.

Olyan daemon-t is írtam, amelynek a dolga, hogy ha megdöglene a compiz vagy az emerald dekorátor, akkor kilövi ezen process-ek maradékát, majd újraindítja a window manager-t. Remekül működik, teszteltem. :) Annyi gány még van benne, hogy a :0-ra indítja ezeket az éppen bejelentkezett felhasználóval. Jó volna megállapítani, hogy több futó Xorg esetén melyik az, amelyik épp a fizikai képernyőhöz csatlakozik.

Szerk. 1: A HDD nagon kerreg, kijelző háttér világítás kikapcsolva. Gondolom, takarékoskodik a villannyal. Ha a Windows kitalálja, hogy visszacsinálja az EFI boot-ot, legyakja a Fedorát, akkor tökön szúrom magam. Bízom benne, hogy a partíciókhoz nem nyúl, csak a filerendszerén belül matat. Azt teheti, rakja rendbe, azzal semmi bajom.

Szerk. 2: Félek. Még mindig csinál valamit, immáron másfél órája. Nem fagyott meg, a HDD seek-elését hallom. Nagyon remélem, a Windows csak a filerendszeren belül tesz-vesz. Nagyon sok munkám van benne, ha tönkreteszi... á, inkább nem folytatom az aggódást. Meglátom, mi lesz belőle.

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Nyertem! :)

Dual boot-os lett a gép, megy a Fedora és a Grub indítja a Windows 8.1-et is. Még, hogy GPT, meg EFI... Hülyeség. Na jó, nyilván nem BIOS, EFI ez továbbra is, csak kompatibilitási módban (CSM). Szóval szépen átalakítottam GPT-ről MBR+EBR-re, átalakítottam a disk layout-ot, mindezt éles adatokon, mentés nélkül. Nem igazán volt hova menteni, meg az sok idő lett volna. Még a csavarokat kell visszatennem a gépbe.

Béke honol a tájon. :)

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Köszönöm! Számomra is érdekes volt, ezekből a szívásokból mindig lehet tanulni. Inkább érdekes, mint gazdaságos. Nem lehet megkérni az árát, a felhasználó nem érzékeli, hogy mekkora küzdelem ez, ő azt látja, régen jó volt a gépe, utána nem, elhozta, biztos átbillentettem két apró beállítást, és most megint megy.

Olyan ez, mint a programozás. Ott is csak gombokat kell nyomogatni, azt pedig egy majom is tud. Na ja, csak nem mindegy, milyen sorrendben! :D

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Sajnos ennyire nem jó a helyzet. Az i915 döglik. Néztem neten, nem én vagyok ilyen szerencsétlen, hanem ez ilyen. Mondtam nekik, használják a Windows-t, aztán ha kitalálok valamit, szólok.

Most van nálam egy Acer Aspire is, abban van egy dedikált nVidia is. Azon mesterkedem, hogy a belső kijelzőhöz használja az nVidiát nouveau-val. (Tudom, helytelen kötőjellel írni, de így szeretem.)

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE