Portál AbcLinuxu, 25. dubna 2024 06:34

Instalační bloatpost

2.1.2013 15:30 | Přečteno: 1413× | poslední úprava: 19.1.2013 01:14

Protože jsem u sebe nedávno přeinstalovával, co jsem potkal, přišlo mi jako ne zas tak špatný nápad sepsat všechny ty hlouposti, co jsem při tom prováděl. Náhodní googlící nechť si z toho vytáhnou, co potřebují.

Stolní PC

Intel Core i5, HD Graphics 3000, ASUS P8Z77-M

Na hlavním SSD disku mám tři oddíly: /boot, LVM pod LUKS se swapem a rootem a ztruecryptované Windows 7. Na druhém disku mám další LVM pod LUKS s homem a druhý ztruecryptovaný oddíl pro Windows. Všechno to šifrování funguje docela pěkně a ani to nebylo pracné nastavit. Jen jsem přistoupil k menší prasárně s GRUB 2, viz dále.

(Původně jsem doufal, že bych mohl využít šifrovací schopnosti Sandforce SSD řadiče, ale BIOS od základní desky neumí vůbec používat ATA password. FFS. Nicméně výkonu mám na rozdávání a takhle nemusím alespoň to heslo při bootu zadávat dvakrát.)

První jsem instaloval samozřejmě Windows. Protože nemám CD mechaniku, musel jsem ISO pomocí nástroje od Microsoftu nahodit na USB flashku. Nevím, jestli existuje nějaký jednoduchý způsob, jak to provést z Linuxu. Rád bych poznamenal, že příliš zastrčených flashek zaráz může způsobit nechuť instalátoru použít diskový oddíl a vrátí nicneříkající chybovou hlášku. Zbytečného diskového oddílu se zbavíte tím, že pokud se vám tam objeví, smažete ten svůj původní oddíl a onen System Reserved rozšíříte na požadovanou velikost.

Další přišlo na řadu Ubuntu. Instalační USB médium lze podobně stvořit nástrojem Startup Disk Creator přítomným v každé instalaci Ubuntu. Nevím, jestli to jde provést nějak jednoduše z Windows. Pokud se vám stejně jako mně pokaždé v závěru objeví hláška o systémovém problému, ignorujte ji. Tyhle dialogy mi vyskakují neustále a přitom všechno funguje.

Instalace Ubuntu na LUKS/LVM

Následující text je spíše orientačního charakteru, neboť už si to přesně nepamatuju.

Silně doporučuju nechat instalační médium normálně naběhnout do GUI, zvolit Try Ubuntu a instalátor případně spustit odtud, pokud na to máte dost paměti. Pokud ne, neinstalujte na ten šrot Ubuntu.

V první řadě je třeba nakonfigurovat LUKS a LVM. Instalátor je na to moc hloupý, takže si přes g/parted vytvořte nějaké ty oddíly, spusťte terminál a půjdeme to trochu předkonfigurovat.

$ sudo cryptsetup luksFormat -c aes-xts-plain64 -s 512 -h sha512 <oddíl>
$ sudo luksOpen <oddíl> lvm-crypt
$ sudo pvcreate /dev/mapper/lvm-crypt
$ sudo vgcreate vg0 /dev/mapper/lvm-crypt
$ sudo lvcreate -n swap -L <velikost RAM> vg0
$ sudo lvcreate -n root -l 100%FREE vg0

Příkazy si případně upravte podle vlastního uvážení. Podobně můžete přidat LUKS/LVM oddíl i na některý další disk. Jakmile toto provedete, můžete pokračovat normálně v instalaci s použitím oddílů z LVM. Na konci si raději ověřte, že v /etc/crypttab na cílovém disku naleznete něco jako

lvm-crypt UUID=<UUID oddílu s LUKS> none luks

protože jinak vám to nenabootuje.

Truecrypt system encryption

Truecrypt bootloader dělá trochu potíže, protože se chce nainstalovat do MBR a novému GRUB 2 se instalace do oddílu už moc nelíbí. Každopádně jde k tomu překecat a také to bude fungovat. (Jen se to rozbije, když se pohne se souborem core.img v rámci diskového oddílu; k tomu je ten immutable flag.)

