Instalace Debian Sarge z disku s GRUB 2

Nezařazené No Comments »

Poměrně často rozjíždím nějaké vzdálené servery v serverovnách většinou někde za mořem a zkušenosti se dost různí. Jelikož na většině serverů používám LVM a mám v tom rád jakýs takýs pořádek, jsem mnohem raději, když si můžu server nainstalovat sám.

Bohužel běžná je situace, kdy objednáte server s přístupem přes KVM, dáte požadavek na rozjetí instalace konkrétní verze instalace, ale hlavně na to, aby vás k té instalaci v průběhu pustili… a místo toho co chcete nakonec obdržíte nadšený mail z housingu, že jsou šikovní a už to mají.

Možnosti se pak různí. Buď prostě pokračujete s tím co máte, nebo máte šikovné KVM, které umí nahrát remote image a přes něj si na dálku připojíte nějaké malé iso. A nebo pouze nějaké hloupé KVM či jinou remote konzoli a říkáte si co teď s tím. Šikovným řešením je rozjet instalaci přímo z disku přes grub.

Příprava stroje

Nejdříve je potřeba mít nějakou partition, na kterou si data nahrajete a ta musí být pokud možno odlišná od té s přeinstalovávaným systémem. Pokud totiž vše dáte na stejnou partition, budete mít dost složitou instalaci při změně partitions.

Jednoduchým řešením je využití swapu. Dejme tomu, že je na /dev/sda1

swapoff /dev/sda1
mkfs.ext4 /dev/sda1
mkdir /newinstall
mount /dev/sda1 /newinstall

Do adresáře nyní musíte stáhnout instalační obrazy pro grub (označeno jako hd-media) a samozřejmě i nějaký cd image, např. netinst.

cd /newinstall
wget http://ftp.cz.debian.org/debian/dists/squeeze/main/installer-amd64/current/images/hd-media/initrd.gz
wget http://ftp.cz.debian.org/debian/dists/squeeze/main/installer-amd64/current/images/hd-media/vmlinuz
wget http://cdimage.debian.org/debian-cd/6.0.3/amd64/iso-cd/debian-6.0.3-amd64-netinst.iso

Následně si otevřete /boot/grub/grub.cfg a najděte, kde v něm jsou položky menuentry. Jako první přidejte

menuentry 'install' --class debian --class gnu-linux --class gnu --class os {
        insmod part_gpt
        insmod ext2
        set root='(hd0,gpt1)'
        linux   /vmlinuz
        initrd  /initrd.gz
}

Pozor, tady se může váš zápis samozřejmě značně lišit. Zaprvé nemusíte používat gpt oddíly, zadruhé můžete mít jiný oddíl, takže dejte pozor na správné nastavení typu oddílu a správné nastavení root (běžně je např. (hd0,0) a spol). Pokud máte přístup alespoň přes konzoli, dá se situace případně později napravit ruční editací v grubu.

Končíme

No a to je v podstatě vše. Stačí restartovat, stroj by měl naskočit rovnou do instalace a vy můžete pokračovat tak, jak jste zvyklí. Jen při přerozdělování disku nezapomeňte, že nesmíte smazat oddíl, na kterém máte stažené soubory.

A na závěr upozornění, které mělo být na začátku. Píšu to zpaměti a je možné, že je pár chybek, kontrolujte proto co děláte a snad to dopadne.

Upgrade BIOSu s FreeDOS

Nezařazené No Comments »

Našel jsem konečně jednoduchý návod, jak si rychle nachystat bootovací CD z Linuxu s vlastními soubory, třeba právě BIOSem. Bootovací disketa je už bohužel minimálně u Supermicra minulostí, jejich BIOS má přes 4MB.

Takže jdeme na to. Opět to vezmu stručně, mělo by stačit copy & paste. V /tmp oddílu je potřeba mít alespoň 30 až 40MB volného místa :)

Nejdříve si připravíme adresáře pro práci

mkdir /tmp/freedos/
cd /tmp/freedos
mkdir iso biosiso

Stáhneme si poslední mini iso pro FreeDOS.

wget http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/distributions/1.0/fdbasecd.iso

Připojíme iso do připraveného adresáře a zkopírujeme si všechny soubory

