Jak nabootovat z nove Compact Flash (CF) karty

Uz skoro rok rok (zhruba od ledna 2009) jsem stastnym majitelem pocitace ALIX 2D2 (mam z neho domaci server). Bohuzel tato deska neumi bootovat z niceho jineho nez z CF (1, 2) karty. IDE konektor a 2 USB se daji pouzivat az po nabootovani. BIOS disk sice vidi – ale nebootuje z nej. 🙁

Hned po koupi desky jsem poridil CF kartu – 4GB Kingston stala 500Kc. Hlavni problem je, ze CF karty vydrzi jenom omezeny pocet zapisu. A kdyz myslim omezeny, tak myslim poradne omezeny. V serveru mam nainstalovany Debian na CF karte ( / ) a na disku data ( /home ). Uz v prubehu cervna se zacali vyskytovat ruzne nevysvetlitelne problemy. Vubec mne nenapadla souvislost s kartou. Zacatkem cervence se karta definitivne odebrala do kremikoveho nebe.

Protoze vim, ze za svoji blbost musi clovek zaplatit, koupil jsem si novou. Uplne stejnou, tedy zase 4GB Kingston. Jenze ona nebyla stejna!
Na te z unoru 2009 je napsano (c) 2003 Kingston a na te nove (z cervence 2009) je (c) 2008 Kingston. Pak mam jeste jednu kartu od Kingstonu (4GB ale rychle provedeni) taky z roku 2008. Karta z roku 2003 mela 3,52GB a ty nove maji 3,75GB.

Moje CF karty

Takze jsem prinesl kartu domu a chtel jsem ji rozdelit. Jenze ono to nejde!
Ve Windows XP a Vista vubec ne. V Linuxu ji sice rozdelim, ale po rebootu je tam zase jeden velky oddil, nekdy rozdeleni zustane, ale zase se nedaji jednotlive oddily pripojit ani naformatovat. Zkousel jsem vsechno mozne (vcetne prenulovani – dd if=/dev/zero of=/dev/cf_karta) a dospel jsem k zaveru, ze to proste nejde. Kdyby to nekoho zajimalo do detailu, ptal jsem se na to v diskuzi na abclinuxu. Nic podstatneho se tam podle mne nevyresilo. Nejpravdepodobnejsi se mi zda nazor, ze vyrobci karty "odflakuji" a vyrabi zmetky. Ty staci akorat blbym zarizenim, jako jsou fotaky.

 

Takze konecne k samotnemu reseni.

Rozhodl jsem se pouzit kartu pouze jako zavadec. Nejdriv jsem na ni chtel pripojit /boot, ale nakonec jsem zvolil jine (lepsi) reseni.
Na kartu jsem nainstaloval cely debian – to jedine se mi podarilo. Druhy debian je na disku. Debian na karte se nikdy nepouziva, pouze jeho grub nabootuje grub na disku a ten potom uz samotny system. Kazdy namitne, ze by na karte stacil maly oddil s grubem – stacil, ale kartu mi neslo rozdelit.
Debian jsem na kartu dostal pres kvm, vetsina lidi, kteri nemaji to stesti a jejich procesor kvm (virtualizaci) nepodporuje mohou pouzit qemu.
# kvm -hda /dev/cf_karta -cdrom /dev/cdrom
# qemu -hda /dev/cf_karta -cdrom /dev/cdrom

 Schema bootovani

Grub na karte

Muj /boot/grub/menu.lst na karte obsahuje nasledujici nastaveni:

default

serial         --unit=0 --speed=38400 --word=8 -parity=no --stop=1
terminal       --timeout=10 serial console

timeout        5
color          cyan/blue white/blue

title          Debian na disku
rootnoverify   (hd1,0)
chainloader    (hd1)+1

Grub tudiz nevi, ze bootuje jiny grub – pouzivam stejnou metodu, kterou se bootuje Windows z grubu.

 

Grub na disku

Grub v /boot/grub/menu.lst na disku obsahuje uz samotny zavadec pro debian. Tam je potreba dat pozor zvlaste na default kernel options a default grub root device.

...

## ## Start Default Options ##
## default kernel options
## default kernel options for automagic boot options
## If you want special options for specific kernels use kopt_x_y_z
## where x.y.z is kernel version. Minor versions can be omitted.
## e.g. kopt=root=/dev/hda1 ro
##      kopt_2_6_8=root=/dev/hdc1 ro
##      kopt_2_6_8_2_686=root=/dev/hdc2 ro
# kopt=root=/dev/hdb1 ro console=tty0 console=ttyS0,38400n8

## default grub root device
## e.g. groot=(hd0,0)
# groot=(hd1,0)
...

Protoze jsem debian na disk instaloval v jinem PC, musel jsem nastavit kopt=root=/dev/hdb1 a groot=(hd1,0). Jinak by Debian pri aktualizaci jadra spatne nastavil zavadec – u jednotlivych zaznamu by bylo chybne hda misto hdb:

title    Debian GNU/Linux, kernel 2.6.26-2-686
root     (hd1,0)
kernel   /boot/vmlinuz-2.6.26-2-686 root=/dev/hdb1 ro console=tty0 console=ttyS0,38400n8 
initrd   /boot/initrd.img-2.6.26-2-686

Nedavno jsem koupil v Kauflandu 512MB FLEXARET CF kartu a ………. prekvapive taky nefunguje. Jeste ze stala jen 85Kc.


Vim, ze text nad carou je velmi nesouvisly a nepochopitelny – neni taky divu kdyz jsem ho psal ve dve rano.

Shrnuti:

  1. CF karty vydrzi strasne malo zapisu. Stare (<128MB) 100 000 nove (u velkych karet) pak jenom 10 000. Opravdu jsem se nesplet v poctu nul, cim novejsi karta, tim vetsi smejd. Na webu PC Engines si to muzete precist.
  2. Pokud mate starsi CF kartu, ktera funguje, opatrujte ji jako oko v hlave.
  3. U nove karty se da resit bootovani tim, ze na karte je jenom grub, ktery dal bootuje jiny zavadec na jinem mediu. /boot taky na kartu nepripojujte – v pripade novych jader by se na kartu stejne zapisovalo.

1 komentář u „Jak nabootovat z nove Compact Flash (CF) karty

  1. Anonym
    Snazim se dle tveho reseni to provest na Voyage, ale nedari se.
    S linuxem teprve zacinam a tahle masinka se mi dostala do ruk nahodou.
    Nemas radu?

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *