V pátek 28. srpna se v Praze uskuteční již osmý Mobile Linux Hackday. Jako obvykle se potkáme v pražské pobočce SUSE v Karlíně na Křižíkově, takže kromě mobilního Linuxu je to tentokrát i příležitost přijít se podívat na nově zrekonstruované kanceláře. Začínáme v 10:00, ale dorazit můžete samozřejmě kdykoliv v průběhu dne. Setkáním vás provede David Heidelberg, vývojář GPU ovladačů v Mesa 3D a jeden z hlavních lidí české komunity kolem … více »
Představen byl Raspberry Pi Compute Module 5 Programming Jig. Jedná se o zařízení umožňující připravit Compute Module 5 do plně funkčního stavu bez nutnosti použití dalších vstupně / výstupních desek. Podporuje automatizaci pomocí nástroje rpi-sb-provisioner. Podrobnosti v dokumentaci.
Hackeři ve Francii ukradli data více než půl milionu daňových poplatníků. Je to jeden z největších hackerských útoků v dějinách země. O útoku z konce června informovala až teď daňová správa. Teprve od pondělí dotčeným občanům zasílá e-maily s instrukcemi, jak postupovat dál. Hackeři se sice nedostanou k penězům dotyčných, hrozí ale věrohodné podvody. Hackeři získali třeba celá jména, údaje o rodinných příslušnících nebo také údaje o
… více »Společnost Framework představila nový Framework Laptop 12 s Intel Core Series 3, Thunderbolt 4, Wi-Fi 7, volitelnou čtečkou otisků prstů a podsvícenou klávesnicí s open-source firmwarem ZMK. Objednat lze s předinstalovanou Fedorou 44 KDE Plasma.
Byl vydán Mozilla Firefox 154.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 154 bude brzy k dispozici také na Flathubu a Snapcraftu.
Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 168 (pdf).
Open-source citační manažer Zotero (Wikipedie, GitHub) byl vydán v nové major verzi 10. Přehled novinek v příspěvku na blogu.
Interaktivní editor binárních dat GNU poke byl vydán ve verzi 5.0 (seznam změn).
Byla vydána verze 0.85 telnet a ssh klienta PuTTY (Wikipedie). Řešeno je 5 zranitelností.
Byly publikovány novinky z vývoje GIMPu. Pracuje se na novém formátu souborů. Stávající binární XCF bude nahrazen "zazipovaným XML". XCF zůstane plně podporován pouze pro načítání starých souborů.
Upozornění: pokud čemukoli z následujícího návodu nerozumíte, nepouštějte se do instalace, riskujete tak trvalé a nenávratné poškození systému a zdravého rozumu ;). Instalace popisuje situaci, kdy z Arch Linuxu architektury x86_64 instalujeme i686, ale lze ji použít i v případě instalace stejné architektury. Směr i686 -> x86_64 nelze.
Nejprve si připravíme oddíly na flashdisku, třeba pomocí fdisk. Předpokládejme, že flashdisk je v systému jako blokové zařízení sdb. Rozdělení vezměte pěkně od podlahy vytvořením nové tabulky rozdělení, protože na flashdiscích bývají pochybné a následně by jste mohli mít problém s instalací zavaděče. Instalace základu systému zabere 650 MB včetně balíčků v cahce.
# fdisk /dev/sdb
Protože v mém případě nebylo moc co vymýšlet (co rozdělovat na 4 GB), vytvořil jsem jeden velký oddíl, vzhledem k předpokládanému použití (záchranná instalace) se to jeví jako nejlepší varianta. Pokud ale máte větší disk, nemusí ho celý schramstnout instalace Archu, zbytek může být naformátovaný na vfat a používán k přenášení dat. Na vyhrazeném oddílu vytvořit souborový systém, třeba prachsprostou EXT3.
# mkfs.ext3 /dev/sdb1
Dalším krokem je připojení disku. V dalším postupu se předpokládá, že disk je připojen do adresáře /mnt, volba noatime způsobí, že se u souboru nezapisuje čas posledního přístupu, takže by měla být práce trochu rychlejší. Pokud jste se rozhodli pro bohatější rozdělení disků, vytvořte v adresáři mnt patřičné podadresáře a připojte požadované oddíly.
# mount -o noatime /dev/sdb1 /mnt/
Aby vůbec šel instalovat systém pro jinou architekturu, budeme potřebovat nějaké konfigurační soubory, ty si zkopírujeme z existující instalace Archu.
# cp --parents /etc/pacman.{conf,d/mirrorlist} /mnt/
Pokud budete instalovat stejnou architekturu jako máte v existující instalaci, můžete přeskočit následující příkaz. Ten zamění architekturu stahovaných balíčků.
# sed -i -e "s|x86_64|i686|g" /mnt/etc/pacman.d/mirrorlist
Aby se použil správný soubor mirrorlist je třeba ještě upravit konfigurační soubor pacmana. Pokud napříkad používáte repositář testing a v instalaci na flash disku jej nechcete, upravte konfiguraci v /mnt/etc/pacman.conf
# sed -i -e "s|/etc/|/mnt/etc/|g" /mnt/etc/pacman.conf
Ještě vytvoříme adresář pro databázi pacmana.
# mkdir -p /mnt/var/lib/pacman
Připravíme si zbytek chroot prostředí:
# mkdir /mnt/proc # mkdir /mnt/dev # mkdir /mnt/sys # mount -t proc none /mnt/proc # mount -o bind /dev /mnt/dev # mount -o bind /sys /mnt/sys
Konečně můžeme spustit instalaci základu systému. Použijeme k tomu pacmana z existujícího systému, jen mu vnutíme jinou cestu ke kořenovému adresáři, jinou konfiguraci a jinou cache - pokud instalujete stejnou architekturu, můžete přiřazením adresáře cache z existujícího systému ušetřit stahování balíčků. Přepínač -f je nutný, jinak bude pacman prskat, že již máme soubory s jeho konfigurací, pozor při instalaci se tyto soubory přepíší a je potřeba je upravit, ale o tom až dále. Zatím nebudeme instalovat jádro, pacman se bude ptát na potvrzení instalace balíčku kernel26, pokud se umáčknete nevadí, ale instalace bude trvat trochu déle.
# pacman -Sfy base --ignore kernel26 --root /mnt/ --config /mnt/etc/pacman.conf --cachedir /mnt/var/cache/pacman/pkg
Nyní je čas pro nastavení nového systému. Dle libosti si upravte /mnt/etc/rc.conf a ostatní konfigurační soubory. Já jsem rc.conf nechal být, s tím, že si ho nastavím až úspěšně nabootuji z flash disku. Je ale pár věcí, které je opravdu potřeba upravit už teď. Prvním v řadě bude /mnt/etc/fstab. Protože flashdisk se bude hlásit v kdoví jakém systému kdoví jak, použijeme pro jeho identifikaci UUID. UUID zjistíme příkazem:
$ ls -l /dev/disk/by-uuid/ celkem 0 lrwxrwxrwx 1 root root 10 28. pro 08.01 0a892bf5-c61c-4bc9-88f8-891877dab9f3 -> ../../sda1 lrwxrwxrwx 1 root root 10 28. pro 08.01 6453ccbd-19ae-4c70-a8e0-cb0173384f37 -> ../../sda2 lrwxrwxrwx 1 root root 10 29. pro 14.54 b69f6152-a2b4-47fe-8b65-6b0250104fa9 -> ../../sdb1 lrwxrwxrwx 1 root root 10 28. pro 08.01 fd01b604-56ec-4b94-8eae-29b0314788e8 -> ../../sda3
Z výstupu je vidět, že oddíl sdb1 má UUID b69f6152-a2b4-47fe-8b65-6b0250104fa9. Vysledný /mnt/etc/fstab může vypadat takto:
devpts /dev/pts devpts defaults 0 0 shm /dev/shm tmpfs nodev,nosuid 0 0 /dev/cdrom /media/cd auto ro,user,noauto,unhide 0 0 /dev/dvd /media/dvd auto ro,user,noauto,unhide 0 0 /dev/fd0 /media/fl auto user,noauto 0 0 /dev/disk/by-uuid/b69f6152-a2b4-47fe-8b65-6b0250104fa9 / ext3 noatime 0 1 tmpfs /tmp tmpfs defaults 0 0
Navíc jsem přidal připojení /tmp jako tmpfs, to by mělo trochu šetřit flash disk a přidat na rychlosti systému.
Aby nám vůbec systém nabootoval, je třeba mít v initramdisku podporu USB. To zajistíme úpravou v souboru /mnt/etc/mkinitcpio.conf, kde do HOOKS přidáme usb:
... HOOKS="base udev autodetect pata scsi sata filesystems usb" ...
Také si nezapomeňte upravit /mnt/etc/pacman.conf a odkomentovat nějaká zrcadla v /mnt/etc/pacman.d/mirrorlist.
Právě nainstalovaný systém by měl být dostačující pro chroot. Nejprve si ale zkopírujeme resolv.conf a až potom se přesuneme do nově vytvořené instalace, kde budeme pokračovat s jádrem a zavaděčem.
# cp /etc/resolv.conf /mnt/etc/resolv.conf # chroot /mnt
Pozor: všechny následující příkazy a soubory jsou spouštěny respektive editovány v chroot prostředí.
Nainstalujeme jádro, instalace nám vytvoří i initramdisk, můžete nainstalovat i další balíčky dle svého uvážení.
# pacman -S kernel26 mc
Dále je nutné nainstalovat zavaděč. Jako žhavý kandidát je grub, který by měl být iž nainstalovaný, protože je součástí skupiny base. Nejdříve se pustíme do nastavení grubu. Relevantní část /boot/grub/menu.lst:
... title Arch Linux [/boot/vmlinuz26] root (hd0,0) kernel /boot/vmlinuz26 root=/dev/disk/by-uuid/b69f6152-a2b4-47fe-8b65-6b0250104fa9 ro initrd /boot/kernel26-fallback.img ...
Jako initramdisk je použit kernel26-fallback.img, který obsahuje moduly potřebné pro start na kdejakém systému.
Teď už zbývá samotná instalace zavaděče, před ní provedeme remount disku, aby jsme měli v chroot prostředí připojen rootovský adresář:
# mount -o remount,noatime /dev/sdb1 / # grub-install /dev/sdb
Instalace je hotová, můžete si změnit heslo roota, opustit chroot, odmountovat flash disk a konečně z flash disku nabootovat!
# passwd # exit # umount /mnt/proc # umount /mnt/dev # umount /mnt/sys # umount /mnt
Tímto způsobem jde instalovat asi každá distribuce, jen je potřeba znát ty správné fígle, pamatuju si, že tohle byl způsob jak se instalovalo (možná stále instaluje) Gentoo. Hodně zdaru a snad se někomu bude návod hodit. Minimálně se nebudete hodinu nudit ;).
Tiskni
Sdílej:

