„Linux: Kniha kouzel“ je česká multimediální sbírka krátkých řešených příkladů z prostředí svobodného software v linuxu*, především distribucích Ubuntu a Linux Mint. Má formu připomínající konverzační slovník cizího jazyka a je vydávána v PDF A4 a B5 pro profesionální i domácí tisk a ve formátu HTML pro snadné vykopírování zaklínadel, můžete ji tedy používat na papíře i v počítači, proto „multimediální“.
Verze vanilková příchuť 2.14 je cílena na Ubuntu 20.04 Focal Fossa a jeho deriváty.
Obsah podléhá licenci CC BY-SA 4.0. Podrobné údaje o autorství zdrojových souborů jsou uvedeny v komentářích v jejich záhlaví; údaje o autorství obrázkových souborů jsou uvedeny v souboru COPYRIGHT.
Aktivní vývoj z mé strany byl přerušen, protože se chci věnovat novému projektu. Nadále ovšem poskytuji pasivní údržbu větvím 1.x a 2.x do předem vyhlášených termínů.
* V tomto projektu rozlišuji „Linux“ (jen jádro) a „linux“ (operační systém včetně programů). Podrobnější informace najdete v koncepci projektu.
- Navštivte webové stránky.
- Vyberte si „TMAVÝ MOTIV“ (výchozí), nebo „SVĚTLÝ MOTIV“ a klikněte na něj.
- Zvolte si jednu či více kapitol z přehledu nebo z menu „KAPITOLY“. Zvolíte-li si více kapitol, doporučuji si je otevřít v samostatných „panelech“ prohlížeče.
- Ve vybraných kapitolách pak najděte nějaké zaklínadlo, které si chcete vyzkoušet.
Obvyklý postup použití zaklínadla je následující:
- Zamyslete se, jaký kontext zaklínadlo vyžaduje. (Nemá smysl se např. snažit vypsat název větve gitu mimo jeho pracovní adresář. Ne všechna zaklínadla se zapisují přímo na příkazovou řádku.)
- Označte zaklínadlo v prohlížeči (má-li zaklínadlo víc alternativních variant, označte jen jednu z nich).
- Zkopírujte ho do schránky (Ctrl+C).
- Přepněte se do okna terminálu (nebo otevřete nové).
- Vložte zaklínadlo (Shift+Ctrl+V).
- Projděte zaklínadlo a místa, která jsou na webové stránce označena podtržením (k doplnění), nahraďte odpovídajícími parametry (např. názvem souboru). Smažte hranaté závorky obklopující volitelné parametry.
- Potvrďte příkaz (Enter).
Poznámka 1: Na webu najdete jen základní kapitoly. Prémiové kapitoly jsou za odměnu za sestavení. Na webu najdete jen tmavý a světlý motiv; ostatní barevné motivy můžete získat v offline HTML verzi přejmenováním souborů s příponou „.css“.
Poznámka 2: Linux: Kniha kouzel není tutorial. Pokud ani po přečtení úvodu a definic nepochopíte, jak se uvedená zaklínadla používají, musíte nejprve získat zkušenosti nebo navštívit jiné stránky, kde vám použití daných nástrojů někdo názorně vysvětlí. Odkazy na takové stránky (včetně videí) najdete v sekci „Další zdroje informací“ na konci téměř každé kapitoly.
Na stránce Ke stažení si stáhněte „offline HTML“ variantu aktuální verze vanilkové příchuti (soubor „html.zip“) a archiv rozbalte do vámi zvoleného adresáře. Na téže stránce si můžete stáhnout PDF pro tisk a vytisknout.
Pokud chcete přepnout barevný motiv, smažte (nebo přejmenujte) soubor „lkk-datum.css“ a soubor „lkk-datum-id-motivu“ přejmenujte na „lkk-datum.css“. To je výhoda, kterou má offline HTML verze oproti online HTML verzi.
Nakonec otevřete soubor „index.htm“ ve vašem oblíbeném prohlížeči (můj oblíbený prohlížeč je Firefox) a dále postupujte jako u základního použití online. Pokud budete HTML verzi používat dlouhodobě, čas od času si nezapomeňte stáhnout novou verzi, abyste dostal/a ta nejnovější vylepšení a opravy.
Poznámka 1: V offline HTML verzi a PDF pro tisk dostupných ke stažení najdete jen základní kapitoly. Prémiové kapitoly jsou za odměnu za sestavení.
Vlastní sestavení vám dává největší volnost ve výběru kapitol a v možnosti projekt upravovat a přispívat do něj. Máte na výběr dvě varianty:
- Malé sestavení, při kterém vznikne offline HTML verze a případně balíček pomocných funkcí a skriptů (a případně ladicí varianta „log“). Malé sestavení je celkově nenáročné, nezískáte při něm ale PDF pro tisk.
- Velké sestavení, při kterém můžete sestavit všechny dostupné výstupní formáty. Velké sestavení vyžaduje téměř kompletní TeXlive (několik gigabajtů nástrojů) a na pomalejším počítači může trvat i mnoho minut. PDF pro tisk pak doporučuji nechat profesionálně vytisknout a svázat do kroužkové vazby. Pak můžete použít lepicí záložky k označení nejčastěji používaných zaklínadel.
Místo fyzické instalace Ubuntu 20.04 můžete k sestavení použít kontejnery Dockeru. Poskytuji a oficiálně podporuji Dockerfile pro malé sestavení (vyžaduje cca 500MB místa na disku) a Dockerfile pro velké sestavení (vyžaduje cca 1,5GB místa na disku). Po sestavení obrazu (sudo docker build -t lkk .
) a spuštění kontejneru (sudo docker run --rm -it lkk
) v obou skončíte v adresáři „/root/linux-spellbook“, kde můžete provést „git pull“, přepnout větev (pokud chcete) a následně použít příkazy „make“ z návodů pro malé/velké sestavení. Výstup překladu budete muset z kontejneru vykopírovat. Pokud budete mít s překladem v Dockeru jakýkoliv problém, napište mi e-mail a pokusím se vám poradit, nebo dokonce pomoci.
Pokud budete upravovat zdrojové kódy kapitol, vyplatí se si před tím pročíst dokument Syntaxe kapitol a jako vzor vám může sloužit zvláštní kapitola Ukázka.
Zde je aktualizovaný přehled kapitol, které si při sestavení můžete vybrat v souboru „pořadí-kapitol.lst“:
ID | Název kapitoly | Vydána od verze | Zařazení |
---|---|---|---|
awk | AWK | 1.2 | prémiová |
bash | BASH | 2.8 | základní |
bash/funkce-a-skripty.md | BASH/Funkce a skripty | 2.8 | základní |
bash/interaktivní-režim.md | BASH/Interaktivní režim | 2.8 | základní |
bash/vstup-výstup.md | BASH/Vstup, výstup a přesměrování | 2.8 | prémiová |
datum-čas-kalendář | Datum, čas a kalendář | 1.1 | prémiová |
diskové-oddíly | Diskové oddíly | 1.6 | základní |
diskové-oddíly/btrfs | Diskové oddíly/Btrfs | 2.5 | základní? |
diskové-oddíly/lvm | Diskové oddíly/LVM | 2.5 | základní? |
diskové-oddíly/softwarový-raid | Diskové oddíly/Softwarový RAID | 2.5 | základní? |
git | Git | 1.0 | základní |
hledání-souborů | Hledání souborů | 1.5 | základní |
make | Make | 1.0 | prémiová |
manuálové-stránky | Manuálové stránky | 2.4 | prémiová |
markdown | Markdown | 1.0 | prémiová |
metapříkazy | Metapříkazy | 2.7 | základní |
nabídka-aplikací | Nabídka aplikací | 2.4 | základní |
odkazy | Pevné a symbolické odkazy | 2.2 | základní |
perl-moduly | Perl: moduly a objekty | 2.3 | prémiová |
perl-základy | Perl: základy | 2.3 | základní |
práce-s-archivy | Práce s archivy | 1.1 | základní |
prohlížení-textových-souborů | Prohlížení textových souborů | 2.10 | základní |
proměnné | Proměnné prostředí a interpretu | 1.9 | prémiová |
regulární-výrazy | Regulární výrazy | 1.1 | základní |
sed | Sed | 1.8 | prémiová |
soubory-a-adresáře | Soubory a adresáře | 1.5 | prémiová |
správa-balíčků | Správa balíčků | 1.1 | základní |
správa-procesů | Správa procesů | 1.4 | prémiová |
správa-uživatelských-účtů | Správa uživatelských účtů | 1.11 | základní |
stahování-videí | Stahování videí | 1.0 | prémiová |
systém | Systém | 1.2 | základní |
terminál | Terminál | (1.0) | prémiová |
terminál/emodži | Terminál / Emodži | (2.0) | prémiová |
vim | Vim | 1.8 | prémiová |
zpracování-binárních-souborů | Zpracování binárních souborů | 2.0 | prémiová |
zpracování-textových-souborů | Zpracování textových souborů | 1.2 | základní |
zpracování-videa-a-zvuku | Zpracování videa a zvuku | 1.0 | základní |
- _šablona − Nepřekládá se. Slouží jako výchozí podoba pro nově založené kapitoly.
- x-ostatní − Slouží k dočasnému shromážďování dosud nezařazených zaklínadel.
- x-ukázka − Překládá se, ale není součástí vydaných verzí. Slouží k dokumentaci a testování mechanismu překladu. Obsahuje všechny podporované jazykové konstrukce a znaky.
- Docker
- Plánování úloh
- vývojová – Hlavní větev, nyní opuštěná.
- stabilní – Zdrojový kód poslední vydané verze. Pokud vám nepůjde přeložit kód z větve „vývojová“, použijte kód z větve „stabilní“.
- v1 — Větev 1.x; ve stádiu dlouhodobé pasivní údržby do 1. března 2023.
- v2 — Větev 2.x; ve stádiu dlouhodobé pasivní údržby do 1. března 2025.
Poznámka: Uvedené údaje o licencích jsou orientační, a ačkoliv je uvádím v dobré víře, nemusí již být aktuální!
- Sallyx.org (nesvobodná licence CC BY-NC-SA 3.0) jsou vynikající, obsáhlé a dodnes velmi dobře udržované stránky o linuxu a programování. Na rozdíl od Linuxu: Knihy kouzel nejsou open-source (autor je udržuje sám, v podstatě jde o freeware) a nemají knižní ambice, jsou však optimalizovány pro samouky, aby se z nich uváděné nástroje mohli snadno naučit. Dle mého názoru jde o nejlepší konkurenční zdroj v češtině.
- Pure Bash Bible (anglicky, licence: MIT) je stejně jako Linux: Kniha kouzel knihou řešených příkladů (ačkoliv jde o e-book) a také se snaží nabízet ověřená a co nejlepší řešení, autor dokonce na svoje příkazy píše automatizované testy. Oproti Linuxu: Knize kouzel je ale Pure Bash Bible zaměřená pouze na příkazový interpret „bash“.
- Linux Journey (anglicky, licence pouze textu: CC BY-SA 4.0) je rozsáhlý a kvalitní výukový kurz linuxových příkazů z různých oblastí. Hlavním rozdílem oproti Linuxu: Knize kouzel zde je, že je zaměřený na výuku (dokonce u jednotlivých sekcí nabízí i úkoly k procvičení), není však tak podrobný a vyhýbá se komplikovaným a nejmodernějším technologiím (např. tam nenajdete vysvětlení ACL, LVM apod.).
- TL;DR (anglicky − „Too Long; Didn't Read“, licence: MIT) představuje výrazně zjednodušené manuálové stránky s krátkými příklady k jednotlivým nástrojům. Na rozdíl od Linuxu: Knihy kouzel je organizován po nástrojích, takže musíte vědět, k čemu chcete nápovědu, a neporadí vám lepší nástroje k provedení dané činnosti. Ke každému nástrojí navíc uvádí jen nejběžnější příklady. Kladem je, že jeden z jeho klientů je dostupný jako balíček Ubuntu a Debianu.
- Projekt eg (anglicky, licence MIT) nabízí zjednodušené a velmi praktické „manuálové stránky“ s vynikajícím zvýrazňováním syntaxe, snadným přístupem a možností je snadno upravovat (v Markdownu). Jeho nedostatkem je orientace na dokumentaci nástrojů spíš než na řešení úloh. Také již není příliš aktivně vyvíjen (poslední verze 1.1.1 je z října 2018). (Mimochodem, autor má smysl pro humor, když radí přejmenovat „eg“ na „woman“.)
- Cheat (anglicky, licence: MIT) je nástroj pro správu vlastních jednoduchých „manuálových stránek“. Používá se snadno, ale není určen k objevování nových programů a ve srovnání s klasickými manuálovými stránkami má horší zvýrazňování syntaxe.
- The Linux Documentation Project (anglicky, licence: GFDL 1.2, některé části i pod jinými svobodnými licencemi) je monumentální historická sbírka návodů a příruček mapující programy GNU a Linux. Je již ovšem prakticky neudržovaná a většinou velmi zastaralá. K návštěvě ji mohu doporučit jen „počítačovým archeologům“, rozhodně ne současným začátečníkům.
- GNU/Linux Desktop Survival Guide (anglicky, licence: GPL v2+ nebo CC BY 2.0+) je původně rozsáhlá sbírka jednostránkových článků o konkrétních problémech uživatele Debianu. Ačkoliv je dodnes udržovaná, připadá mi, že jedinou formou aktualizace je odstraňování již neaktuálního obsahu, po kterém bohužel zůstávají prázdné články. Na rozdíl od Linuxu: Knihy kouzel již vyšla knižně a PDF verze je placená (HTML verze je dostupná online a zdarma).
Kniha a všechny zdrojové kódy podléhají licenci CC BY-SA 4.0, některé soubory nabízejí také jinou licenci. Podrobné údaje o autorství a konkrétní licenci zdrojových souborů jsou uvedeny v komentářích v jejich záhlaví; údaje o autorství obrázkových a datových souborů (včetně formátu .tsv) jsou uvedeny v souboru COPYRIGHT.