Mida teha kui linuxi partitsioon jääb väljapoole BIOS'e poolt toetatud ruumi

Allikas: Pingviini viki


Milleks see on vajalik?

Paljud kasutajad kasutavat linuxit dual-boodis MS Windowsiga, kusjuures Linuxi paritsioon on tehtud ketta lõppu. Nüüd tulebki mängu Logical Block Addressing ehk rohkem tuntud lühendi LBA all. Teatavasti toetavad vanemad emaplaadid (me ei räägi muuseumi eksoponaatidest) LBA28-t mis suudab adresseerida 137,4 GB ja uuemad LBA48't, millel piiriks 144,000,000 GB. Lisaks on tänapäeval üpris tavaliseks saanud kõvakettad mille suurused ületavad 160 GB. Kui nüüd sellisele ketta lõppu on uuemas arvutis paigaldatud linux ja tekib olukord kus sama ketas ollakse sunnitud paigaldama arvutisse mille emaplaat tunneb ainult 28-bitist LBA'd, siis pole enam võimalik linuxit käivitada. Ilmselt ei käivitu ka ketta esimestel paritsioonidel asuv MS Windows, kuna Grub pole võimeline lugema seadistusfaile.

Selliseks olukorraks on olemas väike workaround. See on kasulik ainult sel juhul kui tekkinud olukord on ajutine. Kui kavatsetakse pikemas perspektiivis sellist emaplaadi/kõvaketta kooslust kasutama jääda, siis on kasulikum ketta algusosasse teha Linuxile "boot" partitsioon.

Mida selleks vaja?

1. Linuxi live-cd'd

2. andmekandjat mis mahutab ~10MB.

Kuidas

Käivitad linuxi live-cd.

chroot'id linuxi juurpartitsioonile:

chroot /koht/kuhu/linuxii/juurikas/ühendatud 

Liigud kataloogi tmp:

cd /tmp 

Loo alamkataloogid /tmp/iso ja /tmp/iso/boot/grub:

mkdir -p iso iso/boot/grub 

Kopeeri /boot kataloogisisu asukohta /tmp/iso/boot:

cp -rv /boot/*  /tmp/iso/boot 

Kopeeri fail stage2_eltorito kausta /tmp/iso/boot/grub:

cp /lib/grub/i386-pc/stage2_eltorito iso/boot/grub 

Kui tegemist on mitte-debianil põhineva linuxiga ei pruugi faili aukoht õige olla.

Ava Grubi seadistusfail oma lemmik tekstiredaktoriga:

nano iso/boot/grub/menu.lst 

mille sisu muuda vastavalt oma masina konfiguratsioonile: title Päästame pingviini

root (cd) 
kernel (cd)/boot/vmlinuz-2.6.15-8-386 root=/dev/hda3 ro quiet 
initrd (cd)/boot/initrd.img-2.6.15-8-386 
boot 

Loo buutiva CD iso tõmmis:

mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot \--boot-load-size 4 -boot-info-table -o grub.iso iso 

Seejärel kopeeri saadud tõmmis kohta kust sa saad selle korrektselt cd-plaadile kõrvetada(näit mälupulk, FAT32 partitsioon vms.

Ja saad jälle kasutada nii Linuxit kui ka Windowsit!


Edasised küsimused ja kommentaarid palun Pingviini foorumisse.