$ sudo chattr -i /boot/grub/i386-pc/core.img
$ sudo grub-install --target=i386-pc --recheck --force <oddíl s /boot>
$ sudo chattr +i /boot/grub/i386-pc/core.img

Nahození Truecrypt System Encryption je triviální a nebudu ho tu rozepisovat. Stejně jako funguje automatické připojení dalších TC jednotek s použitím toho samého klíče, stačí ty jednotky přidat do nějakého seznamu. Výsledek by měl být takový, že nejdříve se při bootu načte TC pre-boot authentication bootloader, který po vás bude chtít heslo k Windows. Když se zrovna budete cítit o něco více linuxově, stačí zmáčknout klávesu Escape a vjedete do GRUBu, odkud si můžete klasicky vybrat Ubuntu, které se vás v init ramdisku zeptá na heslo k oddílům v crypttab.

Ještě bych dodal, že s hibernací na LUKS také není žádný problém.

Hardware

Všechno mi nádherně funguje, jen k tomu ovládání otáček u větráčků u desky ASUS P8Z77-M a získání nějakých těch pár údajů navíc je třeba balíček nct6775-dkms. V dalším vydání snad už bude součástí oficiálních repozitářů.

Na integrované grafice Intel HD 3000 běží Nexuiz v 1920x1080 plynule víceméně jen na nejnižší detaily, ale nestěžuju si, stejně hry v podstatě nehraju.

Netbook

Acer Aspire One 722, AMD C-60 APU, Radeon HD 6290

Tady jsem postupoval obdobně, jen jsem se z racionálních důvodů vyhnul šifrování, protože to už tak sotva belhá (ve srovnání s tím stolním PC, dobře se na to zvyká). Také jsem se rozhodl přiinstalovat Arch Linux.

Problém nastal, když mě napadlo chtít bootovat Arch Linux z toho totožného bootloaderu jako Ubuntu. Nádherně to nefunguje a generuje to totální pí-. Zkoušel jsem nechat ukládat kernel image a ramdisk na /boot z Ubuntu — chtělo to s nimi bootovat i to Ubuntu. Vrátil jsem ho zpátky na oddíl s Archem — chtělo to bootovat Arch s jádrem z Ubuntu a rootem odtamtéž. Nakonec jsem to vzdal, do /boot/defaults/grub strčil GRUB_DISABLE_OS_PROBER=true a do /etc/grub.d/40_custom přidal ty Windows a Arch ručně. Ničemu to nakonec neškodí:

#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry 'Windows 7' --class windows --class os {
	insmod part_msdos
	insmod ntfs
	set root='hd0,msdos2'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos2 --hint-efi=hd0,msdos2 --hint-baremetal=ahci0,msdos2  <UUID oddílu>
	else
	  search --no-floppy --fs-uuid --set=root  <UUID oddílu>
	fi
	chainloader +1
}

menuentry 'Arch Linux' --class gnu-linux --class gnu --class os {
	insmod part_msdos
	insmod ext2
	insmod lvm
	set root='lvm/vg0-arch'
	linux /boot/vmlinuz-linux root=/dev/mapper/vg0-arch resume=/dev/mapper/vg0-swap ro init=/usr/lib/systemd/systemd quiet $vt_handoff
	initrd /boot/initramfs-linux.img
}

menuentry 'Arch Linux Fallback' --class gnu-linux --class gnu --class os {
	insmod part_msdos
	insmod ext2
	insmod lvm
	set root='lvm/vg0-arch'
	linux /boot/vmlinuz-linux root=/dev/mapper/vg0-arch resume=/dev/mapper/vg0-swap ro init=/usr/lib/systemd/systemd $vt_handoff
	initrd /boot/initramfs-linux-fallback.img
}

Dodám přehled driverů, které u tohoto netbooku/s tímto APU fungují na 100 %, podle distribuce:

Pozor, před instalací fglrx proveďte pro jistotu sudo apt-get install linux-headers-generic, jinak se vám nezkompiluje kernel modul a naběhne vám to bez Unity (ale Ctrl+Alt+T pro spuštění terminálu funguje stále — sudo apt-get install linux-headers-generic && sudo dpkg-reconfigure fglrx[-updates]). Nutí mě to vzpomínat na doby, kdy jsem si vybíral mezi ndiswrapper, b43 a broadcom-wl. Šmejdy uzavřený.