Místo root (hd0,0) dáš do /boot/grub/menu.lst toto:
# Zde dáme UUID "kořene", UUID určité jednotky zjistíme přkazem (v Archlinuxu): /lib/initcpio/udev/vol_id --uuid /dev/zarizeni_korene uuid <zde dáme to, co nám vyflusnul příkaz vol_id>
Jinak já jsem o použití UUID při instalaci Archlinuxu na USB Mass storage zařízení napsal zápisek do blogu: Ubuntu mi pomohlo nainstalovat Archlinux na paměťovou kartu.
Asi mám divnej BIOS, ale mně prostě pořadí disků nějak přehazuje, proto se bez UUID i v /boot/grub/menu.lst prostě neobejdu. (Musím nahradit root za uuid. To přehazování se děje jenom při zapojení USB Mass storage zařízení.
/dev/hda nebo /dev/sda), ale přes boot menu se vybere druhý disk, tak bude podle BIOSu druhý disk první a první disk druhý.
sed-magii stále ještě nerozumim... to sou ty regulární výrazy?
Jen se nevytahuj. 
Je stejný jako instalční CD, tedy obsahuje jen [core].
Pokud ale máte větší disk, nemusí ho celý schramstnout instalace Archu, zbytek může být naformátovaný na vfat a používán k přenášení dat.Jenom připomenu, že některé operační systémy (tedy spíše jistý operační systém, asi tušíme který) mají radši vfat oddíl jako první. Mimochodem, divím se, že tu ještě nikdo nezmínil, že pro instalaci i686 z amd64 potřebuješ 32bit šmíďárny
.
# # /etc/fstab: static file system information # #[device] [dir] [type] [options] [dump] [pass] devpts /dev/pts devpts defaults 0 0 shm /dev/shm tmpfs nodev,nosuid 0 0 #/dev/fd0 /media/fl auto user,noauto 0 0 #/dev/cdrom /media/cd auto ro,user,noauto,unhide 0 0 #/dev/dvd /media/dvd auto ro,user,noauto,unhide 0 0 UUID=6404eb50-b01b-471c-b91a-052065bd353c / ext2 defaults,noatime 0 1 tmpfs /tmp tmpfs noexec,nosuid,rw,size=45% 0 0 tmpfs /var/tmp tmpfs noexec,nosuid,rw,size=65536k 0 0 tmpfs /var/log tmpfs noexec,nosuid,rw,size=32768k 0 0