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 21:44 | Nová verze

    Vyšla nová verze XMPP (Jabber) klienta Gajim, která přidává podporu reakcí pomocí emoji (XEP-0444: Message Reactions) a citace zpráv (XEP-0461: Message Replies). Přehled dalších vylepšení je k dispozici na oficiálních stránkách.

    sonicpp | Komentářů: 0
    dnes 15:00 | Nová verze

    Po po téměř roce vývoje od vydání verze 5.38 byla vydána nová stabilní verze 5.40 programovacího jazyka Perl (Wikipedie). Do vývoje se zapojilo 75 vývojářů. Změněno bylo přibližně 160 tisíc řádků v 1 500 souborech. Přehled novinek a změn v podrobném seznamu.

    Ladislav Hagara | Komentářů: 3
    dnes 12:00 | Zajímavý článek

    Uroš Popović popisuje, jak si nastavit Linux na desce jako Raspberry Pi Zero, aby je šlo používat jako USB „flešku“.

    Fluttershy, yay! | Komentářů: 1
    dnes 08:44 | Zajímavý software

    Andreas Kling oznámil, že jelikož už se nevěnuje nezávislému operačnímu systému SerenityOS, ale výhradně jeho webovému prohlížeči Ladybird, přičemž vyvíjí primárně na Linuxu, SerenityOS opustí a Ladybird bude nově samostatný projekt (nový web, repozitář na GitHubu).

    Fluttershy, yay! | Komentářů: 2
    dnes 02:22 | Nová verze

    Po dvou měsících vývoje byla vydána nová verze 0.13.0 programovacího jazyka Zig (GitHub, Wikipedie). Přispělo 73 vývojářů. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    8.6. 17:55 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE.

    Ladislav Hagara | Komentářů: 10
    7.6. 14:55 | IT novinky

    Před 70 lety, 7. června 1954, ve věku 41 let, zemřel Alan Turing, britský matematik, logik, kryptoanalytik a zakladatel moderní informatiky.

    Ladislav Hagara | Komentářů: 24
    7.6. 11:44 | Zajímavý software

    NiceGUI umožňuje používat webový prohlížeč jako frontend pro kód v Pythonu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 1
    7.6. 10:55 | Nová verze

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána ve verzi 2024.6. Z novinek lze vypíchnout lepší integraci LLM (OpenAI, Google AI, Ollama) nebo podporu Matter 1.3.

    Ladislav Hagara | Komentářů: 0
    6.6. 20:55 | IT novinky

    IKEA ve Spojeném království hledá zaměstnance do své nové pobočky. Do pobočky v počítačové hře Roblox. Nástupní mzda je 13,15 liber na hodinu.

    Ladislav Hagara | Komentářů: 0
    Rozcestník

    LiveCD - 5 (úprava distribuce Slax)

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

    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ů.

    Nejčtenější články posledního měsíce

    Týden na ITBiz: Výkonný elektromagnet z 3D tiskárny
    Týden na ITBiz: Polovina českých firem si není jistá blízkou budoucnosti svého oboru, většina ale počítá s velkým vlivem AI
    Událo se v týdnu 21/2024

    Nejkomentovanější články posledního měsíce

    Týden na ITBiz: Platby výkupného za ransomware vzrostly za poslední rok na pětinásobek
    Týden na ScienceMag.cz: Neutronové molekuly – neutrony se mohou vázat na kvantové tečky
    Týden na ScienceMag.cz: Postoupili ve snaze najít kvantovou povahu gravitace
      všechny statistiky »

    Seriál LiveCD (dílů: 5)

    LiveCD - 1 (úvod, isolinux) (první díl)
    <—« LiveCD - 4 (linux live, před spuštěním systému)
    LiveCD - 5 (úprava distribuce Slax) (poslední díl)

    Související články

    LiveCD - 1 (úvod, isolinux)
    LiveCD - 2 (komprimované souborové systémy)
    LiveCD - 3 (podpora pro zápis)
    LiveCD - 4 (linux live, před spuštěním systému)
    Exkurze do světa live distribucí
    Vypalování CD - I Slovníček pojmů
    Na co se často ptáme 1: LILO
    Jak na animované LILO
    Jak změnit rozlišení při bootu?
    Jak na duální boot s Windows 2000
    Mandrakemove 2 CZ
    Slackware LiveCD
    Danix
    ProMEPIS 2005
    Jak jsem se poprala s ABC Linuxem

    Další články z této rubriky

    Úvod do Dockeru (1)
    Paralelizace běžných činností v konzoli pomocí GNU Parallel
    Unixové nástroje – 26 (triky pro práci v Bashi)
    Unixové nástroje – 25 ((s,c)fdisk, gdisk, parted a findmnt)
    Linux: systémové volání splice()
           

    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.