abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 05:00 | IT novinky

    Notebook NitroPad V56 od společnosti Nitrokey byl oficiálně certifikován pro Qubes OS verze 4. Qubes OS (Wikipedie) je svobodný a otevřený operační systém zaměřený na bezpečnost desktopu.

    Ladislav Hagara | Komentářů: 0
    včera 17:22 | IT novinky

    Multiplatformní hororová adventura Whispering Willows je na portále GOG.com zdarma, akce trvá do 6. října.

    Fluttershy, yay! | Komentářů: 0
    včera 14:33 | Komunita

    Na čem aktuálně pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za září (YouTube).

    Ladislav Hagara | Komentářů: 0
    včera 14:11 | Nová verze

    Byla vydána nová verze 1.50.0 sady nástrojů pro správu síťových připojení NetworkManager. Novinkám se v příspěvku na blogu NetworkManageru věnuje Fernando F. Mancera. Vypíchnout lze podporu nastavení veth (virtual ethernet) v nmtui.

    Ladislav Hagara | Komentářů: 0
    včera 14:00 | Nová verze

    Byla vydána nová verze 24.1 linuxové distribuce Manjaro (Wikipedie). Její kódové jméno je Xahea. Ke stažení je v edicích GNOME, KDE PLASMA a XFCE.

    Ladislav Hagara | Komentářů: 2
    včera 13:11 | Nová verze

    Mobilní Datovka, tj. svobodná aplikace pro přístup k datovým schránkám pro zařízení s operačním systémem iOS a Android, byla vydána v nové verzi 2.1.0. Nově je pro sestavení potřeba Qt 6.7.

    Ladislav Hagara | Komentářů: 1
    včera 12:33 | IT novinky

    Přesně před 35 lety, 3. října 1989, byla vydána počítačová hra Prince of Persia. Jejím tvůrcem je Jordan Mechner.

    Ladislav Hagara | Komentářů: 4
    2.10. 14:44 | IT novinky

    Společnost PINE64 stojící za telefony PinePhone nebo notebooky Pinebook publikovala na svém blogu zářijový souhrn novinek. Po půl roce od předchozího. Vypíchnout lze nové desky StarPro64, Oz64 a Quartz64-Zero.

    Ladislav Hagara | Komentářů: 0
    2.10. 13:44 | IT novinky Ladislav Hagara | Komentářů: 8
    2.10. 06:33 | Humor Ladislav Hagara | Komentářů: 6
    Rozcestník

    LiveCD - 5 (úprava distribuce Slax)

    13. 4. 2006 | Michal Vyskočil | Systém | 11547×

    Po předchozích spíše teoretických dílech se pustíme do něčeho více praktického, abyste pak neřekli, že vám tento seriálek k ničemu nebyl. Seznámíme se s různými způsoby úprav distribuce Slax, čímž se vám v budoucnu určitě povede z ní udělat perfektní LiveCD.

    Úvodem

    Myslím, že po přečtení minulých dílů (1, 2, 3, 4) problematiku LiveCD znáte po teoretické stránce. Ovšem co je důležitější, jsou praktické vlastnosti. Proto jsem zařadil díl, v němž nebudete poznávat nové souborové systémy, nebo do detailu zkoumat ten, či onen aspekt nějakého spouštěcího skriptu. Tento díl by vás měl přesvědčit, že úprava Slaxe je velmi jednoduchá a můžete si jej velmi snadno a rychle uzpůsobit k obrazu svému.

    Způsobů, jak upravit Slax, je několik:

    1. Změna některého souboru - díky existenci adresáře rootcopy můžete snadno změnit několik souborů.
    2. Moduly - také si můžete stáhnout nebo vytvořit rozšiřující moduly, a doplnit tak softwarové vybavení.
    3. Skripty Linux Live - s nimi jsme se seznámili už v minulém díle, a pokud chceme provádět opravdu zásadní změny, nebo dokonce vytvořit vlastní distribuci, nezbude nám, než využít jejich služeb.

    Adresář rootcopy

    Pokud si vypíšete seznam souborů v kořenovém adresáři CD, dostanete podobný výpis:

    -rw-r--r--  1 root root 18259 Sep 27 21:28 COPYING
    -r--r--r--  1 root root   339 Sep 27 21:28 LICENSE
    -rw-r--r--  1 root root  1406 Sep 27 21:27 abc.ico
    ...
    -rw-r--r--  1 root root  2546 Sep 27 21:28 requirements.txt
    drwxr-xr-x  2 root root  2048 Sep 27 21:27 rootcopy
    -rw-r--r--  1 root root  3926 Sep 27 21:28 start.html
    drwxr-xr-x  3 root root  2048 Sep 27 21:28 tools
    

    Pokud chceme změnit jeden nebo několik málo souborů, je nejrychlejším způsobem je nahrát přímo do zmíněného adresáře rootcopy. Přijdeme tím sice o kompresi, kterou zajišťuje squashfs, ale pro malé soubory to nevadí. Vlastní překopírování obsahu zařídí startovací skript linuxrc (viz LiveCD - 4 (linux live, před spuštěním systému)). Například chceme-li změnit uvítací zprávu, není nic snazšího, než napsat:

    mkdir -p /cesta/k/cd/rootcopy/etc
    cp uvitaci_zprava /cesta/k/cd/rootcopy/etc/issue
    

    Vytvořit ISO a vypálit. Je na místě podotknout, že tyto soubory jsou omezeny možnostmi souborového systému ISO 9660.

    Skript make_iso.sh

    Tomáš Matějíček napsal skript, který velmi usnadňuje tvorbu ISO. A aby vám to nebylo líto, tak jeho podstatné části okomentuji.

    CDLABEL=""

    Hned na začátek nejdůležitější věc, jméno CD. Pokud nechcete, aby šlo ve vypalovačce poznat, že jde o Slax, zde můžete definovat jméno nové. Doporučuji něco úderného, jako například ABC_Linux_2005.

    # isolinux.bin is changed during the ISO creation,
    # so we need to restore it from backup.
    cp -f boot/isolinux.bi_ boot/isolinux.bin
    

    Jak napovídá komentář, soubor isolinux.bin je během procesu změněn. Proto je na začátku mazaně obnoven ze zálohy a vám doporučuji jej z adresáře boot nemazat. Pokud nevíte, co je to za soubor, pak si přečtěte první díl s názvem LiveCD - 1 (úvod, isolinux).

    mkisofs -o "$1" -v -J -R -D -A "$CDLABEL" -V "$CDLABEL" \
    26 -no-emul-boot -boot-info-table -boot-load-size 4 \
    27 -b boot/isolinux.bin -c boot/isolinux.boot .
    

    Posledním a nejdůležitějším příkazem je mkisofs, který vytvoří bootovatelné CD. Pokud se vám zdá příkaz povědomý, pak máte dobrou paměť, protože byl uveden v prvním díle.

    Použití je pak velmi prosté: ./mkisofs kam/se/ma/ulozit/iso

    Pro ty, kteří nemají zrovna po ruce Linux a pracují na Windows, je k dispozici ješte soubor make_iso.bat se stejnou funkcí. Jen pro zajímavost, ISO se vytvoří příkazem:

    tools\DOS\mkisofs.exe @tools\DOS\config -o "%1" \ 
    -A "%CDLABEL%" -V "%CDLABEL%" .
    

    Moduly

    Moduly jsou základem celého Slaxe, podobně jako je vše ve Smalltalku objekt, nebo vše v Lispu seznam, pak se dá s trochou nadsázky říct, že vše v této distribuci je modul. Pokud mi nevěříte, schválně si vypište obsah adresáře base:

    ls -lh base/
    celkem 178M
    -rw-------  1 root root  12M led 27 21:24 01_kernel.mo
    -rw-------  1 root root  31M led 27 21:24 02_core.mo
    -rw-------  1 root root  21M led 27 21:24 03_xwindow.mo
    -rw-------  1 root root 8,0M led 27 21:24 04_xap_libs.mo
    -rw-------  1 root root  18M led 27 21:24 05_common.mo
    -rw-------  1 root root  37M led 27 21:24 06_kde_base.mo
    -rw-------  1 root root  20M led 27 21:24 07_kde_apps.mo
    -rw-------  1 root root  20M led 27 21:24 08_kde_office.mo
    -rw-------  1 root root  13M led 27 21:24 09_slax.mo
    

    V něm jsou uloženy základní moduly tvořící systém.

    Co je to vlastně modul

    Což je poměrně logická otázka. Jindy všeznalý příkaz file mnoho nenapoví:

    base/01_kernel.mo: writable, regular file, no read permission
    

    Pochopitelně nemáme práva pro čtení, a proto je file němý. Přihlášením jako root zjišťujeme více.

    01_kernel.mo: Squashfs filesystem, little endian, version 3.0, 0 bytes,\
    1835 inodes, blocksize: 65536 bytes, created: Fri Jan 27 20:55:47 2006
    

    Moduly jsou tedy bloky dat komprimované souborovým systémem Squashfs (viz LiveCD - 2 (komprimované souborové systémy)). Proto hned připojíme:

    # nezapomen, ze adresar . i .. jsou na pripojenem obrazu CD,
    # tudiz jsou read-only
    mount -o loop -t squashfs 01_kernel.mo ../../01_kernel
    mount: wrong fs type, bad option, bad superblock on /dev/loop2,
    missing codepage or other error
    In some cases useful info is found in syslog - try
    dmesg | tail  or so
    

    A možná dopadnete jako já, protože mám v jádře starší verzi 2.2, což potvrdil i dmesg:

    Squashfs 2.2 (released 2005/07/03) (C) 2002-2005 Phillip Lougher
    SQUASHFS error: Major/Minor mismatch, filesystem is (3:0),
    I support (1 : x) or (2 : <= 1
    

    Potom nám nezbyde, než si stáhnout patch ze stránek projektu, aplikovat ho (více detailů je v souboru INSTALL) a přeložit jádro.

    cd /usr/src/linux-2.{4,6}.x
    patch -p1 < location-of-squashfs/linux-2.{4,6}.x/squashfs3.0-patch
    

    Potom nám již nic nebrání se podívat do obsahu modulu:

    ls ../../01_kernel/
    boot  etc  lib  sbin  usr  var
    

    Jak jsem již tedy uvedl, modul je jednoduše základ celé distribuce a díky kompresi pomocí Squashfs můžete nosit na 200MB mini CD kompletní systém, včetně KDE a KOffice. Naprosto stejně je zařízena funkce ukládání uživatelského nastavení, kdy se změny ukládají do zapisovací větve (viz LiveCD - 3 (podpora pro zápis)) a nakonec jsou zabaleny do modulu, který je při následném startu přehrán a jeho obsah nahradí staší soubory na CD.

    Rozšiřujeme Slax pomocí modulů

    Na stránkách Slaxe naleznete seznam modulů, které si můžeme stáhnout. Pro mě bývá nutností doinstalovat modul pro Vim, na který jsem si úspěšně vybudoval závislost. V tomto okamžiku máme na výběr dva adresáře, kam modul nahrát:

    • modules/ - obsah tohoto adresáře se nahraje při startu automaticky
    • optional/ - tyto moduly se nahrají, pouze pokud si je zvolíme při startu jako parametr (např. slax load=vim).

    A potom již výše popsaným způsobem vytvoříme ISO a vypálíme.

    Slax také poskytuje nástroje, jak nahrát modul za běhu. Příkazem uselivmod cesta/k/modulu dojde k dynamickému nahrání. Ale stává se, že systém potom úplně vytuhne, takže je lepší se této možnosti vyhnout. Alternativou je kliknutí na modul v Konqueroru, což má stejný efekt (včetně možného zatuhnutí).

    Moduly se díky souborovému systému unionfs dynamicky připojí do systému, bohužel je smutnou skutečností, že právě on bývá nejslabším článkem celého systému a častokrát způsobuje záhadné chyby v systému, anebo přivodí i jeho pád.

    Závěrem

    Dnešní díl obsahoval velmi málo teorie, ale za to byl, doufám, nacpán až k prasknutí informacemi. I když popis malého skriptu makeiso.sh jsem si nemohl nechat ujít. Zároveň byl tento díl (alespoň pro mě jako pro autora) zajímavý v tom, že se odkazoval na znalosti získané ve všech čtyřech předchozích dílech.

    Teď už víte, jak modifikovat ISO distribuce Slax a také, že se nejedná o nic složitého. Naopak, myslím, že je to velice snadné. Jediné, co vám může malinko ztěžovat situaci, je rozhodnutí, do kterého adresáře to mám vlastně nakopírovat. V příštím díle se zaměříme na další praktickou a užitečnou dovednost pro váš spokojenější život se Slaxem a tou je vytváření vlastních modulů.

           

    Hodnocení: 100 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

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

    Komentáře

    Vložit další komentář

    Mikos avatar 13.4.2006 02:57 Mikos | skóre: 34 | blog: Jaderný blog | Praha
    Rozbalit Rozbalit vše Re: LiveCD - 5 (úprava distribuce Slax)
    Pěkný článek ;-) Nicméně toto už není pravda:
    Ale stává se, že systém potom úplně vytuhne, takže je lepší se této možnosti vyhnout. Alternativou je kliknutí na modul v Konqueroru, což má stejný efekt (včetně možného zatuhnutí).
    V poslední verzi Slaxu (5.1.0) funguje uselivemod již bezproblémově.

    A já jdu už konečně spát :-)
    CETERUM CENSEO DRM ESSE DELENDAM Ostatně soudím, že DRM musí být zničeno!
    13.4.2006 08:59 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: LiveCD - 5 (úprava distribuce Slax)
    Autor přiznává, že poslední verzi Slaxe neměl tu čest podrobněji zkoumat ;-). Pokud už to funguje spolehlivě, je to skvělé.
    When your hammer is C++, everything begins to look like a thumb.
    13.4.2006 08:53 ondracch | skóre: 19 | blog: Mozková kreč
    Rozbalit Rozbalit vše Re: LiveCD - 5 (úprava distribuce Slax)
    Konečně jsem se polopaticky dozvěděl jak přidat moduly natrvalo:-).
    Proč myslíš, že nemůžeš žít jinak? Pořád Tvořím...
    13.4.2006 09:25 Frank J. Tomes | skóre: 29 | Plzeň
    Rozbalit Rozbalit vše Re: LiveCD - 5 (úprava distribuce Slax)
    Ve win si upravenou verzi můžete připravit pomocí programu MySlaxCreator.
    [frank]$ uname -prs FreeBSD 4.11-RELEASE-p25 i386
    14.4.2006 21:13 lamatin
    Rozbalit Rozbalit vše Re: LiveCD - 5 (úprava distribuce Slax)

    Dík moc!
    Trápil jsem se s moduly jak je přidat do .isa :) Používám SLAX jako skvělou Live distribuci pro děti do školy :)

    brozkeff avatar 15.4.2006 23:33 brozkeff | skóre: 13 | blog: Zpátky po 10 letech | Žďár nad Sázavou
    Rozbalit Rozbalit vše Blablabla
    Tak vážení, na přidávání modulů nepotřebujete nic jako mastering vlastního ISO souboru. Stačí originální ISO vypálit, ale NEUZAVŘÍT si disk, a pak normálně přidávat další sekce a do /modules nebo /optional doplňovat moduly. Takto to řeším na nedávno objeveném a trošku postarším Slaxu 5.0.5... funguje to bezchybně, multisession zjevně pro slax není žádnou překážkou... (divil bych se, kdyby byl, v roce 2006, že:))

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.