Nastavení Windows 7

Windows jsou hlavně plné hnusných omalovánek.

Nastavení Ubuntu 12.10

Addendum: boot Windows z GRUBu přes Rescue Disk

Ohledně toho TrueCrypt bootloaderu, zjistil jsem, že je možné pro boot použít opravné ISO, které TrueCrypt vygeneruje při nastavování system encryption. Např. pomocí projektu grub2tc nebo s využitím memdisk loaderu z SYSLINUXu. V druhém případě je třeba do /boot/grub.d/40_custom vložit novou položku:

menuentry "TrueCrypt Rescue Disk" {
	linux16 /memdisk iso
	initrd16 "/TrueCrypt Rescue Disk.iso"
}

překopírovat do /boot i onen ISO soubor a provést:

$ sudo cp /usr/lib/syslinux/memdisk /boot
$ sudo update-grub2

Bohužel se zdá, že vstupní režim at_keyboard v GRUB2, který používám pro přenastavení layoutu, rozvrtává nějak klávesnici, takže s ní pak to TrueCrypt ISO nedovede pracovat.

       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

rADOn avatar 2.1.2013 15:59 rADOn | skóre: 44 | blog: bloK | Praha
Rozbalit Rozbalit vše ATA password
Odpovědět | Sbalit | Link | Blokovat | Admin
Muj notes ATA password umi, jak je to s realnou bezpecnosti? Nerad bych se dozvedel ze je na to nejaky proflakly univerzalni heslo vyrobce nebo tak neco.
"2^24 comments ought to be enough for anyone" -- CmdrTaco
2.1.2013 16:13 zxtlpn | skóre: 8 | blog: zxtlpn
Rozbalit Rozbalit vše Re: ATA password
Nejsem bezpečnostní expert, ale minimálně u toho Intel SSH, co mám, je řečeno, že má každej disk unikátní klíč, kterej se dá tim ATA heslem zabezpečit (a výsledkem nějaký tý kombinace by snad mělo bejt to, čím se v závěru šifrujou data na tom samotnym disku). A má to jít přes nějakej ten nástroj i zresetovat na něco jinýho. Google.
2.1.2013 16:13 zxtlpn | skóre: 8 | blog: zxtlpn
Rozbalit Rozbalit vše Re: ATA password
SSD, samozřejmě.
rADOn avatar 3.1.2013 08:51 rADOn | skóre: 44 | blog: bloK | Praha
Rozbalit Rozbalit vše Re: ATA password
Ze je tam jinej klic je celkem jasny a prave to me zneklidnuje. Vzhledem k tomu jak tenhle svet funguje se nakonec ukaze ze ten "tajny" klic neni zase tak moc tajny. Kdyz jsem ten notes poridil tak to byla relativne nova vec a moc se toho vygooglit nedalo, a co se dalo bylo (a bude i ted) zapleveleno "heslovanim" v biosu.

OTOH kdyby to nejaky vyrobce (teoreticky) dokazal nepodelat, bylo by to mnohem lepsi reseni nez sifrovani v softwaru.
"2^24 comments ought to be enough for anyone" -- CmdrTaco
xkucf03 avatar 3.1.2013 22:17 xkucf03 | skóre: 49 | blog: xkucf03
Rozbalit Rozbalit vše Re: ATA password
Údajně… jak už se několikrát ukázalo, těmhle uzavřeným řešením se nedá věřit.
Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
3.1.2013 15:31 henkye
Rozbalit Rozbalit vše Re: Instalační bloatpost
Odpovědět | Sbalit | Link | Blokovat | Admin
Nevím, jestli existuje nějaký jednoduchý způsob, jak to provést z Linuxu.
Naformátovat flešku NTFS, nastavit boot atribut a zkopírovat soubory z DVD. Teda flešky jsou na tohle dost náladový, ne jako u pevných disků. Dokonce jde instalovat ze stejného oddílu kam instaluješ windows.

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.