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 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

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

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 6
    včera 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | IT novinky

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Nová verze

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Nová verze

    Byla vydána nová verze 6.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.14.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána nová verze 30.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí JavaScriptu, HTML a CSS Electron (Wikipedie, GitHub). Chromium bylo aktualizováno na verzi 124.0.6367.49, V8 na verzi 12.4 a Node.js na verzi 20.11.1. Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.

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

    Byla vydána nová verze 9.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 220 vývojářů. Provedeno bylo více než 2 700 commitů. Přehled úprav a nových vlastností v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (72%)
     (9%)
     (2%)
     (17%)
    Celkem 738 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    LiveCD - 5 (úprava distribuce Slax)

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

    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.