mount -o loop fdbasecd.iso iso
cp -a iso/* biosiso/
cd biosiso

Teď přichází „nejtěžší“ část. Upravit vše tak, aby se namísto instalace spustil FreeDOS přímo nad naším CD a daty. Je potřeba editovat jeden soubor. Buď to můžete ručně přidat za řádek set fdosroot= nový řádek goto end nebo použijte následující sed, který by to snad měl zvládnout. Je ovšem možnost, že s novou verzí freedosu by to neprošlo, proto ponechávám info o ruční editaci.

sed -r "s/^(set fdosroot=.*)$/\1\n\ngoto end/" setup.bat

Tím jsme skoro hotovi. Stačí nakopírovat vlastní soubory, pokud budu mít např. nový bios v souboru /tmp/bios123.zip, tak následujícím příkazem jej rozbalíme do nového adresáře bios, který bude po bootu na CD.

unzip /tmp/bios123.zip -d bios

Nakonec je potřeba z našeho dočasného adresáře vytvořit funkční ISO soubor

mkisofs -o ../freedos_biosupdate.iso -q -l -N \
-boot-info-table -iso-level 4 -no-emul-boot \
-b isolinux/isolinux.bin -publisher "FreeDOS - www.freedos.org" \
-A "FreeDOS with bios 123" -V FDOS_SUPBIOS -v .

A máte hotovo. ISO si vypalte, nabootujte na počítači, kde je potřeba. Na úvodní obrazovce zvolte 1 pro FreeDOS a následně vyberte, že chcete provést instalaci. Dále je to již jen na vás.

2 monitory, projektor, TwinView a Xinerama

Nezařazené No Comments »

Nedávno jsem si domů pořídil druhé LCD a začal si užívat pohodlí, které přináší. Problém nastal hned ve chvíli, kdy jsem se chtěl koukat na film – grafika má pouze dva DVI výstupy a tak nastalo odsouvání monitoru, přehazování kabelů a přepínání rozlišení pokaždé, když jsem chtěl na něco mkrnout.

Tento článek není dokončený, průběžně budu upravovat a doplňovat informace.

Přestalo mě to bavit poměrně rychle a začaly padat řešení: koupit kartu s více výstupy, najít nějaký přepínač nebo přikoupit další slabší kartu jen na projektor. První řešení vychází dost draze, zvlášť když chcete na počítači i hrát, u druhého jsem nevěřil tomu, že nezpůsobí další problémy a tak přišel na řadu nákup další karty…

Výběr karty

Výběr karty byl poměrně jednoduchý. X.Org sice zvládají bez problémů více karet od různých výrobců, ale proč mít zbytečně natáhnutých více ovladačů a řešit další probémy. K stávající pasivní GeForce 9600 GT se tak přidala další pasivka GeForce 8400 GS.

Co se týče výkonu, stačila by mi i mnohem slabší karta, jenže starší karty již nejsou podporovány v novějších ovladačích. Pokud budete něco podobného řešit, určitě si dejte pozor na místo v bedně, u mě to vyšlo dost natěsno, 9600 GT totiž zabírá dva sloty.

Na co myslet při výběru karty

  • zvážit, jestli radši nebudete přepínat kabely :)
  • zjistit, jestli máte v počítači další slot na grafiku, ne každá bedna má dva PCI Express nebo AGP sloty. Vždy můžete ale pořídit grafickou kartu do PCI. Bohužel většinou vychází podstatně dráž.
  • zajistit si správné chlazení

Nastavení v X.Org

A tady přišel kámen úrazu. Se svou neoblomnou důvěrou v to, že v linuxu je možné vše jsem dopředu příliš materiálů nečetl a skončil s dosti rozporuplnými dojmy. TwinView totiž umí jen dva monitory a třetí musíte přidat jako samostatnou Screen a to ještě není všechno. Jakmile jsem přidal další screen TwinView přestalo TwinViewovat a já skončil u čtení diskuzí a experimentování.

Pokud jsem správně pochopil, tak vše funguje tak, že aplikace dostávají přes knihovnu Xineramy informace o tom, jaké rozlišení máte na které obrazovce a proto se vám správně maximalizují okna. TwinView jako takové využívá pouze jednu screen pro dva monitory, ale přes své vlastní volání aplikacím podstrkuje rozložení, které chcete.

Celý problém je v tom, že aktivuje-li se v X.Org Xinerama, TwinView přestane pro X poskytovat informace o rozložení monitorů a obraz se roztáhne přes oba monitory, stejně tak se maximalizují okna a vše ostatní. V dokumentaci se doporučuje využít volby TwinViewXineramaInfoOrderOverride, což u mě vůbec nezabralo.

Option         "TwinViewXineramaInfoOrderOverride" "1680x1050+0+0, 1680x1050+1680+0, 1024x768+3360+0"

fakexinerama

Nebudu vás napínat, doteď jsem problém plně nevyřešil, ale nejrychlejším řešením je projektík fakexinerama, který upraví knihovnu xineramy pro zjištění informací o rozložení monitorů z vašeho konfiguračního souboru. Ano, je to dosti neflexibilní a má to neodstatky, ale aspoň nějak to funguje.

V knihovně jsem si upravil cesty ke konfiguráku na globální /etc/fakexinerama, nastavil ho, zkompiloval knihovnu, restartoval X a vše relativně jede.

$ cat /etc/fakexinerama
3
0 0 1680 1050
1680 0 1680 1050
3360 0 1024 768

Zbývající problémy

  • na projektoru je stejné virtuální rozlišení jako na prvních dvou monitorech, tzn. konfigurační část fakexinerama zdatně ignoruje
  • po aktualizaci mplayer na poslední SVN se bohužel video v celoobrazovkovém režimu roztahuje přes virtuální plochu stejně jako okna ve window manageru
  • na projektor nelze přetahovat okna (nepoužívá se přímo Xinerama), myš a klávesnice se ale sdílí
  • bylo by pěkné moci nějak deaktivovat kartu pokud se nepoužívá (úspora energie tepla a podobně)

© 2003-2009 Kepi.cz | Webhosting | Powered by WordPress