1. Intro

1.1. Licence

2020-05-01

Tato webová stránka lxs.bullcorn.net aka LinuXoundS (lxs) včetně jejího obsahu je autorsky chráněna.

Creative Commons 4.0, Mezinárodní Licence CC by-nc-nd

by nc nd Uveďte původ-Neužívejte komerčně-Nezpracovávejte

INFO: email: lxs(at)bullcorn.net

1.1.1. Zkrácené znění

2020-05-01

Toto je uživatelsky přívětivé, zkrácené znění plného textu licenčních podmínek (a jako takové licenci nenahrazuje).

Dílo smíte:
  1. sdílet — rozmnožovat a distribuovat materiál prostřednictvím jakéhokoli média v jakémkoli formátu;

  2. poskytovatel licence nemůže odvolat tato oprávnění do té doby, dokud dodržujete licenční podmínky.

Za těchto podmínek:
  1. by Uveďte původ — Je Vaší povinností uvést autorství, poskytnout s dílem odkaz na licenci a vyznačit Vámi provedené změny. Toho můžete docílit jakýmkoli rozumným způsobem, nicméně nikdy ne způsobem naznačujícím, že by poskytovatel licence schvaloval nebo podporoval Vás nebo Váš způsob užití díla.

  2. nc Neužívejte dílo komerčně — Je zakázáno užívat dílo pro komerční účely.

  3. nd Nezasahujte do díla — Pokud dílo zpracujete, zpracujete s jinými díly, doplníte nebo jinak změníte, nesmíte toto upravené dílo dále šířit.

  4. Žádná další omezení — Nesmíte použít právní omezení nebo účinné technické prostředky ochrany, které by omezovaly ostatní v možnostech poskytnutých touto licencí.

Poznámky:
  • Touto licencí se není třeba řídit ohledně částí materiálu, které jsou volným dílem, popř. v případech, které lze klasifikovat jako výjimku či omezení práva autorského.

  • Nejsou poskytovány žádné záruky. Může se stát, že Vám licence neposkytne všechna oprávnění pro zamýšlené použití. Například další práva jako je ochrana osobních údajů, soukromí nebo osobnostních práv můžou limitovat použití tohoto díla.

1.2. Úvodem

2020-12-22

The box said that I needed to have Windows or better …​ so I installed Linux.

—Anonymous about Linux

Žádná možnost univerzitního vzdělání v oboru analogově-digitální audio techniky u nás ve spojení s GNU/LINUX operačním systémem není. Nejsem fundovaným odborníkem ale již jsem měl možnost spravovat a pracovat v několika systémech se zaměřením na LINUX audio. Stejně tak se orientuji i v jiných systémech a profesionálních MACOS a WINDOWS audio aplikacích. Aspoň si to myslím.

Text určitě obsahuje chyby. Obsahové, gramatické, věcné, stylistické a nepochybně i faktické. Neřiďte se jím jako bezchybným průvodcem světem linuxového audia. Ač mám maximální snahu všechno vícekrát ověřit a věnuju mu hodně času nemusí být všechno napsáno správně. Korektora nemám.

! Psáno 'na koleni' bez úmyslů jednat nekorektně či unfair.
Je na volbě každého zda si nezávisle a pro jistotu ověří správnost psaného ještě před odentrováním.

Informace a web-odkazy uvedené na těchto stránkách nemusí být 100% aktuální. Než napíšu pár kapitol tak obsah kapitol psaných před časem by už zasloužil revizi. Není v mé moci věnovat se všemu najednou s okřídleným sebevědomým heslem stachanovských hrdinů 'rychle, levně, kvalitně'. Dokonalost do skály vytesat. Poctivý, férový přístup a úpřimnost k čitateli jsou mi bližší.

"Pracuji jako ďas, pane učiteli" ale stále není hotovo. Publikovat to až po dokončení tak to nikdy nepublikuji. Neustále mám nové informace, nějaký nápad, technologie se mění etc.

Kapitoly jsou psány stroze pouze s podstatnými informacemi. Zasloužili by rozpracovat více do hloubky a rozvést vysvětlení do širších souvislostí. Snad je rozpracovanost pochopitelná.

Časem bych rád začlenil do textu i minimální seznámení s jednotlivým software, jeho základním nastavením, jak se to propojí, jak vytvořit zvuk nebo vlastní syntezátorový nástroj atd. Něco víc o hudebním hardware, sequencerech, linuxových syntezátorech, MIDI aplikacích, arpegiatorech, konvolverech, limiterech, pluginech do LINUX DAW software, efektech, podporovaných technologiích, jak tvořit, kde s tím začít…​ Však zda-li se k tomu někdy dostanu je otázné. Je toho moc.

Text není prvoplánově koncipován v tématických souvislostech ale chronologicky. Ač sporadicky přesto také podle vyžádaných potřeb psaného pro okamžité dovysvětlení.

Značky FIXME a TODO v dalším textu jsou pracovní a informace náležející ke značce nemám buď ještě ověřené nebo dostatečně zpracované.

U každé kapitoly je pod nadpisem datum poslední úpravy ve tvaru "rok-měsíc-den". K tomuto datu je kapitola aktuální. I když jsou některé z kapitol značně vyčpělé neznamená to, že nejsou aktuální. Především základní systémové příkazy jsou funkční neustále. Bývají to miniprográmky za pár kilobyte. A když se vyvíjejí tak velmi pozvolna protože zdokonalovat dokonalé je kontraproduktivní. Tyto příkazy byly napsány už našimi předky někdy v 15. století a jsou tak neobyčejně jednoduché ve svém kódu a zároveň funkční, že přepisovat je nebo vymýšlet nové by bylo na škodu. I sofistikované okenní aplikace je využívají neustále. Tyto jednoduché příkazy jsou pouze skryté před očima obyčejného uživatele. Ten nejspíš ani netuší, že za ikonkou se skrývá nejobyčejnější, několik desítek let 'starý' příkaz.

Obrazovou dokumentaci záměrně vynechávám kvůli objemu dat. Obrázky použiji pouze v nutnosti nebo krajní nouzi. Co jde opsat slovy - opíšu slovy.

1.3. Text je psán…​

2020-04-24

…​především pro toho, koho těší hudba. Její aktivní tvorba. Zároveň ho baví vyplnit si volný čas smysluplnou zábavou. S radostí svou tvorbu propojí i s digitálními technologiemi a jeho snahou je nejen vytvářet ale taky porozumět procesům, nastavením systému, propojování. Zajímá se o hlubší poznání a vytváření hudby za pomoci analogově-digitálních technologií.

Opomenu-li přirozený akustický přístup nebo tvorbu v notovém zápisu, kvalitní hudba vzniká nejen když má tvůrce hudební nápad ale v dnešní době už taky ví jak nastavit systém, co a proč do konfiguračního souboru napsat, kam kliknout a hlavně ví a umí svoji múzu a hudební představy zpracovat. Ke svému potěšení taky.

Hudba není pouze o emocích. Racionální postupy a schopnost u tvorby myslet její krásu a prožitek mimořádně zhodnocují. Je rozeznatelné jak se kdokoliv ke své tvorbě postavil a dopracoval. Poctivé umělecké záměry, pohnutky jsou prvotním předpokladem dobrého umění. Vidět pod pokličku, mít šestý smysl. Třetí oko.

Nehledat cestu. Hledání není nezbytné. Kdo nehledá nestojí na místě a nachází. Stačí jít a porozumět sobě samému. Jenom to. Jít si svou vlastní cestou. Nekopírovat styly, nepřizpůsobovat se přáním okolí, nezakládat kapelu pro slávu nebo žánr, nenechat se pohltit konvencema nebo odradit světem. Ale je to jako se vším. Trošku pokory, autocenzury, sebehodnocení a autoprojekce neuškodí. To aby jeden o sobě taky věděl a byl schopen myslet i na úrovni vědomí. Stačí zdravé sebevědomí, zlatá střední cesta.

Největší koncertní sál na světě je jen a jen v hlavě autora. Tamtéž je i ostatní vesmír. V představách, fantazii, abstrakci. Jen ten svůj. Duše, tvořivost, originalita. Emoce, racio a vyváženost.

Maximálně využít vlastní originalitu a nenapodobitelnost a být poctivý a úpřimný i k sobě je v umění nenahraditelné.

Na okraj poznamenám, že myšlenka - nápad, múza - vstupující do digitálního světa by z něj měla vystoupit zušlechtěná. Neměla by být zpracována počítačem do podoby líbívé ale v čase nezajímavé smyčky bez hlubší hodnoty. Digitální technologie neslouží k ošizení nebo urychlení práce ale pro ulehčení dřiny nebo realizaci hudebních imaginací. Pomoc technologií tkví ve zpracování úkolů jenž jsou pro lidské myšlení neuchopitelné. Jednoduchá cesta často vede jen k jednoduchosti, v lepším případě k průměrnosti. I v životě. Na kvalitě výsledného zvuku, efektu, rytmu a melodie se to lehce pozná.

2. Hardware

2.1. desktopPC

2019-06-24

Klasické desktopPC počítače jsou pro zpracování audia a hraní hudby vhodnější.

Přednosti desktopPC řešení:
  • podpora speciálních PCI[1], PCIe[2] karet a komunikačních audio rozhraní FIREWIRE[3], počet USB[4] slotů

  • zpětná kompatibilita i pro starší hardware jako LPT[5] porty, FDD[6] atd.

  • rozšiřitelnost hardwaru o nové funkce, například THUNDERBOLT[7] technologie, ARDUINO[8]

  • snadný upgrade komponentů, přetaktování CPU[9], detailnější nastavení BIOS[10] funkcí

  • snadná manipulace s RAM[11] paměťmi, jejich výměna a jednoduché navýšení kapacity

  • citlivé hardwarové komponenty nejsou vystavovány změnám venkovních teplot, vlhkosti a otřesům

  • dodržování POSIX[12] standardů, kompatibilita[13] hardware

  • kombinace datových nosičů - HDDs[14], zvukových karet, výběr monitorů, grafických karet a dalších periferií

  • snadný fyzický přístup k hardwaru, ergonomie, životnost, poměr cena/výkon

TIP: V profesionálních nahrávacích, televizních, rozhlasových studiích pracují s video a audiodaty na desktopPC nebo jeho hardwarových klonech.

2.2. Notebook

2020-01-17

NOTEBOOK, někdy pojmenován jako LAPTOP, je menší, méně výkonná odnož desktopPC computeru. Má nižší energetické nároky, je přenosný ale tady veškeré jeho přednosti začínají a končí. Neznamená to však, že je NOTEBOOK nevhodný pro multimedální práci. Velmi záleží i na nastaveních nebo rozsahu sezení (projektu). Mít při ruce další počítač pro poznámky, hledání informací na internetu, přístup k emailové schránce, rychlé zaznamenání hudebních nápadů nebo pořízení záznamu v exterieru je praktické. Samozřejmě, že psané postupy lze aplikovat v rámci možností nastavení hardwaru a/nebo softwaru i na NOTEBOOK a používat ho i k tvorbě. U některých nastaveních specifických pro přenosné počítače věnuji čas i těmto zařízením i když ne detailně a dopodrobna.

2.3. AUDIO moduly

2019-06-24

Jediným silným argumentem proti desktopPC je existence hardware jednotek určených jen a pouze pro vytváření hudby a zvuku. Jejich jednoúčelovost je předurčujícím faktorem rychlosti a hbitosti při nahrávání, přehrávání a zpracování audiodat. Výrobce už při návrhu myslí na kvalitu zpracování audiosignálu s vědomím, že přístroj bude sloužit konkrétnímu účelu. Počítač je víceúčelový a musí zpracovat daleko objemnější datový tok včetně grafického rozhraní, síťových služeb atd. Nemůže tedy dosahovat kvalit a rychlostí zpracování vzorků jak je tomu u externích ANALOG/DIGITAL hardware SYNTHESIZERů, AD/DA převodníků, SAMPLERů, RECORDERů a jiných AUDIO MODULů.

2.4. AUDIO interface

2019-06-23

Před pár desetiletími v začátcích, ač syntezátorového přesto stále analogového světa hudby, nebylo možné tento hardware vzájemně technicky propojit digitální cestou. V dnešních dnech lze naštěstí jakýkoliv přístroj digitálně nebo analogově propojit s jiným či už paralelně nebo sériově. Slouží k tomu nejrůznější technologické celky AUDIO INTERFACE[15] s vlastními komunikačními jazyky, s moderními protokoly nezapomínaje na nejrůznější a nejobyčejnější ANALOG kabely, konektory a redukce.

Pro DIGITAL propojení zvukových karet, modulů a jiných zvukových zařízení s počítačem slouží interní sběrnice PCI, PCIe_1x, PCIe_4x, PCIe_8x. Propojení od USB1.1 po USB3.1, FIREWIRE400, FIREWIRE800, THUNDERBOLT1THUNDERBOLT3, MIDI[16] konektory a další jsou jejich externími ekvivalenty. Interní sběrnice PCIe_16x je nejčastěji používána pro grafickou kartu. AUDIO karta PCIe_1x vložena do PCIe_16x slotu by měla být funkční.

? Není doporučeno instalovat AUDIO zařízení do prvního nebo posledního PCI slotu základní desky. Tyto sloty bývají sdílené. V manuálu k základní desce může být i jiná informace.
? Některý USB audio hardware může po připojení do USB-3 způsobovat problémy. Problémy vyřeší zapojení do USB-2 nebo USB-1 slotu.

Všemožné bezdrátové WIFI[17], BLUETOOTH[18] nebo klasické odrušené COAXIAL kabely, vysokorychlostní OPTIC FIBRE technologie jsou technologiemi zprostředkujícími přenos dat. Stejně tak i stařičké hliníkové kabely. V domácích podmínkách poslouží dobře.

Je patrné, že hardwarové možnosti NOTEBOOKu nemají možnosti desktopPC. Srovnání softwarových možností nastavení jsou analogií. Pořízení desktopPC hardwaru zároveň nevyžaduje tak vysokou počáteční investici. Časem se dá dokoupit další hardware a při dodržení podmínek hardwarové kompatibility lze krůček po krůčku vybudovat vlastní, i kdyby malé domácí hudební studio. NOTEBOOK neumožňuje ani pájení vlastních sestavených obvodů a jiné experimenty.

INFO: Drahý hardware neimplikuje kvalitní hudbu. Důležité je poznat možnosti a maximálně je využít. Nejlepší věci vznikají v lehkosti a obyčejnosti myšlení, nápadu a velmi často v nuzných podmínkách na koleni v garáži. A navíc - mnohé LINUX distribuce mají opravdu výbornou svobodnou licenční politiku GNU/GPL.

2.5. POSIX kompatibilita

2019-12-12

Při výběru hardwaru určeného pro práci s UNIX-LIKE - GNU/LINUX, BSD distribucemi je potřeba mít na paměti nekomerční, nesmluvní podporu LINUX ze strany hardwarových vendorů - výrobců hardwarových zařízení. To je nemalá výhoda komerčně zaměřených operačních systémů WINDOWS a MACOS.

U výrobců NOTEBOOKů nevzniká potřeba dodržet kompatibilitu mezi jejich hardwarovými komponenty a hardwarem v úplně jiném počítači. Kvůli jedné malé poškozené komponentě se pořídí nový NOTEBOOK. V nabídkách výrobců[19] a prodejců jsou i NOTEBOOKy s LINUX kompatibilním hardware a předinstalovaným POSIX[12] linuxovým systémem jenž lze přeinstalovat nebo NOTEBOOKy bez operačního systému s POSIX standardy. Když už teda NOTEBOOK tak tyto jsou pro LINUX nejvhodnější.

!! Koupí NOTEBOOKu postaveného bez dodržení POSIX standardů se uživatel může dopustit omylu. NOTEBOOK se speciálně navrženým proprietárním AUDIO hardware může být ve spojení s LINUX systémem, a zejména v rukou začátečníka, až neřešitelným problémem.

Proprietární, komerčně zaměřené, technologie a výrobky jsou na první pohled rozeznatelné podle sladkých nápisů nebo podbízivých blikajících světílek. Samozřejmě, že tyto technologie není možné hodnotit apriori jako nefunkční ale získáním více informací na internetu lze předejít zklamání. Digitální AUDIO je stejně kvalitní a třeba i lepší audio i v POSIX compliant systémech i bez halasné reklamy na konkrétní značku výrobce. Proprietární až experimentálně vystavěný AUDIOSYSTEM je marketingem.

TIP: Ve všeobecnosti platí: čím jednodušší, účelnější, praktičtější hardware je tím větší je pravděpodobnost, že je POSIX kompatibilní. Čím víc čudlíků, registrací u výrobce, instalačních CD-éček s drivery tím víc může být starostí.

Ovladače pro LINUX KERNEL[20] kódují převážně LINUX programátoři sami pro sebe, pro potřeby a funkčnost svého softwaru, potažmo pro komunitu mnohdy s nemalou nadační podporou. Častá je podpora ze strany velkých korporací, pro které je LINUX základem. Nejen ze světa LINUX distribucí REDHAT, SUSE ale i pragmatická podpora od MICROSOFT[21]. Vždy určitou dobu trvá než jsou elektronické čipy periferií připraveny i pro použití ve sféře OPENSOURCE. Bohužel, některé není možné pod správou LINUX systému rozběhat vůbec z důvodů proprietárního, veskrze komerčního uzavřeneného kódu, technologií a licenční politiky. To je připočteno k dobru kompatibilního POSIX hardwaru, který je přijímán jako světový standard. Naštěstí je většina hardwaru POSIX kompatibilní.

Na druhou stranu snad každá hardwarově prověřená a hlavně POSIX komponenta je v GNU/LINUX plně funkční. Zároveň je LINUX známý výbornou podporou i hodně starých nebo exotických technologií, které by v jiném operačním systému funkčne selhaly. Jsou distribuce se zaměřením právě na starý hardware. Je však samozřejmé, že čím výkonnější hardware tím lepších výsledků je dosaženo.

  • Vhodné jsou PCI, USB zvukové karty s CLASS compliant charakteristikou. Jinak to může být loterie. CLASS compliant zařízení je vyvinuto s podporou technologie PLUG & PLAY bez nutnosti instalovat proprietární software nebo originální ovladače od výrobce hardwaru.

  • CLASS compliant FIREWIRE karty pracují s LINUX FFADO[22] ovladači.

  • Už nepoužívané, stařičké ISA[23] karty jsou taky s fyzicky přítomnou ISA sběrnicí na MB[24] k použití.

TIP: Může být praktické vyzkoušet si svůj hardware v počítači s LiveCD[25] edicí DEBIAN, která se spouští přímo z CD/DVD nebo USB zařízení bez nutnosti instalace. Nainstalovaný operační systém, třeba WINDOWS, zůstane netknutý a je možné si kompatibilitu svého hardwaru vykoušet předem a bez jakéhokoliv rizika.

2.6. Hardware minimum

2019-06-24

Hardwarové požadavky[26] pro DEBIAN s 32-bit (i386) a 64-bit (amd64) architekturou:

Tabulka 1. Minimální hardware požadavky pro DEBIAN
CPU RAM (min) RAM HDD

bez desktopu

Pentium 4; 1 GHz

128 MB

512 MB

2 GB

s desktopem

Pentium 4; 1 GHz

256 MB

1 GB

10 GB

Je pochopitelné, že s tímto minimem mnoho muziky nebude ale i postarší počítač může skvěle posloužit. Instalovat grafickou nadstavbu není přímo nutné a některé aplikace lze použít i z příkazové řádky.

Dá se na něm vyzkoušet instalace, nastavení audia, lze z něj postavit jednoúčelový computer pro pořízení hlasového záznamu, k aplikaci nenáročných efektů. I pro účely kytarového efektoru může být plně postačující.

I instalací starších verzí distribuce nebo méně náročných verzí softwaru a s plným využitím jejich potenciálu lze i pomalejší počítač použít k solidní a dokonce plně profesionální práci. Několik desetiletí zpět používali mnohem slabší počítače jak pro tvorbu tak i při letech na oběžnou dráhu a fungovalo. Ne všechno je nutně o výkonech ale správných nastaveních v rámci možností.

2.7. OpenHardware

2019-06-24

Pro různé OPENHARDWARE experimenty jsou výborné právě LINUX distribuce. OPENHARDWARE hračky jako RASPBERRY PI[27] jsou vyvíjeny v duchu otevřených technologií GNU/LINUX. A RASPBERRY PI i ARDUINO se dají použít a používají i k tvorbě hudby. V tomto ohledu se do budoucna GNU/LINUX jeví jako velmi flebixilní operační systém s výbornými vlastnostmi. Ostatně LINUX distribuce jsou nasazeny na největších světových serverech pro kvalitu zabezpečení a v akademickém, univerzitním prostředí pro svoji tvárnost, univerzalitu a vysokou užitnou hodnotu. Stejné kvality skýtá, ač se o tom moc neví, i v možnostech nastavení audia nebo videa.

3. BIOS

3.1. Inicializace

2019-08-14

COMPUTER spoléhající při práci na specifický HW je lepší vypínat a zapínat. Ne restartovat. Zvuková karta je pro tvorbu hudby nepostradatelný HW. Měkký softwarový RESTART neresetuje BIOS a znovuzavádí pouze data operačního systému. Vypnutím počítače a jeho opětovným zapnutím se znovuzavádí i BIOS a inicializuje se i HARDWARE. Stejně tak není správné počítač se specifickým AUDIO HARDWARE hibernovat nebo k vypnutí používat režim spánku.

Před instalací operačního systému je potřebné nastavit BIOS[10]. Je to ideální protože instalace operačního systému se přizpůsobí hardwarovým možnostem počítače a absence zařízení zakázaného v BIOS nevynucuje při instalaci ani běhu operačního systému zavádět a nastavovat nepotřebné ovladače. Tak se instalací operačního systému některé položky potřebné pro SOUNDSYSTEM nastaví očekávaně bez potřeby dalšího zásahu.

? Je doporučeno prvotní přečtení manuálu k základní desce a věnovat pozornost nastavením BIOS.

Obrazovka nastavení BIOS se při startu počítače aktivuje v některých systémech klávesou [DEL], v jiných [F1] a v ještě jiných ještě jinak [ESC], [F2], [F10]…​ Na úvodní bootovací POST[28] obrazovce je klávesa aktivace BIOS uvedena. Text se věnuje zejména nastavením BIOS v klasických desktop počítačích. Notebooky jsou v možnostech nastavení BIOS velmi skoupé. Některé z notebooků vyžadují k inicializaci BIOS nastavení specifickou akci, která se dohledá v manuálu.

TIP: Při editaci hodnot v BIOS si provedené změny zapisujte. Psané se líp pamatuje.

Nesprávná volba v nastaveních BIOS je vratná.

  1. Změny lze vrátit do původního DEFAULT nastavení softwarově přímo v BIOS.

  2. Situace se řeší fyzickým odpojením počítačového zdroje od elektrické sítě s následným 30-vteřinovým vyjmutím a opětovným vložením baterie do původního místa na základní desce. Poté se zdroj znovupřipojí do elektrické sítě.

INFO: Nebudou-li funkce "Parallel Port", "Serial Port", "Floppy Disk" nebo "Floppy Drive" atd. nutné pro běh systému je doporučeno je deaktivovat. Tyto volby jsou v nastaveních BIOS implementované v rámci kompatibility se starším, vysloužilým hardwarem jako disketami, LPT-tiskárnami, sériovými porty. Ostatně, čím víc nevyužívaných funkcí bude v BIOS deaktivováno tím bude výpočetní výkon počítače výraznější se současným nižším zatížením celého systému.

3.2. Integrované AUDIO

2019-06-24

Chce-li si kdokoliv ponechat aktivovanou AUDIO kartu na MB[24] měl by myslet i na její možnosti. Je škoda nevyužít všechny AUDIO kanály, které nabízí. Jsou-li další kanály dostupné pak jsou v manuálu k MB tyto informace uvedeny. Při bližším prozkoumání možností základní desky a fyzickém propojení PINů[29] JUMPERem[30] se skryté možnosti kanálů AUDIO karty aktivují. Tento postup je však aplikovatelný pouze na klasických desktopPC stanicích. NOTEBOOK má hardware design řešen jiným způsobem.

Bude-li k digitalizaci tvorby použita zvuková karta externí a ne karta integrovaná na MB je záhodno integrovanou zvukovou kartu v BIOS deaktivovat. Platí i pro NOTEBOOK. Nastavení bývá v MENU "Advanced", "Devices", "Onboard Peripherals", "Integrated Peripherals" a je označeno jako "Onboard Audio", "Sound…​", "AC'97 Audio" atd…​ Nevýhodou integrované audiokarty bývá interference a její minimální odrušení od okolních prvků jako je polohovací zařízení. Při pohybu myší jsou při přehrávání často patrné rušivé zvuky. Ale při použití s PULSEAUDIO[31] jako druhým zvukovým serverem se dá integrovaná audiokarta použít jako další karta pro uživatelský poslech hudby, streaming audia nebo videa, kde primárně nezáleží na víc jak 15-milisekundovém zpoždění nebo exaktní synchronizaci.

INFO: Dvě paralelně instalované audiokarty v počítači, jejich priority, funkční přiřazení jednotlivým audioserverům je potřebné dodatečně nastavit přímo v operačním systému.

3.3. CPU Threading

2019-06-24

"Hyper-Threading" od INTEL nebo-li "SMT" od AMD jsou technologie pro virtuální rozdělení CPU na více samostatných jednotek. Jedno fyzické procesorové jádro je rozděleno na více logických CPU jednotek.

INFO: Analogicky se rozděluje jeden fyzický HDD na více logických oddílů (partitions).

S povolením této technologie se zvyšuje četnost přerušení v jádru, což je na úkor výpočetního výkonu procesoru. Na druhé straně je mnohdy pozorován nárust výpočetního výkonu při zpracování dat AUDIO aplikací. Záleží totiž i na kombinacích hardware komponentů a spuštěných procesech. Je asi lepší nechat nastavení zapnuto ale…​ může být asi lepší možností "Hyper-threading" vypnout. Důležité je vědět, že "Hyper-threading" je v některých BIOS implementován a má přímý vlyv na rychlost a kvalitu zpracování audiodat a celkovou odezvu systému. Pro testování stačí tuto možnost v BIOS zakázat/povolit a sledovat zatížení CPU při nahrávání nebo přehrávání více AUDIO/MIDI stop současně. Nastavení tohoto prvku je ryze na volbě uživatele. V LINUX softwaru ARDOUR[32] je v globálních nastaveních aplikace tato volba zahrnuta v nastavení "Use all CPU cores/threads".

3.4. VT technologie

2019-06-24

"INTEL VT", "INTEL VT-x", "INTEL VT-d" a "AMD-V", "AMD IOMMU" virtualizační technologie a software jako VIRTUALBOX, HYPER-V, VMWARE, linuxový QEMU jsou náročné na systémové prostředky. Někdy jsou v BIOS i jiná pojmenování pro virtualizace: "Virtualization Extensions", "Vanderpool". S deaktivací těchto nastavení jsou virtualizace jiných operačních systémů nedostupné ale pro tvorbu jsou virtualizace nepotřebné.

3.5. Power Management

2019-06-24

V BIOS lze nastavením spravovat i spotřebu hardwarových komponent nebo procesoru.

Volby PCI power-management nebo PCIe power-management se v BIOS naleznou v APM (Advanced Power Management) nebo ASPM (Active-state power management) nastaveních. APM slouží k nastavení PCI[1] sběrnic, ASPM k nastavení sběrnice PCIe[2].

INFO: Jakékoliv šetření energií je nastavením vhodným pouze u přenosných počítačů kvůli prodloužení doby v provozuschopném stavu a prodloužení životnosti baterií. V multimediálních desktopových počítačových systémech je volba či už z ekologického a/nebo finančního hlediska diskutabilní. Nahrávat 5x tu samou stopu levněji s líným systémem a praskajícím zvukem není hospodárnější ani ohleduplnější vůči přírodě. Nenechávejte počítač zbytečně běžet na volnoběh bez povšimnutí. To úplně postačuje. Monitor se dá manuálně vypnout tlačítkem na jeho panelu s ovládáním.

Digitální zpracování audiosignálu s aktivovanou funkcí škálování frekvence[33] procesoru je kombinací nevhodnou. V operačních systémech MACOS je tato funkce ošetřena výborně což je dáno vyladěním komunikace mezi hardwarovými a softwarovými prvky. Ale v klasických počítačích ne. Tato technologie dovoluje systému v případě nečinnosti nebo nízké potřeby okamžitého výkonu snížit frekvenci CPU a v případě potřeby ji opět zvyšovat. Ač se tím ušetří energie a výdrž baterie v notebooku, při práci na audiostanici funkce škálování zvyšuje zpoždění a odezvu systému. INTEL "SpeedStep", "EIST", AMD "Cool’n’Quiet", "PowerNow!", VIA "LongHaul" a IBM "EnergyScale" ekvivalent jsou v systému s potřebou minimálního zpoždění nežádoucí.

Podobné funkce mají i "Halt-states"[34] známé též jako "C-states" a slouží ke snížení spotřeby CPU zpomalením frekvenčního taktu nebo redukcí napětí. Při obnovení činnosti CPU do režimu s plným výkonem však dochází ke spoždění a ovlivnění odezvy počítače. Je snadné "HALT, AUTOHALT, C1-C6, C1E, C2E, C4E, …​" volby deaktivovat.

3.6. Latency Timer

2019-06-24

Hodnoty "PCI Latency Timer"[35] se volí s ohledy na kombinaci instalovaných hardwarových komponentů. PCI sběrnici může využívat v jeden okamžik jen jedno hardwarové zařízení.

"PCI Latency Timer" garantuje počet cyklů rezervovaných pro přenos dat konkrétnímu hardware zařízení. Při nastavení "64" je pro PCI zařízení, např. zvukovku v PCI slotu, garantováno 64 časových cyklů sběrnice. S datovou šířkou sběrnice 32-bit je v tomto intervalu po sběrnici přeneseno 256 bytů informací zpracovaných pouze zvukovou kartou a žádným jiným zařízením.

64 cyklů x 32-bit = 2048 bitů
2048 bitů / 8 = 256 bytů            1
1 1 byte = 8 bitů

V 64-bit systémech je za stejný časový úsek přeneseno dvojnásobné množství informací.

64 cyklů x 64-bit = 4096 bitů
4096 bitů / 8 = 512 bytů            1
1 1 byte = 8 bitů

Po využití přiřazených 64 cyklů je přiřazen čas buď dalšímu nebo opakovaně tomu samému zařízení.

S nízkou hodnotou "PCI Latency Timer" je sice přidělování cyklů na sběrnici flexibilnější ale častější přidělování těchto cyklů automaticky generuje potřebu vykonat více výpočetních operací na častá přerušení. Ve skutečnosti tedy klesá skutečná propustnost sběrnice. Obecně - s více PCI kartami se optimálním jeví nastavení s nižší hodnotou. S žádnou nebo jednou PCI kartou se "PCI Latency Timer" může nastavit na hodnotu vyšší.

3.7. Časovače - TIMERS

2019-06-24

V některých BIOS nastaveních jsou zpřístupněny volby pro nastavení "HPET"[36] hardwarového časovače[37]. Tato INTEL & MICROSOFT technologie má snahu integrovat do jednoho celku hardwarové časovače.

HW časovače:
  • 8254 Programmable Interval Timer (PIT)

  • Real Time Clock (RTC)

  • Advanced Programmable Interrupt Controller (Local APIC timer)

  • Timestamp Counter (TSC)

Přesnost "HPET" je ideální pro časování požadavků multimediálních prvků a pro aplikace citlivé na přesné časování. FULL HD přehrávání vyžaduje pro synchronizaci AUDIO a VIDEO rámců přesnost 1ms = 1000Hz což je pro AUDIO stanici doporučené nastavení. Tato hodnota bude v dalším nastavena v konfiguračním souboru LINUX jádra. "HPET" umožňuje nastavit časování s nanosekundovou přesností.

Technologie povoluje aplikacím vydávat příkazy out of sync. Softwaru to zaručí dosáhnout mnohem vyšší přesnosti bez potřeby zatěžovat systémový časovač častými hardwarovými přerušeními. Systémový časovač neaktualizuje stavy opakovaně ale tuto činnost předá aplikaci, která příkazem out of sync systému oznamuje aktuální stav aperiodicky dle potřeb aplikace. Pro systém tedy není nutné neustále periodicky zjišťovat stav.

Ve starších verzích BIOS může být uveden "HPET" pod jiným názvem například "ACPI HPET TABLE".

Novější 64-bit systémy mívají i rozšířenou volbu "HPET mode". Nastavení "64-bit" dovoluje plné využití možností 64-bit systému. V DUALBOOT[38] systému s paralelně instalovanými 32-bit a 64-bit operačními systémy a pro computer s 32-bit operačními systémy je pro správnou funkčnost vhodná volba "32-bit". Mód nastavení "HPET mode" se váže na povolené nastavení "HPET support".

3.8. UEFI & Secure BOOT

2019-08-05

UEFI[39] je poměrně nová náhrada za starší 16-bitový BIOS.

UEFI verze BIOS v počítačích počínaje WINDOWS 8 mají i volbu nastavení "Secure Boot"[39]. "Secure Boot" je mechanizmem ověření zjišťujícím zda je kód spuštěný UEFI firmwarem důvěryhodný. Je ochranou proti zlomyslnému kódu jenž by mohl být spuštěn již BOOT procesem. "Secure Boot" je nutné před instalací DEBIAN 9 "STRETCH" a starších deaktivovat. Tento mechanizmus nebyl ještě v DEBIAN 9 "STRETCH" plně ošetřen aniž by byl implementován předčasně a nesprávně.

INFO: Počínaje distribucí DEBIAN 10 "BUSTER" jsou ke spokojenosti všech uživatelů a pro zjednodušení věcí jak regulární podpora UEFI tak i "Secure Boot" kód implementovány.

BIOS[10] je vzhledem k jeho staršímu designu limitován 1MB paměti a omezeným přístupem k dalším prostředkům.

Starší BIOS nastavení LEGACY je pro instalaci DEBIAN 9 "STRETCH" a starších systémů zatím volbou vhodnější, praktičtější než moderní UEFI rozhraní. LEGACY mód je někdy pojmenován jako CSM (Compatibility Support Modul).

3.9. BOOT z médií

2019-06-26

Instalační proces bývá zahájen z bootovacího CD/DVD. V BIOS je zapotřebí nastavit vhodné pořadí startu z diskových jednotek. Alternativně, s předpokladem startu instalačního procesu z USB stick nebo externího HDD je nutné

  1. nastavit správné bootovací pořadí (sekvenci)

  2. aktivovat BOOT z USB flash disku nebo externího HDD.

Při startu systému lze manuálně volit preferované ad hoc BOOT zařízení bez přenastavení volby v BIOS. Nabídka se vyvolá klávesou zobrazenou na úvodní POST[28] obrazovce. Dohledat ji lze v BIOS nebo v dokumentaci k BIOS. Často je aktivační klávesou [F11] nebo [F12].

4. Operační systémy

4.1. OSs - obecně

2019-06-24

Operačních systémů známých i neznámých je mnoho. Nejvhodnější, nejznámější, určením pro desktopové využití jsou:

  • Operační systém MACOS[40] je od prvopočátku vyvíjen pro multimediální tvorbu. Je určen a zaměřen hlavně na profesionální zpracování multimédií. Vychází z rodiny UNIX-LIKE, BSD[41] systémů a je tedy svou architekturou velmi blízký architektuře linuxových distribucí. Mnohé linuxové příkazy a příkazy v MACOS jsou ne-li s totožnými funkcemi tak alespoň, na pár drobností, určitě příbuzné.

    Hardware a software jsou v systému výtečně odladěné a běží na hardware APPLE MACINTOSH.

  • Operační systém WINDOWS[42] není svou filosofií určen primárně pro multimediální aplikace, náročné na rychlost zpracování informace. Systémové nedostatky se pak musí dohnat silným, výkonným hardwarem. Aplikační rozhraní API[43] pro multimédia zajišťuje sada knihoven DIRECTX. Mnoho softwaru je však tvořeno výlučně pro WINDOWS. Chybí možnost instalovat RT-KERNEL[44]. Hanit WINDOWS jako multimediální operační systém však není na místě. Taky umí a mnohdy nad očekávání.

    Hardware je označován jako IBM-PC kompatibilní.

  • Operační systém GNU/LINUX[45] je asi operačním systémem nejuniverzálnějším a umí se přizpůsobit plnění různých úloh: servery, tablety, pracovní stanice, multimédiá, distribuce pro vědecká poznání, užití v mobilních telefonech atd. Jeho možnosti detailního nastavení jsou výborné. GNU/LINUX je možné přizpůsobit svým představám. Lze si vytvořit i vlastní jedinečnou distribuci s jádrem kompilovaným přímo na míru hardware.

    Velkou výhodou je možnost spuštění aplikací vyvinutých pro WINDOWS skrze přostředí WINE[46] i když má tato vlastnost určitá omezení. Stejně tak je dostupná i vrstva pro běh MACOS aplikací[47]. Obrovským kladem operačního systému GNU/LINUX, zkráceně LINUX je otevřenost zdrojového kódu.

    LINUX je hardwarově nezávislý a důsledkem je možnost jeho instalace i na jiné platformy. Distribuci DEBIAN lze instalovat jak na APPLE MACINTOSH tak i na IBM-PC computerech. Podporuje i mnoho dalších CPU architektur a hardwarových platforem.

4.2. MMX distribuce

2019-06-24

Jednou z cest jak si zprovoznit počítač s určením pro produkci hudby nebo v začátcích pro domácí tvorbu je pořídit si hardware a instalovat některou s aktivně(01.2020) vyvíjených LINUX distribucí se zaměřením právě na MMX[48] (multimediální) tvorbu.

  • AV LINUX[49]

  • KX STUDIO[49]

  • UBUNTU STUDIO[49]

  • FEDORA JAM[50]

  • DIDJIX[51]

    Distribuce DIDJIX není klasickou MMX distribucí. Instaluje se na USB klíčenku pouze s audio aplikací Mixxx a je určena pro live DJ použití.

  • AUDIO LINUX[51]

    Jedná se o komerční distribuci a je také dostupná pro Raspberry PI[REF]. Lze ji instalovat a používat i na profesionálních počítačích.

Tyto alternativy mohou někomu vyhovovat víc pro snadnou instalaci. V multimediálních distribucích je všechno již nastaveno v základu hned po nainstalování. Po instalační proceduře si kdokoliv v klidu zahraje na kytaru bez potu, slz a nadávek. Ale vzniká i potenciální problém. Uživatel se nemusí trápit. Pro pohodlí dobré. Pro pochopení principů digitálních audiotechnologií ne plně postačující. I zvuk se musí umět. Začne-li se však digitálnímu zpracování hudby věnovat s větším nadšením, časem mu nezbyde jiná možnost než se podívat do systému hlouběji. Tím důvodem jsou možnosti nastavení.

Zajímavými distribucemi mohly být i OPENARTIST[52] nebo TANGO STUDIO[53] distribuce. Avšak jejich vývoj stagnuje a aktualizované verze jsou dostupné v dlouhých časových intervalech. OPENARTIST distribuce zřejmě ustrnula úplně a poslední aktualizace byla provedena před několika lety. Je to škoda ale linuxové MMX distribuce se vyvýjejí dle potřeb, často vznikají v pouhém entuziasmu a bez jakékoliv podpory. Pouze některé mají štěstí a zázemí.

Podrobnou, často českou webovou nápovědu má i distribuce ARCHLINUX[54]. Možná další kandidát na LAW (Linux Audio Workstation) operační systém.

Z doslechu i čteného na internetu by mohla být dobrou multimediální distribucí i GENTOO[55] ač patří k distribucím, které vyžadují pokročilejší znalost a orientaci v LINUX.

Distribuce, jako DEBIAN[56], bez nutně multimediálně orientovaných ambicí jsou, ač mimořádně tvárným, přesto stále polotovarem. Kdo pochopí jak si tento produkt přispůsobit je překvapen možnostmi, které může poskytnout z počátku konzervativní, nepodbízivý operační systém, tvořen s myšlenkou svobodných rozhodnutí, praktičnosti, flexibility a funkčnosti.

INFO: Pro zajímavost uvedu, že v počátcích vývoje distribuce DEBIAN byla výrazným sponzorem nadace FSF[57] s projektem "Project GNU of The Free Software Foundation". Původ první části GNU[58] v názvu operačního systému GNU/LINUX. Otevřený a svobodný GNU software ve spojení s otevřeným kódem jádra LINUX.

V dalším textu bude věnována pozornost především nastavením operačního systému GNU/LINUX a seznámení s distribucí

DEBIAN:
  • vytváří základ pro mnoho jiných multimediálních systémů

  • je výborně vybaven programovými balíčky

  • vývojáři aplikací ho přijali jako standardní LINUX distribuci

  • je oblíben a ověřen uživateli, v distribuční síti je veden od srpna 1993

  • na internetu je v příkladech zmiňován téměř v každé diskuzi

  • má výbornou licenční politiku a sympatickou filosofii

  • je stabilní, robustní, lehký, svižný a neuspěchaný

Přidáním softwarových zdrojů a repozitářů[59] do DEBIAN se dá programové vybavení distribuce rozšířit. Tato řešení však mnohý vývojář a správce programových balíčků vidí nerad kvůli stabilitě a kompaktnosti LINUX distribuce DEBIAN.

5. Instalace DEBIAN

5.1. Předinstalační info

2019-08-05

Rychlost instalačního procesu závisí na rychlosti síťového připojení, mechaniky, počítače. Vcelku, na starších počítačích, zabere instalace operačního systému zhruba 1 hodinu. Na moderních PC je potřebný čas o poznání kratší.

Za připomenutí stojí nutné hardware minimum pro instalaci distribuce DEBIAN.

Tabulka 2. Minimální hardware požadavky pro DEBIAN
CPU RAM (min) RAM HDD

bez desktopu

Pentium 4; 1 GHz

128 MB

512 MB

2 GB

s desktopem

Pentium 4; 1 GHz

256 MB

1 GB

10 GB

Pojmenování desktop v této souvislosti nepopisuje hardwarovou charakteristiku desktopPC ale popisuje formu uživatelského rozhraní. V desktop variantě je v instalaci standardně implementováno i uživatelské prostředí s okny - GUI[60]. Ve variantě instalace OS bez desktopu se instaluje jednoduché, spartánské prostředí příkazové řádky vhodné pro odborníky a s určením pro specifické účely.

Na hardware nesplňujícím podmínky pro instalaci se systém zřejmě taky nějak nainstaluje ale jeho spouštění bude nekonečné, asi s chybami a systém bude téměř nepoužitelný. Už tyto minimální požadavky na hardware jsou pro tvorbu téměř nedostatečné ale…​[REF].

Při opomenutí nebo nesnázích se instalační proces kdykoliv přeruší a ukončí volbou "Jít zpět". Někdy s nutností tento úkon opakovat až k úrovni hlavního menu. V MENU pak stačí aktivovat volbu

> "Přerušit instalaci"
! U instalačního procesu je doporučené číst nápovědu a text generovaný instalací. Důležité je psát si poznámky. Název počítače, doménové jméno, uživatelská jména, hesla, rozdělení harddisku a jiné informace můžou být potřeba při práci nebo i nechtěné opravě systému.

Instalační příručky[61] pro stabilní verze jsou na webových stránkách DEBIAN pravidelně aktualizovány. Informace o verzích a možnostech stažení instalačního ISO obrazu lze nalézt na oficiálních[62] stránkách distribuce.

  1. Vyzkoušet DEBIAN ve verzi LiveCD[25] edice lze přímo z CD/DVD nebo USB flash disku bez nutnosti instalace. Nainstalovaný operační systém, třeba WINDOWS, zůstane netknutý a je možné si kompatibilitu[REF] hardware vykoušet bez jakéhokoliv rizika.

    Optické mechaniky nejsou rychlé a proto upozorňuji na lenost jakéhokoliv operačního systému zpuštěného z CD/DVD média. Tento fakt se dá připodobnit k vysokému zpoždění a slabé odezvě systému např. při nahrávání. Proto je reakční čas v AUDIO systému jedním z klíčových faktorů a maximální lehkost a svižnost OS je nutností.

  2. Instalace systému OFFLINE se může od síťové instalace v detailech lišit. Doporučuji stáhnout a na nosiče zapsat všechny obrazy ISO. V instalaci OFFLINE jsou pak k dispozici všechny programové balíčky. Volba tohoto typu instalace ovšem nezahrnuje nejaktuálnější verze software.

    Vypálené CD/DVD si očíslujte, pojmenujte. Instalační proces bude v průběhu instalace vyžadovat konkrétní médium.

  3. OS je možné zavést při startu počítače také prostřednictvím USB flash disku. Stažené CD/DVD ISO obrazy se postupně zapíší na USB flash disk programem[63], jenž do disku zapíše i příznak zavádění a bude z něj možné zavést při BOOT procesu i systém zapsaný na USB flash disku.

  4. Instalace ONLINE se síťovým připojením k zrcadlu archivu DEBIAN zahrnuje i aktualizované verze softwaru. V následujícím se věnuji především tomuto instalačnímu procesu.

Není bezpodmínečně nutné mít při instalaci v počítači připojené harddisky, na kterých jsou instalovány jiné operační systémy nebo nahraná jiná, pro instalaci nepotřebná data. Tyto harddisky lze k systému připojit dodatečně a nastavit je až po instalaci. Nastavit je v průběhu instalačního procesu lze taky a v dalším textu uvádím i příklad pro připojení nelinuxových oddílů.

5.2. MENU

2019-06-26

Zkontrolujte, propojte a zapněte všechen hardware. Instalace začíná vložením instalačního CD/DVD do mechaniky nebo zasunutím bootovacího USB flash disku.

! Před započetím instalačního procesu je nutné v BIOS správně nastavit BOOT sekvenci[REF]. Jak pro instalaci z USB Flash disku tak i pro pro instalaci z CD/DVD.

Po načtení informací se zobrazí úvodní nabídka s volbami pro spuštění.

"DEBIAN GNU/Linux installer boot menu"
  • Nejběžnější kombinace ≧ DEBIAN 10 "BUSTER" s UEFI

    a secure boot v BIOS[REF] nastartuje přímo do UEFI mode.

  • V instalaci ≧ DEBIAN 10 "BUSTER"

    na starší computer[REF] je na výběr mezi BIOS a UEFI mode.

  • V distribucích ≦ DEBIAN 9 "STRETCH"

    probíhá instalace v BIOS módu. Bootování na systému s UEFI se řeší instalací GRUB do EFI cesty pro výměnná média[REF].

Ať proběhne instalace v kterémkoliv módu jsou jak BIOS tak UEFI instalační procesy téměř stejné. Rozdíly mezi mým popisem instalace a reálnými instalačními kroky jsou minimální. Proto nejsou malé odlišnosti mezi BIOS a UEFI módem až tak důležité pro vysvětlování. Důležité je, že si kdokoliv může podle textu instalovat i starší verzi operačního systému na starší computer. Nezáleží ani na architektuře (32-bit nebo 64-bit).

Minimální anglická textová nápověda s možnostmi instalace se zobrazí výběrem volby "Help". Z nápovědy zpět do instalačního MENU je potřeba zapsat příkaz menu.

V celém instalačním procesu slouží:
  • tabulátor [TAB] k přesunu mezi volbami

  • kurzorové klávesy [UP] , [DOWN] , [LEFT] , [RIGHT] k pohybu v nabídkách

  • mezerník [SPACE] k výběru/vyjmutí položky

  • klávesa [ENTER] k potvrzení volby a spuštění příkazu

  • v oknech bez tlačítek může pro návrat pomoci klávesa [ESC]

Výběr textové alternativy instalačního procesu

> "Advanced options"
    > "Expert install"

nabízí možnost prozkoumat a přizpůsobit nastavení podle konkrétních požadavků a potřeb. Instalovat lze i v grafickém prostředí "Graphical expert install" s příjemnějším ovládáním myší a hezčím instalačním rozhraním. Technický rozdíl není žádný. Po aktivaci instalačního procesu se vykreslí obrazovka s hlavním MENU.

"DEBIAN installer main menu"

5.3. Lokalizace

2020-12-10

Dalším krokem je výběr jazyka.

> "Choose language"

Zbývající instalační proces se přizpůsobí vybranému jazyku.

TIP: Při jakýchkoliv pochybnostech pokračujte klidně a bez obav v instalaci s odsouhlasením nabídnuté výchozí DEFAULT předvolby.

Následují další nastavení instalovaného systému.

> "Vybrat umístění"
> "Nastavit místní prostředí"
> "Access software for a blind person..."           1
> "Nastavit klávesnici"
1 Pro slabozraké, není-li potřeba - přeskočte a přejděte na další položku.

5.4. Komponenty

2019-06-26

Následují kroky

> "Rozpoznat a připojit CD-ROM"                     1
> "Nahrát komponenty instalátoru z CD"              2
1 [ENTER]. Instalační proces připojí CD-ROM automaticky.
2 Mezerníkem [SPACE] vyberte:
  • "choose-mirror"
    Komponentu určitě vyberte. Je zapotřebí při instalaci ze sítě.

  • "lowmem"
    Položku označte instalujete-li na computer s malou kapacitou paměti (méně < 1GB). Na nových počítačích není komponenta potřebná.

  • "sound-modules"
    Položka svádí k zatržení ale nemá s tvorbou nic společného. Tato komponenta instalátoru je pouze pro potřeby instalačního procesu.

  • výběr dalších možností je na volbě znalého uživatele.

Po odsouhlasení a nahrání dodatečných komponent instalace pokračuje.

5.5. Nastavení sítě

2020-12-11

> "Rozpoznat síťový hardware"                       1
> "Nastavit síť"                                    2
    > "Jméno počítače"                              3
    > "Název počítače"                              4
    > "Název domény"                                5
> "Vybrat zrcadlo s archivem Debianu"               6
    > "Protokol pro stažení souborů"                7
    > "Země se zrcadlem archivu Debianu"            8
    > "Zrcadlo s archivem Debianu"                  9
1 [ENTER]
2 Volba "automaticky".
3 Pro identifikaci v lokální síti.
AUDIO a MIDI propojení jsou na této síti zcela nezávislé a proto není nutné nic nastavovat. Ostatně - lokální síť lze nastavit i později v nainstalovaném systému.
4 Dle libosti, ideálně bez interpunkce a mezer.
Pro názornost v některých příkladech zvolím název "debian". Název počítače lze později editovat.
5 "Pokračovat"
6 Pro instalaci jádra operačního systému a základních komponentů.
V průbehu instalace bude tento krok opakován ještě jednou avšak v druhém případě se bude jednat o výběr úložiště s daty pro instalaci programového vybavení.
7 Nechte http.
8 Česko
9 ftp.cz.debian.org

5.6. Uživatelé a hesla

2019-06-26

> "Nastavit uživatele a hesla"

Uživatelské heslo volte klidně jednoduché. Stačí dvě stejné písmena. Zpočátku, bez nastaveného automatického přihlašování, nebude přihlašování otravné. Hesla se dají později měnit.

Určitě si vložené údaje zapište. Název účtu a hesla budou po instalaci potřebné:

  • k přihlášení do uživatelského účtu;

  • heslem pro linuxového administrátora se bude správce přihlašovat ke svému ROOT[64] účtu při správě systému;

  • údaje mohou být potřeba i pro obnovu systémových souborů a/nebo při opravě systému.

    > "Povolit stínová hesla"                       1
1 "Ano"

S odsouhlasením voleb "Povolit přihlášení jako root" a "Vytvořit účet pro běžného uživatele" je poinstalační práce se systémem a daty bezpečnější a hlavně klidnější. Při jakémkoliv náznaku manipulace s důležitými systémovými soubory je na vyžádání nutné buď zadat heslo ROOT nebo systém žádnou akci neprovede a upozorní hláškou.

? S nastavením volby "sudo" je sice situace jednodušší ale méně přehledná. Ostrá hranice mezi nevinným uživatelským a radikálním systémovým příkazem se v pracovním prostředí značně rozmaže. Stačí v příkazové řádce systémovým příkazům předřadit sudo a jakýkoliv i systémový příkaz bude vykonán bez zadání hesla.

Při běžné práci tedy nemusí mít uživatel obavy z nechtěných nevědomých chyb a překlepů v systémovém prostoru. V krajní situaci, dopustí-li se uživatel fatální chyby ve svém účtu, může si jako správce vytvořit nový uživatelský účet a data z původního účtu do něj zkopírovat a pokračovat v práci.

    > "Celé jméno nového uživatele"                 1
    > "Uživatelské jméno pro nový účet"             2
1 Může zůstat prázdné.
2 Z praktických důvodů pro názornost v příkladech zvolím "studio". Nezadávejte jméno s mezerami nebo speciálními znaky.

V instalaci DEBIAN 10 "BUSTER" s aktivovanou komponentou lowmem[REF] je instalační krok pro uvolnění paměti:

> Freememory (low memory install)

Tento krok je u moderních počítačů nedůležitý a lze ho přeskočit.

5.7. Rozdělení disku

2020-05-07

> "Nastavit hodiny"
> "Rozpoznat disky"                                 1
> "Rozdělit disky"                                  2
1 [ENTER]
2 V dalším textu popíšu rozdělení harddisku manuálně co nejsrozumitelněji, co nejnázorněji a co nejpodrobněji.

Disková oblast může být volné místo nebo diskový oddíl.

  • Volné místo je oblast, která zatím nebyla alokována. Nemá určenou velikost, parametry ani jiné vlastnosti.

  • Diskový oddíl - PARTITION[65] - je již upravená, systémem připojitelná a čitelná oblast.

DEBIAN vyžaduje minimálně 10 GB místa. Operační systém samotný není náročný na místo ale uživatelskou instalací dalších programů a vytvářením nových dat je doporučení na místě. Avšak ani doporučená kapacita HDD nemusí být vhodnou pro uchování velkého množství objemných dat nahraných z AUDIO karet. Řešením je pozdější instalace dalšího harddisku.

Rozdělit disk na jednotlivé oddíly manuální cestou je krok náročnější ale praktický až potřebný:

  1. Vytvořená uživatelská data se zapisují do jiného oddílu než data systémová.

    Záloha, reinstalace nebo instalace jiné distribuce je potom snadná a se zachováním původních uživatelských dat, které budou nahrány v jiném oddílu.

  2. Dalším ale o to důležitějším kritériem je nastavení oddílu pro ukládání dat použitých pro audio tvorbu.

    Je potřeba - není to nezbytné - nastavit parametry oddílu pro čtení i zápis v realném čase. Bez rozdělení harddisku na oddíly systému a uživatelských dat by bylo toto nastavení problematické.

Rozdělení harddisku se dá i zkoušet, vracet zpět, upravovat a znovunastavovat. Při pochybách volte na obrazovce možnost "Jít zpět" a změny neukládejte. Tato volba žádné změny na disk nezapíše i kdyby jste v nastavení nechtěně volili zformátování celého oddílu. Z instalační nábídky se poté lze vrátit zpět k volbě "Rozdělit disky" a rozdělení oblastí opakovat. V okně hlavní tabulky rozdělení harddisku lze "Vrátit zpět změny provedené na oblastech".

Zapsání změn proběhne až aktivací volby

> "Ukončit rozdělování a zapsat změny na disk"

Po odsouhlasení otázky "Zapsat změny na disk?" už cesta "Jít zpět" postrádá smysl ač přerušit instalaci lze neustále ale už s novým nastavením tabulek oddílů na harddisku. Při rozdělování harddisku je jakékoliv zbrklé [ENTER] vážným problémem.

Než se však cokoliv zapíše na harddisk popíšu rozdělení v následujícim textu.

5.7.1. Preliminary

2020-12-11

Dříve nahraná uživatelská data, nebo jiný operační systém, která mají být v novém systému dostupná přes správce souborů musí mít:

  • Správně nastaven typ souborového systému.

    Instalační proces automaticky rozezná geometrii harddisku a oddíly na něm. Při editaci bude zapotřebí jen pár úprav.

    • LINUX oddíly mají v uživatelské praxi převážne souborový systém EXT4[66].

    • Souborový systém oddílů WINDOWS bude nejšpíš NTFS[67].

    • Externí harddisky mají NTFS. Podle potřeb je lze formátovat na EXT4.

    • Flešky jsou veskrze VFAT[68] (FAT16 nebo FAT32).

  • Definovaný bod připojení - MOUNT POINT.

    • Bod připojení celého linuxového systému bude v "/".

    • Bod připojení domovského adresáře bude v "/home".

    • Bod připojení oddílů jiných operačních systémů směrujte z příkladu této instalace do "/home/studio". Názorný příklad připojení WINDOWS oddílu je uveden i v dalším textu[REF].

      INFO: Oddíly jiných OSs není bezpodmínečně nutné připojovat při instalaci. Tato nastavení jsou později editovatelné[REF].
      !! Otevřete-li oddíl jiného OS ve správci souborů bude mít jakákoliv akce přímý vliv i na soubory v tomto operačním systému. Smazaný soubor, ač smazaný v LINUX, bude po nabootování jiného OS smazaný i v tomto operačním systému.
      • Kupříkladu vytvořením bodu připojení "/home/studio/W10", jeho nastavením na NTFS bude WINDOWS oddíl v souborovém správci právě ve složce "/home/studio/W10".

      • Stejně tak se dá vytvořit další přípojný bod např. "/home/studio/W10_D". Nastavte typ NTFS.
        Otevřením adresáře "/home/studio/W10_D" se dostanete přímo do WINDOWS a k jeho souborům na oddílu D:. Můžete si své windowsácké soubory přehrávat, kopírovat, přesunout nebo upravovat přímo v LINUX.

      • Takto můžete připojit další a další disky i jiných operačních systémů. Vytvořte si pro oddíl MOUNT POINT - bod připojení a nastavte správný typ souborového systému.

Název adresáře, do kterého si připojíte nějaký oddíl je volitelný. Nepoužijte bez rozmyslu speciální znaky nebo mezery. Přípustné je podtržítko "_", pomlčka "-" nebo tečka "." ale nevkládejte je na začátek nebo konec názvu.

5.7.2. Hlavní tabulka

2020-05-07

V celé instalaci slouží:
  • tabulátor [TAB] k přesunu mezi volbami

  • kurzorové klávesy [UP] , [DOWN] , [LEFT] , [RIGHT] k pohybu v nabídkách

  • mezerník [SPACE] k výběru/vyjmutí položky

  • klávesa [ENTER] k potvrzení volby a spuštění příkazu

  • v oknech bez tlačítek může pro návrat pomoci klávesa [ESC]

Máte-li systém s více harddisky je nastavení podobné jak popisovaný postup. Pouze se ve výpisu zobrazí více harddisků - každý s vlastními oddíly.

!! Na harddisku obsahujícím již dříve nahraná data nastavujte pouze oblasti s volným místem. Zcela jistě se nesmí formátovat jakýkoliv oddíl, na kterém musí zůstat data zachována. Za každých okolností se vyhněte manipulaci s UEFI oddílem. Má souborový systém ESP.

Volba "Smazat oblast" v nastaveních upravovaného oddílu vytvoří místo pro další použití. Oblast lze také jenom uvolnit a později formátovat na některý ze souborových systémů (EXT4, NTFS…​) a připojit z nainstalovaného systému.

V tomto bodě instalace se jakékoliv změny zapisují pouze do operační paměti a žádné změny na disku nebudou zaznamenány fakticky. Vždy je možné se při nezdařeném nastavení vrátit do výchozího bodu[REF] a rozdělení harddisku opakovat.

  • Formátovaný oddíl bude v tabulce označen písmenem "f" (format).

    Jakýkoliv souborový systém a data budou po odsouhlasení "Ukončit rozdělování a zapsat změny na disk" přepsána.

  • Oddíl neformátovaný bude označen písmenem "k" (keep).

    Všechny data na něm zůstanou zachována. Bude-li na tomto oddílu nastaven MOUNT POINT[REF] bude oddíl po instalaci přístupný ze správce souborů. Nebude-li nastaven - nic se neděje - dá se nastavit i po instalaci v souboru FSTAB.

  • Nepřirazené oddíly nebo oblasti jsou označeny jako volné místo.

    Lze na nich vytvářet nové oddíly. Třeba další v "/home/studio/Backup" pro zálohování. Ve správci souborů lze potom vytvářet zálohy nebo kopie důležitých souborů do složky "/Backup", která bude v jiném oddílu na harddisku ale při běžné práci se to nepozná. Složka jako složka.

  • Oddíl s bootovacím příznakem bude označen hvězdičkou "*".

5.7.3. Editace oddílů

2020-05-08

  • Na UEFI[REF] počítačích je počet oddílů nedůležitý.

    Původní BIOS tabulka MBR pro rozdělení disku na oddíly je nahrazena GPT[69] tabulkou. Krom jiného umožňuje připojit disky větší než 2TB.

  • Na BIOS[REF] computerech je v MBR[70] možné vytvořit nanejvýš 4 x PRIMARY oddíl.

    Máte-li už na harddisku nahrány dva jiné oddíly, kupříkladu WINDOWS C a D zůstávají k dispozici pouze dva volné oddíly pro LINUX. Jeden se dá vytvořit jako PRIMARY ale další už musí být EXTENDED chcete-li vytvořit víc jak čtyři oddíly. Do vytvořeného EXTENDED se poté zapisují další LOGICAL oddíly, které se nastavují identicky jak PRIMARY.

    Instalační proces se zeptá na výběr mezi PRIMARY a EXTENDED aktivací volby "Vytvořit novou oblast".

Nezáleží na pořadí oddílů jako v příkladu: "SWAP, /, home" atd. Můžete je umístit na začátek, na konec, zpřeházeně. Computeru je jedno kde to je ale zda-li to tam vůbec je. Pořádek oceníte při úpravě souboru s rozdělením harddisku.

Na disk se editací oddílů žádné změny nezapisují. Žádný z oddílů nebude přepsán. Stejně tak se nevymažou žádná data, které už na harddisku jsou. Nastavování se nedotkne ani jiných operačních systémů. V pochybnostech se dá kdykoliv vrátit zpět[REF] nebo i úplně ukončit instalaci[REF]. Počítač zůstane ve stejném stavu v jakém byl před započetím instalace. Stačí před startem vyjmout instalační CD/DVD ať se nespustí opětovná instalace.

> "Způsob rozdělení"
    > "Ruční"
!! Instalujete-li do computeru s UEFI technologií - buďte mimořádně opatrní na oddíl ESP (EFI System Partition). Tento oddíl je pro funkčnost UEFI nepostradatelný. Je na harddisk nahrán výrobcem počítače. Za normálních okolností je to skrytý oddíl ale LINUX je ukecanější. Linuxový systém lze instalovat i bez UEFI a fungovat bude ale proč kvůli nepozornosti přeinstalovat (půjdou-li přeinstalovat) i jiné operační systémy nebo nevyužít možností, které počítač nabízí.
!! V oblastech s nahranými daty nebo jiným operačním systémem nic nepřepisujte nevíte-li co děláte. V důsledku nepozornosti se data jiných operačních systémů poškodí nebo zničí.

Otevře se okno s hlavní tabulkou rozdělení harddisku. Uvedu pár příkladů s vytvořením a/nebo připojením oddílů:

Oddíl pro SWAP - linuxový odkládací prostor
    "pri/log" s volným místem
        "Vytvořit novou oblast"
        "Velikost nové oblasti"                             1
        "Použít jako: odkládací prostor"                    2
        "Skončit s nastavováním oblasti"                    3
1 Linuxový SWAP prostor by měl mít velikost alespoň dvojnásobku operační paměti.
2 SWAP - linuxový odkládací prostor - obdoba stránkovacího souboru ve WINDOWS.
3 SWAP bude formátován vždy a je to v pořádku. Volba s formátováním u nastavení SWAP oddílu chybí.
Volba "Skončit s nastavováním oblasti" vrátí zpět do okna hlavní tabulky.
Oddíl "/" pro DEBIAN SYSTEM
    "pri/log" s volným místem
        "Vytvořit novou oblast"
        "Velikost nové oblasti"                             1
        "Použít jako: Žurnálovací souborový systém Ext4"    2
        "Přípojný bod: /"                                   3
        "Příznak zavádění:"                                 4
        "Skončit s nastavováním oblasti"                    5
1 Dle možností systému (5GB určitě). Na moderních terabajtových harddiscích lze operačnímu systému přiřadit i 100GB.
2 Nejčastějším uživatelským typem souborového systému pro LINUX je EXT4.
3 Do tohoto oddílu budou nahrána data operačního systému, budou se do něj instalovat programy, budou v něm dočasné soubory…​
4 Klávesou [ENTER] aktivujte příznak zavádění - BOOT FLAG.
BOOT FLAG pro BOOT systému bude jen a pouze v tomto kořenovém oddílu "/" harddisku. V nastavení jiných oddílů ho už nenastavujte.
5 Oddíl bude formátován automaticky instalačním procesem.
Volba "Skončit s nastavováním oblasti" vrátí zpět do okna hlavní tabulky. V hlavní tabulce rozdělení bude tento bootovací oddíl označen hvězdičkou "*"[REF] a písmenkem "f"[REF] - bude formátován.
Oddíl domovského adresáře "/studio" pro AUDIO DATA
    "pri/log" s volným místem
        "Vytvořit novou oblast"                             1
        "Velikost nové oblasti"                             2
        "Použít jako: Žurnálovací souborový systém Ext4"    3
        "Přípojný bod: /home"                               4
        "Volby připojení: noatime,nodiratime"               5
        "Skončit s nastavováním oblasti"                    6
1 Oblast je určením pro uživatelská data.
2 Může být použito všechno dostupné místo, nechcete-li vytvořit další oddíly.
3 Nejvhodnějším typem souborového systému pro účely audio je EXT4.
4 Účty všech uživatelů jsou v DEBIAN ve složce "/home". V příkladu instalace byl vytvořen účet studio[REF]. Po instalaci bude tedy uživatelským domovským adresářem "/home/studio".
5 Volba noatime[71] neaktualizuje přístupový čas k souboru kdykoliv je soubor načten. Zkrátí se doba čtení a zápisu při přístupu k souborům. Volba nodiratime plní podobnou funkci ale ve vztahu k adresářům. Stačí zatrnout volbu noatime jenž nodiratime implikuje.
6 Oddíl bude formátován automaticky instalačním procesem.
Volba "Skončit s nastavováním oblasti" vrátí zpět do okna hlavní tabulky. V hlavní tabulce rozdělení bude tento oddíl označen pouze písmenkem "f"[REF] - bude formátován.
Příklad pro připojení oddílu WINDOWS
    "WINDOWS"                                               1
        "Použít jako: souborový systém NTFS                 2
        "Přípojný bod: /home/studio/W10_C"                  3
        "Volby připojení:"                                  4
        "Skončit s nastavováním oblasti"                    5
1 Otevřete nastavení WINDOWS oddílu. Poznáte jej podle velikosti a že se nejedná o volné místo.
2 Nastavení souborového systému je důležité. Nové windowsy mají NTFS[67].
3 Přípojný bod se musí zapsat výběrem volby s ručním zápisem. Bude odkazovat do složky, ve které chcete mít přístup k souborům operačního systému WINDOWS. Po instalaci budou WINDOWS data ve správci souborů ve složce "/home/studio/W10_C". Když v této složce cokoliv přepíšete nebo vymažete tak se to projeví i v adresářích po spuštění WINDOWS[38].
4 Při nastavování jiného OS neprovádějte žádné změny, o kterých nic nevíte. Nastavením parametru readonly se do WINDOWS dostanete, můžete soubory do LINUX kopírovat, soubory lze číst, jdou přehrát ale linuxový systém nedovolí v této složce cokoliv mazat, upravovat, přepisovat nebo do ní kopírovat. Radši si o možnostech nastavení zjistěte víc informací. Budete-li opatrní nemusíte parametr readonly nastavovat vůbec.
5 Před ukončením nastavení si zkontrolujte zda oddíl nebude formátován. I kdyby jste formátování nevědomě odentrovali - nic se nestane. Tato nastavení se zatím na disk neukládají a změny jsou vratné[REF].
Volba "Skončit s nastavováním oblasti" vrátí zpět do okna hlavní tabulky. V hlavní tabulce rozdělení musí být tento oddíl označen pouze písmenkem "k"[REF] - data zůstanou zachována a oddíl nesmí být formátován.
Jiný příklad pro vytvoření oddílu pro zálohy
    "pri/log" s volným místem
        "Vytvořit novou oblast"                             1
        "Velikost nové oblasti"                             2
        "Použít jako: Žurnálovací souborový systém Ext4"    3
        "Přípojný bod: /home/studio/Backup"                 4
        "Volby připojení:"                                  5
        "Skončit s nastavováním oblasti"                    6
1 Oblast je určením pro zálohy. Do tohoto oddílu na harddisku si můžete kopírovat jakékoliv soubory jako zálohu.
2 Nezapomeňte, že při vytváření záloh nebo kopírování všech dat z jednoho oddílu na jiný musí být pro zálohy vytvořen dostatek místa.
3 EXT4.
4 Přípojný bod se musí zapsat ručně, složku si můžete pojmenovat po svém a instalační proces ji automaticky vytvoří. Data budou k nalezení v adresáři "/home/studio/Backup" jest-li jste nezadali jiný přípojný bod než je v příkladu.
5 Pro zálohu nemusí být žádné volby připojení, noatime použijte pouze u oddílů, ve kterých budou data pro zpracování v reálném čase.
6 Oddíl bude formátován automaticky instalačním procesem.
Volba "Skončit s nastavováním oblasti" vrátí zpět do okna hlavní tabulky.
Další příklad pro oddíl s uživatelskými daty
    "pri/log" s volným místem
        "Vytvořit novou oblast"                             1
        "Velikost nové oblasti"                             2
        "Použít jako: Žurnálovací souborový systém Ext4"    3
        "Přípojný bod: /home/studio/Documents"              4
        "Volby připojení:"                                  5
        "Skončit s nastavováním oblasti"                    6
1 Oblast je určením pro uživatelská data.
2 Pár dokumentů, poznámek atd.. moc místa nepotřebuje.
3 EXT4.
4 Postup je jako u oddílu pro zálohu pouze přípojný bod bude odkazovat do složky "/home/studio/Documents".
5 Volba noatime je pro obyčejná uživatelská data k nepotřebě stejně jako u oddílu pro zálohu.
6 Oddíl bude formátován automaticky instalačním procesem.
Volba "Skončit s nastavováním oblasti" vrátí zpět do okna hlavní tabulky.
TIP: Instalujete-li českou verzi DEBIAN vytvořte si raději MOUNT POINT "/home/studio/Dokumenty" než "/home/studio/Documents". Poté se nebudou v domovské složce objevovat dva adresáře "/Documents" a "/Dokumenty" zároveň. Ale tyto detaily se dají vyřešit i po instalaci v souboru FSTAB nebo v uživatelském prostoru.

Takto lze vytvořit nebo připojit další a další oddíly a/nebo upravovat jejich nastavení. Stačí správně nastavit:

  1. typ souborového systému[REF];

  2. mount point[REF].

V tomto kroku lze oblasti znovunastavovat a bez obav dál upravovat. V pochybnostech se dá vrátit zpět[REF] nebo i úplně ukončit instalaci[REF]beze jakýchkoliv změn na počítači. Až do odsouhlasení provedených změn.

? Před odsouhlasením změn si nastavení zapište. V nesnázích jsou poznámky neocenitelné.
!! Odsouhlasením se změny zaznamenané na tabulkách oddílů zapíší na disk a už je nelze odvolat. Oddíly s nastaveným formátováním budou zformátovány, vytvoří se nové oddíly, zapíší se přípojné body a všechna odsouhlasená nastavení. Není cesty zpět. Malá chyba může způsobit obrovské problémy.
> "Ukončit rozdělování a zapsat změny na disk"              1
> "Zapsat změny na disk?"
1 Opětovná kontrola změn je nadmíru doporučena. Zkontrolujte si především, které oddíly budou formátovány ("f"). Oddíly, které nechcete opravdu mazat nesmí být formátovány. U těchto oddílů musí být písmenko "k".

Odsouhlasením změn bude provedena instalace systému.

5.8. Instalace

2019-06-26

> "Instalovat základní systém"
    > "Jádro k instalaci"                               1
    > "Ovladače které zahrnout do initrd"
        > "obecné: zahrne všechny dostupné ovladače"
1 Odsouhlaste [ENTER] nabídnutý obraz linux-image.

V této chvíli je nainstalován LINUX - tedy jádro a holý základ - a po ukončení instalace se dá spustit základní operační systém. Základní systém je však určen pouze pro práci s příkazovou řádkou. Instalace GUI[60] a aplikací pro desktop pokračuje nastavením správce programových balíků.

> "Nastavit správce balíků"                             1
    > "Prozkoumat další CD nebo DVD?"                   2
    > "Používat síťové zrcadlo?"                        3
    > "Protokol pro stažení souborů"                    4
    > "Zrcadlo s archivem Debianu"                      5
    > "Používat nesvobodný software"                    6
    > "Používat v APT repositáře se zdroji"             7
    > "Používat služby:"                                8
1 Pro instalaci desktopu a programů.
2 Při instalaci ze sítě volte "Ne".
Instalujete-li z CD/DVD volte "Ano" a systém bude automaticky oznamovat zprávy pro vložení CD/DVD-éčka.
3 Síťová instalace tuto volbu vyžaduje.
4 http
5 ftp.cz.debian.org
6 Přečtěte si text. Některá HW zařízení pro plnou funkčnost FIRMWARE (proprietární ovladače) vyžadují. POSIX systémy je vůbec nepotřebují.
7 Doporučuji přednastavenou volbu "Ano".
8 Přečtěte si malou nápovědu.

Automaticky spouštěné síťové služby potřebné k aktualizacím distribuce spolu s instalacemi bezpečnostních oprav zatěžují systém významnou měrou. Potřebuje-li uživatel přístup k informacím, novější software nebo vylepšit verzi distribuce může ponechat síť funkční a čas od času UPGRADE provést. Počítač může zůstat od sítě odpojen vždy pouze občasně, fyzicky, bez kabelů a WIFI zařízení.

Při pozorovatelném zpomalení nebo lenosti systému při zpracování AUDIO signálu, častých výskytech XRUN[72], či náznaku dlouhodobých problémů se síťové služby dají deaktivovat i poté a síťové kabely odpojit. Síť se dá samozřejmě opětovně i připojit a služby opět aktivovat třeba i vytvořením vlastního scriptu.

Bez sítě je zbytečností i zatržení volby BACKPORTS.

INFO: BACKPORTS - zpětně přenesený software jsou programové balíčky tvořené pro vyšší verze DEBIAN a zkompilované i pro užití ve verzích nižších.
> "Vybrat a nainstalovat software"
    > "Nastavuje se discover"                           1
    > "Připojit se k průzkumu o nejpopulárnější balíky" 2
    > "Zvolte programy k instalaci"
        > "Debian desktop environment"                  3
        > "Xfce"                                        4
        > "print server"                                5
        > "Standardní systémové nástroje"               6
1 Toto nastavení je pouze v DEBIAN 10 "BUSTER". Volte "Žádné automatické aktualizace".
Nastavení discover není v audiosystémech určených pro co nejvyšší výkon žádoucí. Pravidelné zjišťování aktuálnosti systému přerušuje zpracování dat v reálnem čase. Nejjednodušší cestou jak provádět aktualizace systému jsou občasné manuální instalace upgradů na přání. Avšak důvodné pravidelné aktualizace lze vyřešit i později instalací balíku unattended-upgrades[73].
2 Volba má smysl pouze s připojením k síti.
DEBIAN je otevřený, svobodný OS. Pomoci vývojářům se dá i takto. Tato volba se dá později de/aktivovat příkazem dpkg-reconfigure popularity-contest. Systém anonymně zasílá informace o nejpoužívanějších programech. Podle četnosti použití se poté zařazují do základního instalačního ISO obrazu vyšší verze DEBIAN.
3 Zůstane. Nainstalujte.
4 Lehký XFCE s nízkými systémovými nároky je pro hudební tvorbu často doporučován.
5 Systém je lehčí bez použití tiskových služeb.
6 Zůstane zatrženo. Bude potřeba.

5.9. GRUB a restart PC

2020-05-09

GRUB[74] nabídne při bootování seznam pro výběr operačního systému. Seznam je zobrazen defaultně 5 sekund a bez zásahu uživatele automaticky nastartuje DEBIAN.

    > "Instalovat zavaděč GRUB na pevný disk"                           1
        > "Instalovat zavaděč GRUB do hlavního zaváděcího záznamu?"     2
            > "Zařízení pro instalaci zavaděče"                         3
            > "Vynutit instalaci GRUBu do EFI cesty pro výměnná média?" 4
> "Dokončit instalaci"
> "Jsou systémové hodiny nastaveny na UTC?"                             5
1 Instalační proces vyhledá jiné OS a nabídne volby možností a priorit.
2 Ano
Volba "Ne" vyžaduje poinstalační úpravu bootování v jiném OS nebo manuální spouštění systému z příkazové řádky.
3 Použití "/dev/sda" je z příkladu instalace možností správnou.
Zapište "/dev/sdb", máte-li v instalaci více harddisků a DEBIAN instalujete do druhého harddisku. Zavaděč GRUB se instaluje na harddisk kde je aktivován BOOT FLAG[REF].
4 Přečtěte si krátkou nápovědu.
  • Instalujete-li v UEFI mode[REF] zvolte "Ne". Tato volba je u dnešních moderních počítačů správná.

  • Instalace v BIOS mode s LEGACY[REF] nastavením v BIOS - zvolte "Ne".

  • Instalace v BIOS Mode na počítači s povoleným UEFI a secure boot v BIOS vyžaduje pozornost. Volba "Ano" umožní spustit GRUB z média[REF], do kterého se GRUB zapíše. Jinou možností je vypnout podporu UEFI v BIOS ale v DUALBOOT[38] režimu toto nastavení znemožní start jiných operačních systémů závislých na UEFI.

5 Nastavte "Ano".
UTC[75] je koordinovaný světový čas. Zjistěte si kolik hodin je v Londýně a čas poté nastavte v BIOS.

Posledním krokem instalace je vyjmutí CD/DVD-éčka z mechaniky nebo USB flash disku z USB portu a RESTART počítače. Je nainstalováno.

6. Desktop

6.1. XFCE

2020-01-02

Přihlášením uživatele ke svému účtu se načte prostředí a při dotazu

"Vítejte při prvním spuštění panelu"

volte možnost s použitím výchozího DEFAULT nastavení. Panely se dají upravovat, vytvářet nové, odstraňovat i později.

Nezatracujte vzhled aplikací nebo nástrojů příkazové řádky v LINUX. Měl jsem z počátku podobné nálady. Všímejte si lehkosti a funkčnosti. To je důležité. Prvky aplikací se dají dodatečně upravit buď vytvořením vlastní desktop témy nebo doinstalací jiných. Už po pár dnech budete mít vzhled oken neroznatelný od původního default nastavení. V LINUX je možné s prostředím manipulovat i vytvořením skriptů.

Vyvoláním "Správce nastavení" z programového MENU

> "Aplikace"
    > "Nastavení"
        > "Správce nastavení"

lze upravovat základní uživatelská nastavení. Seznamte se s prostředím, podívejte se do nastavení. Tužka po ruce nebude na škodu.

  1. Povypínejte spořiče, šetřiče obrazovky.

  2. Deaktivujte různá upozornění pracující na pozadí.

  3. Vypněte pro tvorbu nedůležité zautomatizované procesy, které by na pozadí zbytečně zaměstnávali počítač.

  4. Vypněte automatické připojování disků ve správci souborů THUNAR. Připojování flešek a externích harddisků se v audiosystému řeší jinou cestou.

Upravte si pracovní plochu - tmavé barvy ADWAITA tolik neunavují oči zejména navečer.

Barvy si časem nastavíte. I barvičky příkazové řádky - xfce4-terminal - lze nastavit v okně aplikace. Linuxovější XTerm v souboru "/etc/X11/app-defaults/XTerm-color".

Desktopy s líbivým uživatelským prostředím jsou defaultně v instalaci jiných distribucí (MANJARO, MINT, ELEMENTARY) s určením pro výpočetně nenáročnou práci a se zaměřením na široké spektrum uživatelů.

Nainstalované XFCE[76] je jednoduchý WINDOW MANAGER[77] (správce oken) s jednoduchým účelným rozhraním. Lze instalovat i jiného správce oken (GNOME, KDE PLASMA, MATE…​). Počítač bude akcepovat i tato nastavení ale systémové prostředky nebudou přidělovány v maximální možné míře pouze audio aplikacím.

Dalšími nenáročnými správci oken jsou LXDE, IceWM, Openbox nebo Fluxbox.

V LINUX je i jiná cesta a je možno instalovat ještě šetrnějšího, méně náročného správce oken. Minimalističtí dlaždicový okenní správci (AWESOME, I3, DWM…​) jsou však ovládány převážně klávesovými zkratkami a jejich nastavení textem v konfiguračním souboru vyžaduje pro nastavení spolupracující s audiosystémem více času a znalostí. Používají je převážně programátoři pro účelně využitou plochu navrženou v duchu vývojářského IDE prostředí a pro jejich hbitost při přepínání mezi okny prostřednictvím klávesových zkratek.

Pro netrpělivce se slabými nervy doporučuji hned zpočátku nastavit automatické přihlašování[REF] k účtu bez zadávání hesla. Bude zapotřebí přihlásit se ke správcovskému účtu a editovat systémový soubor. Nezapomeňte na zálohu souboru ať si nezaděláte na problém. Je to předbíhání učiva a narušení chronologicity probírané látky - ale co už :-D?

6.2. Desktop služby

2020-05-11

Níže popsaným způsobem se vypnou služby v jednotlivém uživatelském účtu. V jiných účtech zůstanou zachovány. Jde o pouhé nastavení služeb v uživatelském účtu a nejedná se o služby systémové[REF], jejichž nastavením se ovlivňují funkce celého systému pro všechny uživatele společně.

Služby mohou mít v distribucích mírně odlišné názvy ale jsou jedna od druhé odlišitelné.

> "Aplikace"
    > "Nastavení"
        > "Správce nastavení"
            > "Relace a spouštění"

a na kartě "Automatické spuštění aplikace" nechte dle uvážení povolenou nebo zakažte službu

            "PolicyKit Authentication Agent"

Autentizační služba PolicyKit Authentication Agent při spouštění ROOT aplikací otvírá dialog k zadání hesla. Doporučuji službu nezastavovat ale jejím zakázaním systém neutrpí. Pouze bude spouštění GUI aplikací s právy ROOT náročnější[REF].

V nastaveních dle potřeb deaktivujte:

            "Applet tiskové fronty"             1
            "AT-SPI D-Bus Bus"                  2
            "Správce napájení"                  3
            "Síť"                               4
            "User folders update"               5
            "Uzamykač obrazovky"                6
            "PulseAudio Sound System"           7
            "Volume control"                    8
1 Bez tiskárny nepotřebná služba.
2 Vypněte není-li zapotřebí služba pro usnadnění přístupu.
3 Vypněte.
Má význam v notebooku. Ale ne v účtu pro zpracování dat v reálném čase. Povolená služba Správce napájení v DEBIAN 10 "BUSTER" monitor nevypne ale odhlásí uživatele není-li nastaveno jinak. Je samozřejmé, že služba nabízí více možností nastavení ale ani jedno z nabízených nastavení není pro LAW (Linux Audio Workstation) potřebné ani důležité.
4 Síť lze v účtu uživatele vypnout ale toto nastavení se projeví pouze v nastaveních konkrétního uživatele. Na pozadí systému jsou síťové služby neustále aktivní a připravené k použití v jiném účtu. V tomto případě tedy jde pouze o minimální šetření systémovými prostředky v uživatelském prostoru. Úplná deaktivace sítě v počítači se provádí na systémové úrovni[REF]. V dalším postupu bude ještě potřebné instalovat audio aplikace a síťové služby lze zakázat později. V instalaci z CD/DVD nebo USB média a bez fyzického připojení k síti je služba Síť nepotřebná.
5 Vypněte. Aktualizuje složky. Služba není akutně potřebná.
6 Taky deaktivovat.
7 Vypnutím služby PulseAudio Sound System bude počítač v uživatelském účtu bez zvukového serveru. V takovém případě lze přehrát zvuk pouze prostřednictvím zabudovaných funkcí zvukových ovladačů. Zvukový server PULSEAUDIO bude v dalším k nepotřebě a při čištění systému[REF] pro Linux Audio Workstation (LAW) bude odinstalován.
8 Služba Volume control spouští v systémové liště ikonu pro ovládání hlasitosti zvukového serveru PULSEAUDIO.

Vypnout lze i další služby[78], které jsou na webu k dohledání.

Jakákoliv nově vytvořená položka v seznamu "Automatické spuštení aplikace" spustí automaticky po přihlášení k účtu zapsaný příkaz - doublecmd spustí aplikaci DOUBLE COMMANDER[REF].

Malá nápověda pro uživatele notebooků:

Automaticky spouštěnou aplikací může být i malý skript[79]. Skript je spustitelný textový soubor se zapsanou sérií příkazů a v LINUX má extenzi "sh".

Skriptem se nastaví vše potřebné pro multimediální tvorbu ale jen a pouze v jednom účtu určením pro tvorbu.

  1. Zastaví nepotřebné systémové služby.

  2. Zastaví PULSEAUDIO server.

  3. Vyladí nastavení pro audiosystém.

  4. Spustí realtime JACK server.

  5. Nahraje konfigurační soubory atd..

Jiné účty zůstanou netknuté a připravené k použití jako klasická plocha s připojením k internetu, officem a obyčejným PULSEAUDIO zvukovým serverem.

Tímto způsobem lze částečně obejít potřebu mít počítač neustále vyladěn jen pro multimediální realtime produkci s maximálním výkonem. Mějte na paměti, že nastavení BIOS nelze měnit skriptem a některá nastavení nemusí být optimalizována.

LINUX rozlišuje mezi šetřičem a spořičem:
  • funkce šetřiče vypíná monitory. Tím šetří energii a zbytečné opotřebení monitorů. Výchozí časový interval pro automatické DPMS[80] vypnutí monitorů v LINUX je 10 minut.

    V seznamu "Automatické spuštení aplikace" si můžete vytvořit novou položku. Do dialogu napište vlastní pojmenování akce třeba "DPMS off" a zapište příkaz xset -dpms. Monitor se po restartu nebude vypínat. Spolu s deaktivací služby "Správce napájení" bude vypnutí a zapnutí monitoru možné už jen stiskem fyzického tlačítka na ovládacím panelu monitoru. DPMS se zpětně povolí odstranením příkazu ze seznamu automaticky spouštěných aplikací nebo příkazem xset +dpms.

  • spořič naopak při nečinnosti spustí mnohdy výpočetně náročnou grafiku nebo animaci.

6.3. SYNAPTIC

2019-06-26

K instalacím nebo odinstalacím aplikací je v DEBIAN primárně určen program SYNAPTIC[81]. Vyvolá se aktivací položky z programového MENU. V DEBIAN lze manipulovat s programovými balíky pouze se zadáním 'root' hesla nebyl-li v instalaci OS odsouhlasen mechanizmus sudo[REF]. V takovém případě se zadá heslo uživatele.

> "Aplikace"
    > "Nastavení"
        > "Správce balíků Synaptic"

V okně SYNAPTIC je ikona pro hledání balíků. Označením balíku pro nainstalování se velmi často zobrazí dialogové okno s nutností doinstalace dalších vyžadovaných programů - vyřešení programových závislostí balíčků.

Dialog pro vyřešení programových závislostí balíčků
"Označit další potřebné změny?"

Jde o programové balíky, které jsou buď nutné nebo doporučené k zachování správné funkčnosti vybraného programu. V tomto kroku instalace jde pouze o instalační výběr balíků. Příkazem "Zpět" z nabídky lze provedené změny vrátit.

Při výběru instalovaných programů si všímejte kolik dalších balíčků je nutno doinstalovat. Čím míň jich bude tím líp. Lehké jednoúčelové prográmky jsou nejlepší. Deset a víc už začíná být hodně nejedná-li se pouze o pluginy. U důležitých audio programů jako ARDOUR nebo JACK server je to nevyhnutností.

Poté bez obav tento krok odsouhlaste (tlačítko "VYBRAT"). Samotný akt instalace proběhne až po stisknutí ikony "Použít". V dialogu "Realizovat následující změny?" změny odsouhlaste.

! Nelze spustit paralelně dva nástroje pro instalaci balíků. Nelze spustit SYNAPTIC a zároveň instalovat z příkazové řádky. A naopak.

V SYNAPTIC podobným způsobem probíhá i aktualizace systému a programů. Po nainstalování nového OS je aktualizace programů doporučená. Nejdříve je zapotřebí vyvoláním z nabídky "Obnovit informace o balících", následně potvrdit záměr "Aktualizovat vše" a poté aktualizace instalovat ikonou "Použít".

Klávesová zkratka pro hledání programů je [CTRL] a [f].

6.4. Desktop SW

6.4.1. Programové rozšíření

2020-02-10

Pro příjemnější práci je ideální instalovat aplikací SYNAPTIC i některé programy a doplňky jenž s hudební tvorbou přímo nesouvisí. Není nutné instalovat všechny. Třeba až budou časem potřeba. Jsou vhodné jako rozšíření:

Systém:
  • "doublecmd-gtk" - dvojpanelový správce souborů, který výborně poslouží i ke snadnému připojení USB disků;

  • "mc" - správce souborů MIDNIGHT COMMANDER;

  • "htop" - přizpůsobivý a velmi podrobný správce úloh s náročnějším ovládáním klávesnicí;

Grafika:
  • "geeqie" - jednoduchý prohlížeč obrázků s minimálními závislostmi na jiných programech;

Desktop:
  • "papirus-icon-theme" - moderní ploché ikonky dostupné pouze při povolení BACKPORTS balíčků (DEBIAN 9 "STRETCH"), v DEBIAN 10 "BUSTER" je balík součástí repozitářů;

INFO: BACKPORTS - zpětně přenesený software jsou programové balíčky tvořené pro vyšší verze DEBIAN a zkompilované i pro užití ve verzích nižších.
  • "xfonts-terminus" - moderní a dobře čitelný UTF-8 font;

  • "alacarte" - program pro správu a řazení programů v MENU, spouští se vyvoláním položky "Aplikace" > "Nastavení" > "Hlavní nabídka";

Text:
  • "geany" - textový editor podobný editoru PSPAD se zvýrazněním syntaxe a vytvářením projektů;

  • "zim" - grafický textový editor, desktop wiki. Jednoduchý pro použití. Nadpisy lze formátovat. Nechybí, kalendář, jednoduché tabulky, seznam úkolů, checkboxy, jde vložit obrázky nebo si založit deník (journal) s datumy, tagy atd. Lze rozšířit pluginy.

Web:
  • "links" - lehký GUI webbrowser, v základní uživatelské instalaci bez javascriptu. Spouští se buď z MENU nebo příkazem xlinks2 &. Nabídka aplikace se otevře [F10]. Ukončí se [q].

Audio:
  • "audacious" - lehký audio přehrávač. Podporuje i nostalgické Winamp skiny ale v obyčejném pohledu je akurátnější stejně jako Foobar. Další potřebné audio aplikace budou instalovány až budou instalovány.

Video:
  • "xjadeo"[82] - softwarový video přehrávač, který najde uplatnění při tvorbě hudby. Připojuje se k JACK audioserveru, podporuje časovou MIDI synchronizaci a video rámce k hudbě lze otvírat v ARDOUR.

6.4.2. Terminály

2019-11-19

V okenním manažeru XFCE je výchozím TERMINAL xfce4-terminal. Jeho výhodou je snadné nastavení, plná podpora polohovacího zařízení a snadné kopírování.

Starším a linuxovějším je XTerm. Není intuitivní. Kopírovat lze výběrem kopírovaného textu myší. Vložení výběru proběhne kliknutím prostředního myšítka na místo vložení. Další alternativou pro vložení je umístnění kurzoru na místo vložení a stiskem klávesové kombinace [SHIFT]+[INSERT] se výběr myší zkopíruje. XTerm se nastavuje konfiguračním souborem.

Aplikace terminálů jsou na panelu XFCE v MENU nabídce systémových aplikací. V jejich názvu je většinou výraz "term", "konsole" nebo "console".

6.4.3. Správce souborů

2019-11-19

Jednoduchým souborovým správcem XFCE je THUNAR. Je zahrnut do základní instalace desktopu XFCE a je určen pro nenáročnou práci se soubory a správu uživatelských dat. Ale určitě v jeho nastavení vypněte volbu "Zapnout správu svazků". Tu ostatně vypněte každopádně. Pro tuto funkci je potřebný GVFS (Gnome Virtual File System) mechanizmus a ten, jak známo jest, je mimořádně náročný na prostředky počítače. THUNAR tedy nebude automaticky připojovat externí zařízení jako USB flash disky ale audio nebude ochuzené o výkon. Nedostatek výkonu často způsobuje lupance při přehrávání multimedií.

! Vypnout automatické připojování disků ve správci souborů THUNAR je vcelku důležité protože s touto funkcí musí na pozadí běžet "GVFS" (Gnome Virtual File System) technologie, která je výpočetně mimořádně náročná.
> "MENU"
    > "Nastavení"
        > "Správce souborů"             1
            > karta "Pokročilé"         2
1 Správcem souborů v XFCE je THUNAR.
2 Odznačte volbu "Zapnout správu svazků".

Celý mechanizmus automatického připojení USB obslouží dle potřeb i DOUBLE COMMANDER bez zbytečného běhu jakékoliv služby na pozadí.

DOUBLE COMMANDER je ortodoxní dvojpanelový GUI správce souborů ve stylu aplikace TOTAL COMMANDER. Vyniká přehršlí nastavení a množstvím funkcí. Je určen i pro náročnější souborové operace. Podporuje TOTAL COMMANDER pluginy.

Vynikajícím správcem souborů je i RANGER a má velmi zajímavý 'miller' mód zobrazování. Dá se nastavit i jako dvojpanelový správce. Jeho nastavení je pouze v textu a lze jej otevřít i v prostředí tohoto programu. Pohyb po složkách je obsloužen buď kurzorovými klávesami nebo myší. Pro začátečnícké seznámení se systémem není nejvhodnější ale bez akutní potřeby prvotního nastavování nebo okamžitého používání všech jeho funkcí je použitelný hned. I když jej lze ovládat i myší je určen spíše pro práci s klávesnicí.

Pro začátečníka náročnější je správce souborů MIDNIGHT COMMANDER. Má velmi nízké systémové požadavky. Má široké možnosti nastavení skrze jeho konfigurační soubory. Vzhledem k jeho schopnosti pracovat přímo v okně TERMINAL bez nutnosti spuštění desktopu je výborným nástrojem pro práci se systémem z příkazové řádky. Při opravě[REF] systému je nepostradatelný. Ovládat ho lze i myší i klávesnicí[83].

Některé z možností MIDNIGHT COMMANDER:
  • nápověda se vyvolá klávesou [F1].

  • TERMINAL (příkazový řádek) se v okně MC vyvolá kombinací klávesy [CTRL] s klávesou [o]. Ta samá kombinace slouží i k návratu zpět do okna MC.

  • Klávesa [TAB] přepíná mezi panely.

  • [ALT] s otazníkem [?] vyvolá dialog pro hledání souborů.

  • Kombinace alt+tečka [ALT] spolu s [.] přepíná zobrazení skrytých souborů.

TIP: Klávesa [ALT] je v LINUX manuálech, konfiguračních souborech a jiném textu pojmenována někdy jako META klávesa.

Každý ze správců souborů má funkci zobrazení skrytých souborů operačního systému.

Jednou z možností jak spustit souborového správce THUNAR, DOUBLE COMMANDER, RANGER nebo MIDNIGHT COMMANDER je vyvolání z MENU. Druhou je spuštění skrze CLI[REF]. DOUBLE COMMANDER se v command-line spouští příkazem doublecmd &, RANGER - ranger, THUNAR pouhým thunar &. MIDNIGHT COMMANDER strohým mc.

TIP: Znak "&" uveden za příkazem spustí aplikaci jako samostatný proces[REF]. RANGER a MIDNIGHT COMMANDER se jako samostatný proces nespouští a běží přímo v okně TERMINAL.

6.4.4. Text editory

2019-07-24

V balíku XFCE desktopu je výchozím editorem jednoduchý MOUSEPAD.

Textový editor GEANY je vhodný pro vytváření komplexních projektů se zvýrazněním syntaxe[84]. Otevřením projektu se nahrají všechny soubory do projektu zahrnuté. Lze vytvořit zvlášť projekty se soubory nastavení systému, audia atd.

Výborným linuxovým editorem je VIM avšak s jeho zpočátku neporozumitelným ovládáním je určen pro zkušenější uživatele a odborníky. Instalací jeho GUI verze GVIM je použitelný i pro neznalé.

ZIM slouží spíše jako notes či desktop wiki ale je doopravdy vynikajíci.

6.4.5. Browser & Office

2019-11-19

Odinstalace balíku FIREFOX a dalších nesystémových, objemných uživatelských programů jako LIBREOFFICE jenž přímo nesouvisí s hudebních tvorbou je k zamyšlení. Tyto programy mohou být závislé na službách, které při tvorbě zbytečně zatěžují systém. LIBREOFFICE může dle nastavení běžet s běhovým JAVA prostředím. Podobně jen s využitím jiných technologií běhá i FIREFOX.

K rychlému dohledání informací na internetu je mnohem zajímavější nenáročný, svižný, GUI prohlížeč LINKS[85]. V základní uživatelské verzi je bez javascriptu ale kupovat boty v e-shopu a zároveň psát árii asi nikdo nebude. Podporuje vykreslování grafiky.

K dohledání dalších informací s vděkou poslouží i jiný počítač bez ambicí na realtime zpracování audiosignálu.

6.4.6. Desktop audio

2019-07-24

Zvukový server PULSEAUDIO[31] je potřeba odinstalovat protože není vhodný pro hudební produkci. Má vysoké zpoždění a je určen pouze pro nenáročné uživatelské úkoly spojené s přehráváním audiostreamu, filmů, videa z internetu nebo k poslouchání hudby ze softwarového přehrávače. PULSEAUDIO lze zachovat ale budou potřebná další nastavení dvou paralelně běžících zvukových serverů. Více současně implementovaných audioserverů i s nastaveními jsou v jiných MMX distribucích[REF]. Právě FIREFOX používá k přehrávání obsahu zvukový server PULSEAUDIO.

Pro hudební produkci je určen zvukový server JACK[REF].

INFO: Nepotřebné audio aplikace se odinstalují současně s instalací potřebných audio programů a při nastaveních AUDIOSYSTEM.

6.4.7. Správce úloh

2019-07-24

Výchozím správcem úloh v XFCE je xfce4-taskmanager. Otevře se z MENU > Systém > Správce úloh. Jednotlivé úlohy se dají ukončit a spravovat kliknutím pravým myšítkem na úlohu a zvolit úkon:

  • zastavit - aplikace zůstane spuštěna ale po přijetí signálu[87] STOP (SIGSTOP) zastaví vykonávání výpočtů

  • ukončit úlohu signálem TERM (SIGTERM) - klasické ukončení procesu.

    Systém vyšle aplikaci žádost a aplikace se regulerně ukončí i s uložením rozpracované práce. Ukončení aplikace tímto způsobem není běžné. Uživatel aplikaci běžně ukončí myší. Tato alternativa se využívá zejména ve skriptech atd.

  • ukončit signálem KILL (SIGKILL) - když aplikace zamrzne a běžným způsobem ji nelze ukončit. Toto ukončení neuloží rozpracovaná data.

  • priorita - určuje zda bude aplikace obsluhována přednostně. Pro audiosystem nejsou tato nastavení podstatná a priority se nastavují jiným mechanizmem.

Výborným, informačně bohatším, správcem úloh je HTOP, který je nutné dodatečně instalovat správcem balíků SYNAPTIC.

  • Ovládá se klávesnicí. Označením úlohy najetím klávesami [UP]/[DOWN] a stiskem klávesy [k] nebo [F9] se zobrazí nabídka se signály. Posláním signálu '9 SIGKILL' do zamrzlého procesu aplikace se aplikace ukončí. Tuto nabídku lze zavřít [ESC]. V dolní liště okna jsou uvedené klávesové zkratky k funkcím HTOP. Aplikace se ukončí [q] nebo klávesou [F10], která zároveň uloží nastavení aplikace.

Dalším task managerem je GLANCES, který se spouští pouze z příkazové řadky není-li pro něj vytvořen spouštěč.

  • Je přehledný a jedná se spíš o nástroj z rodiny system monitor aplikací. Aplikace v něm nelze spravovat nebo ukončit. Na jedné stránce v okně aplikace je přehled o celkovém zatížení systému - file system, diskové operace, CPU, MEM, síťový provoz, úlohy a mnoho dalších informací. Okno se zavře klávesou [q]. Musí se doinstalovat. HTOP je lepší.

Velmi jednoduchým pomocníkem při ukončení zamrzlé aplikace může být utilitka XKILL.

  • Prakticky vykonává pouze jednu funkci ale výborně. Ukončí aplikaci, na kterou uživatel klikne. Prográmek XKILL se zřejmě najde v MENU v systémové nabídce. Určitě ho lze spustit z příkazové řádky - je-li nainstalován. Místo klasického kurzoru myši se vykreslí křížek nebo lebka se skříženými hnáty. Pak stačí kliknout na zamrzlou aplikaci. Nechtěné spuštění XKILL přerušíte stiskem klávesy [ESC] nebo pravým myšítkem. Utilitku lze použít i v kombinaci se spouštěčem[REF].

6.5. Per USER nastavení

2019-06-26

Spouštěč (zástupce) na panelu vytvoříte:

  1. klikněte pravým myšítkem na panelu

  2. otevřete položku "Panel"

  3. "Přidat položku"

  4. v seznamu aplikaci najděte "Spouštěč".

Příkaz ve spouštěči může být jakýkoliv užitečný příkaz, který se pak vyvolá kliknutím na ikonu spouštěče. V anglické verzi DEBIAN je pojmenování spouštěče "Launcher".

Do spouštěče lze zapsat příkazy ve stylu klasického zástupce pro spuštění aplikace - stačí zapsat např. ARDOUR.

Spouštěčem se dá jedním kliknutím:
  • spustit kupříkladu aplikace: doublecmd, ardour atd;

  • vypnout počítač: sh -c "systemctl poweroff";

    ! Před vypnutím touto cestou je potřeba všechen rozpracovaný materiál uložit. Tento příkaz se aktivací ikony na panelu nemilosrdně spustí a počítač se opravdu vypne velmi rychle bez jakéhokoliv ptaní na uložení rozpracovaného.
  • vypnout monitor: sh -c "xset dpms force off";

  • nevypínat monitor: sh -c "xset -dpms";

  • vytvářet složité série příkazů ve smyslu 'než vypneš počítač synchronizuj složky A,B a kopíruj A do C';

  • vypínat a startovat služby[REF];

  • spouštět vlastní skripty;

  • periodicky opakovat vykonávání příkazu nebo aktualizovat informace;

  • atd…​

Prakticky lze spustit jakýkoliv myslitelný a zároveň funkční příkaz nebo skript. Takto se dají spustit i složené příkazy[REF].

Syntaxe[84] složeného příkazu ve spouštěči:
sh -c "příkaz_1 & příkaz_2 ..."

Uvozovky je nutné uvést je-li spouštěný příkaz s mezerami.

INFO: Počítač neví, že název souboru je "soubor 1". TERMINAL si název soubor 1 s mezerami a bez uvozovek interpretuje přesně tak jak je psaný - "soubor" a "1". Analogie: 128MB není 1  28MB.

6.6. AUTOLOGIN

2019-07-04

Přihlášení k účtu bez opětovného zadávaní uživatelského jména a hesla na přihlašovací obrazovce je nastavitelné v souboru "/etc/lightdm/lightdm.conf".

Display manager LightDM[88] je motorem pro správce oken XFCE a komunikuje na hardwarové úrovni přímo s grafickou kartou. K úpravě souboru je nutné oprávnění ROOT.

Otevřete si správce souborů[REF] s právy ROOT a zadejte root heslo[REF].

Ve správci souborů přejděte do kořenového adresáře "/", ve kterém je adresář "/etc" a v něm složka "/lightdm". V souboru "lightdm.conf" stačí odkomentovat řádek

Soubor "/etc/lightdm/lightdm.conf"
[Seat:*]
...
...
#autologin-user=
...

a za rovnítko připsat jméno uživatele, účet kterého bude systém automaticky po startu spouštět.

Soubor "/etc/lightdm/lightdm.conf"
[Seat:*]
...
...
autologin-user=studio
...

Je samozřejmé, že správce nezadá "Celé jméno uživatele" ale "Uživatelské jméno pro účet", které zadal v instalaci. V příkladu instalace je jím studio[REF].

6.7. Přístupová práva

2020-12-16

V LINUX je kvůli zabezpečení kladen velký důraz na přístupová práva[89] k adresářům a souborům.

Své přístupová práva má nejen uživatel USER ale i skupiny GROUPS[90] složené z uživatelů. Je samozřejmé, že ROOT má přístup ke všemu co je v počítači. Ostatní uživatelé OTHERS mají taky přiřazeny svá uživatelská práva.

Jeden uživatel nemůže editovat nebo mazat soubory jinému uživateli. Nesmí je ani číst když si to jiný uživatel nepřeje a má ke svým souborům nastavena příslušná přístupová práva. Stejný mechanizmus platí i pro jednotlivé skupiny. Uživatelům z jedné skupiny může být zakázán přístup k internetu a jiné skupině může být zakázána manipulace s nastavením audia ale povoleno něco jiného.

Skupiny a zařazení uživatelů do jednotlivých skupin jsou v souboru "/etc/group".

Zkrácený příklad souboru "/etc/group"
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
disk:x:6:
lp:x:7:
mail:x:8:
www-data:x:33:
cdrom:x:24:studio
audio:x:29:studio
video:x:44:studio
games:x:60:
users:x:100:
scanner:x:113:saned,studio
lpadmin:x:116:studio
studio:x:1000:
...

Z výpisu tohoto souboru je patrné, že účet, neboli uživatel "studio" má přístup k cdrom mechanice, audiu, videu, skeneru a správě tisku. Přidáním nebo odebráním práv uživatelům nebo celým skupinám uživatelů pro některou z kategorií správce povoluje nebo zakazuje přístup ke komponentům systému podle potřeb.

INFO: Nepřepisujte soubor přímo. K úpravě radši použijte korektní nástroje[REF]. Podívejte se před editací přístupových práv na podrobnější vysvětlení[REF].

Nezapomeňte, že pro nastavení práv k souborům mimo uživatelský prostor je zapotřebí oprávnění ROOT. I tyto možnosti řádného zabezpečení jsou důvodem proč jsou pro nasazení na důležitých serverech nejčastěji voleny linuxové systémy.

  • Nejjednodušším uživatelským způsobem jak manipulovat s přístupovými právy je nastavení v některém ze správců souborů[REF]:

    1. označte si soubory nebo adresáře, u kterých chcete práva změnit;

    2. stiskněte na aktuálním výběru pravé myšítko a otevře se kontextová nabídka s operacemi;

    3. vyvolejte dialog "Vlastnosti" souboru/ů;

    4. nastavte si práva a změny odsouhlaste.

  • Druhým způsobem je přímá editace práv[REF] z příkazové řádky. Je to zároveň jediná možnost jak zprovoznit poškozený počítač spuštěný v RESCUE/RECOVERY MODE. A vědět kde v nesnázích hledat informace je ku prospěchu.

V MIDNIGHT COMMANDER je k vyvolání dialogového okna ke změně vlastností určena klávesová zkratka [CTRL]+[x] s následným stiskem klávesy [c] (change) a ke změně vlastníka kombinace [CTRL]+[x] a [o] (owner).

7. Dokumentace

7.1. Distribuční

2020-05-11

Základním předpokladem je umět zapnout počítač, zapsat příkaz a spustit program. Pracovat s polohovacím zařízením snad umí kdokoliv kdo čte tento text.

Jakákoliv aktuální dokumentace k příkazům - manuál, tutorial, návod nebo někdy i příklad - je v GNU/LINUX k nalezení přes příkazový řadek[REF] nebo rozhraní aplikace vztahujíc se ke konkrétní verzi softwarového balíčku. Pro plnohodnotnou práci a pro dovysvětlení jsou na webových serverech k dohledání doplňující informace. Mnohdy je potřeba pátrat opravdu trpělivě a s otevřenou myslí. LINUX.

? Každý linuxový computer je originálem. Hledat na webu jednoznačné řešení použitelné pro konkrétní počítač je chybou. Někdy je nutné věnovat nalezení řešení více času.

Není to pravidlem ale na internetu ve fórech bývá často vysvětlení i příklady v češtině.

INFO: Pro zdejšího uživatele bývá největší překážkou jazyková bariéra. Často také plytké až chabé porozumění textu a nedostatečná schopnost spojit nalezené informace do funkčního celku.

Obsáhlou dokumentaci, často v češtině, mají kromě DEBIAN[91] i linuxové distribuce UBUNTU[92] a ARCHLINUX[93].

U ARCHLINUX dokumentace je potřeba dbát opatrnosti a dokumentaci číst pouze nápovědně za účelem pochopení tématu. Původ distribuce nevychází z distribuce DEBIAN a postupy v ARCHLINUX nejsou s postupy v DEBIAN totožné a zaměnitelné. V základu je všude LINUX jádro. Příkaz zůstává příkazem a jeho zápis je stejný v každé distribuci. Nastavení audioserverů nebo audiosoftware jsou stejné. Ale nastavení systému se mohou lišit od distribuce k distribuci. Adresářová struktura může být uspořádaná jinak, konfigurační soubory mohou být v jiné lokaci atd. Buďte opatrni při bezhlavém zkopírování příkazu a okamžitém odentrování. To platí i pro dokumentace z jiných distribucí, které mají jiný než DEBIAN základ.

I proto je DEBIAN, jenž tvoří základ desítek jiných, nejen multimedálních MMX distribucí, ideální volbou pro LAW.

Dobré informace lze nalézt i na serverech specializovaných na hudbu[94].

Nahlédnout do nápovědy k audioprogramům lze skrze jejich uživatelské rozhraní GUI[60]. V menu s nápovědou bývá minimálně odkaz na jejich webstránky i když klikací režim umí být sám o sobě poměrně intuitivní.

7.2. TLDP

Skvělým, vynikajícím informačním zdrojem k přečtení je linuxový dokumentační projekt TLDP[95] (The Linux Documentation Project) i když je apriori koncipován jako všeobecná dokumentace GNU/LINUX. Projekt se nevěnuje specifickým nastavením LAW (Linux Audio Workstation) i když je základní práce s linuxaudio součástí publikace. Je praktickou příručkou pro:

  • pro začínajícího uživatele;

  • správce operačního systému;

  • programátora v BASH;

  • uživatele jak desktopPC tak i přenosného počítače.

Obsahuje praktické návody k administraci a použití sítě, LDAP serverů, věnuje se bezpečnosti, vysvětluje šifrování v LINUX, použití a nastavení médií, systémové konfigurace, souborové systémy, procesy, databáze a mnoho, opravdu mnoho dalšího.

Byl vydán i v knižní podobě s překladem do češtiny. 1300 stran výborné LINUX dokumentace. V anglickém jazyce je ke stažení na internetu v pdf formátu. Ač je zatím poslední české vydání postaršího data, pro práci s GNU/LINUX je i dnes tato publikace velmi užitečná. Některý z příkazů zestárne a nahradí je novější. Ale v LINUX se neustále používají i ty staršího data jsou-li v repozitářích distribuce.

8. Command-line

8.1. CLI rozhraní

2019-07-08

V umění naučit se nalézat řešení je GNU/LINUX nekompromisní. Kdo si slibuje bezpracnost je na omylu a bude zklamán. Tak to v životě, chce-li někdo něco umět, chodí. Jde-li o příkazy pro nastavení LAW (Linux Audio Workstation), nejedná se o složité funkce nebo programování. Zvládne je i začátečník bez předchozích znalostí. Chce to trpělivost. Chuť hledat a nacházet řešení. Dodám, že ten kdo objeví možnosti GNU/LINUX a krásu příkazové řádky[96] užasne nad operačním systémem, který si na publicitu nepotrpí. Mnoho muziky a za málo.

Nechci aby si kdokoliv lámal hlavu příkazy. V principu se jedná o objasnění jak příkazová řádka funguje. Jak vlastně systém pracuje, jak je vystavěn, kde hledat informace až to bude nutné. Není potřeba si příkazy pamatovat. Stačí číst. Postupně budete zjišťovat jak všechno se vším souvisí a jak jednoduché to vlastně je. Pochopením principů SOUNDSYSTEM, DAW[97] aplikací…​ je velmi snadné přejít třeba i k jiným operačním systémům. Jak v LINUX, MACOS tak i WINDOWS jsou odborné termíny stejné. Samplerate je samplerate všude. Hertz, sekunda, MIDI, loop, wave…​ taky.

INFO: Termíny command-line, shell, příkazový řádek, prompt, CLI, console, term nebo TERMINAL jsou různá pojmenování pro totéž. Avšak pouze v praxi. V definicích výrazů jsou rozdíly ale v souvislostech tohoto textu jsou termíny zaměnitelné. Správné to není ale v praxi se kterýkoliv z výrazů chápe jako prostředí pro spouštění příkazů.

Nic není dokonalé a ani LINUX ani DEBIAN. Mnohdy se stane, že počítač při nahrávání lupne (XRUNS). V demu to nevadí a bude-li mít vytvořená hudba pro autora hodnotu tak časem nalezne cestu jak nedostatky odstranit. Nebo si uloží celý hudební projekt na flešku a nahraje ho na rychlejším computeru v profi studiu. Nalezení a vyřešení problému učí schopnosti analyzovat a bystří deduktivní myšlení. Chci jen nabídnout možnost naučit se myslet i digitálně. Při tvoření digitální hudby je to přínosem.

Znalost psaní příkazů je neocenitelným pomocníkem při problémech se spuštěním počítače. Se znalostí základních příkazů v režimu pro obnovu nebo opravu operačního systému si ušetří mnoho trápení s reinstalací a opětovným nastavováním. Spouštěním programů a skriptů v TERMINAL[98] se každý naučí pracovat s textovým rozhraním. Později se vložené úsilí vrátí v podobě radosti z bezproblémového chodu audiosystému a nepochybně i radosti z překonání neznalosti nebo obav.

V zásadě jde pouze o porozumění command-line rozhraní. Většina souborových operací je stejně realizována souborovým správcem. Poté, přečtením textu budou jakékoliv příkazy pro nastavení audiosystému srozumitelnější. Čtenář si mnohé operace na systému dokáže odvodit a přizpůsobit. Bude umět formulovat vlastní funkční příkazy a přesně dle potřeb svého systému. Naučí se najít správné informace. Nemusí neustále tupě kopírovat jemu nesrozumitelné povely pro počítač nebo hledat co, kde, jak, proč. Zjistí, že podobnosti syntaxe v command-line se syntaxí v systémových souborech a scriptech[79] nejsou náhodné. Pro zjednodušení práce si časem může napsat vlastní jednoduchý script nebo si vytvoří programový celek v komplexní aplikační rovině.

V GNU/LINUX jsou snad všechny důležitá rozhodnutí činěna skrze napsání příkazu v Command-Line Interface - zkráceně CLI[99]. Poté se zápis příkazu potvrdí klávesou [ENTER]. Ve WINDOWS je obdobou 'cmd.exe' nebo "Powershell". V jednoduchosti - CLI je černé okno s čekajícím kurzorem.

INFO: Poškodit si systém neuváženým krokem je jistě hloupost. Nedílnou součástí rozhodování jsou správné informace a schopnost s těmito informacemi pracovat. Uživatelská znalost příkazů zabrání neodbornému nebo zbrklému zásahu už v zárodku. Přístupová práva ROOT k systémovým nastavením jsou výbornou pojistkou.

CLI je firewallem před nechtěným. Kdokoliv chce v systému cokoliv nastavit či pozměnit musí vědět proč tak činí. Do doby než zjistí jak to provést, o co mu jde, co potřebuje a proč to chce tak a ne jinak, musí porozumět základům CLI k linuxovému TERMINAL a psaní alespoň jednoduchých příkazů.

Četnost příkazů při nastaveních LAW nebude moc. Jejich použitím bude jejich množství v čase klesat ale ze začátku jich bude víc. Při tvorbě se už nikdo nechce zdržovat zbytečným psaním a čtením. Podotýkám, že zbytečným, nikoliv nepotřebným. Časem si dovede sám sobě pracné úkony velmi zjednodušit a mnoho nudných rutin zautomatizovat nebo přizpůsobit až do klikací podoby. Právě proto, že se naučí pracovat s příkazy a eventuálně jejich řetězením. A bude umět tyto příkazy zapsat do příkazové řádky, spouštěče[REF] nebo do skriptu. Ale do doby než bude vědět co dělá, mu v neodborném zásahu zabrání právě potřeba a nutnost se nejdřív naučit a správně využít možností příkazové řádky.

INFO: V textu budu místo počeštěných termínů s interpunkcí používat standardní ususy.
uživatel=user
jméno_počítače=hostname

8.1.1. PROMPT

2020-05-12

K zapsání příkazu je nutné otevřít okno s přístupem k TERMINAL. Oknem může být xfce4-terminal[REF], XTerm atd. Je jich nespočetně. V něm se interpretují příkazy pro počítač nebo celé sítě počítačů. Aplikaci naleznete někde v MENU > Systém > xfce4-terminal.

V každém systému může být tvar PROMPT jiný. V DEBIAN, v nejjednodušším tvaru se v okně vypíše pouze:

  • $ _ (DOLLAR) s kurzorem - uživatelský účet;

  • # _ (number sign, HASH) s kurzorem - přihlášení jako ROOT;

  • > _ je na začátku řádku při zalomení[REF] příkazu.

Řádek může obsahovat pracovní adresář, datum, může být vyveden barevně - editace nastavení je na uživateli. Někdo si nechá vykreslit logo distribuce. Nastavení je v souboru ".bashrc" v domovském adresáři. Soubory s tečkou na začátku jsou skryté soubory. Nechte si ve správci souborů zobrazit skryté soubory a zobrazí se i tento soubor.

Výzva k zadání příkazu je PROMPT. Nejběžnějším formátem je user@hostname:~$.

Okno TERMINAL - PROMPT
user@hostname:~$ _                      1

Z příkladu instalace to je studio@debian:~$.

Okno TERMINAL - PROMPT
studio@debian:~$ _                      2
root@debian:~# _                        3
1 Generický USER tvar s dollarem "$".
Za tvojtečkou je pracovní adresář. Znak "~"[REF] zkracuje zápis cesty pro domovský adresář.
2 PROMPT z příkladu instalace. Bez zkrácení "~" by byl PROMPT ve tvaru studio@debian:/home/studio$.
Podívejte se na přehlednou tabulku[REF] hierarchie souborového systému o pár kapitol dál.
3 PROMPT pro správce systému se znakem "#" (HASH). Domovský adresář správce je "/root".
Ještě jednou - tabulka[REF] s adresářovou strukturou.

8.1.2. Zápis příkazu & historie

2020-05-12

UNIX-LIKE operační systémy důrazně rozlišují při psaní příkazů, pojmenovávání adresářů atd…​ mezi malými a velkými písmeny. Příkaz není příkaz ani PŘÍKAZ. V jedné složce mohou být současně soubory "Soubor", "soubor", "SOUBOR".

Názvy adresářů a souborů s mezerami pište v uvozovkách. Uvozovky zapouzdří název i s cestou a TERMINAL si příkaz vyloží správně. Bez uvozovek se taky něco vykoná ale jinak než jaký byl úmysl.

Okno TERMINAL
studio@debian:~$ cat "/etc/sou bor.txt" 1
studio@debian:~$ cat /etc/sou bor.txt   2
studio@debian:~$ cat "/etc/soubor.txt"  3
1 Příkaz cat vypíše obsah 1 souboru - "/etc/sou bor.txt".
2 Příkaz cat vypíše obsah 2 souborů - "/etc/sou" a "bor.txt" z pracovního adresáře.
Nebo napíše chybovou hlášku.
3 Zapsat uvozovky zbytečně není chyba.

Příkaz time read i s mezerou je příkazem. Ne názvem souboru. Uvozovky by byly chybou. Zápis příkazu je daný.

Okno TERMINAL - Zápis příkazu a historie
studio@debian:~$ time read              1
                                        2
^C                                      3
real    0m5.848s                        4
user    0m0.006s
sys     0m0.001s
studio@debian:~$ time read              5

^C
real    0m3.459s
user    0m0.003s
sys     0m0.001s
studio@debian:~$ history -c             6
studio@debian:~$ _                      7
^D                                      8
1 [ENTER]
2 V TERMINAL se nebude dít nic ale příkaz běží.
3 Kombinace kláves [CTRL]+[C] ukončí spuštěný příkaz.
Nejen příkaz time read ale i jakýkoliv jiný příkaz běžící v této příkazové řádce.
4 Nejjednodušší stopky s přesností na tisíciny.
5 Použijte kurzorovou klávesu [UP], zkuste [DOWN].
Poslední zadaný příkaz se zapíše do historie příkazů - není nutno je zapisovat neustále. Stačí je vyhledat v historii. Historii lze editovat[REF] v souboru ".bash_history" v domovském adresáři. Ale nechte si ve správci souborů zobrazit skryté soubory. Soubory s tečkou na začátku jsou skryté očím běžného uživatele. Jsou to konfigurační soubory k USER účtu. Konfigurační soubory jiného uživatele jsou zase v jeho domovském adresáři, v jeho účtu.
6 Příkaz history -c vyčistí historii.
7 Obrazovka TERMINAL se vyčístí [CTRL]+[L].
8 Klávesová zkratka [CTRL]+[D] ukončí TERMINAL.
! V dalším textu, až na výjimky, zkrátím PROMPT z dlouhého zápisu studio@debian:~$ na přehlednější $.

8.1.3. Zalomení příkazu

2020-05-22

Použití příkazové řádky ani dlouhé příkazy nejsou při tvorbě časté. K tomuto účelu se používají různé zkratky, zástupci na ploše, spouštěče, historie a téměř 100% práce se udělá myší.

Zalomení příkazu se používá v případech:

  • pro zpracování konkrétní úlohy nemusí být žádoucí použít objemnou aplikaci protože běh časově náročné operace nebo monitoring zabere zbytečně mnoho systémových prostředků a na dlouhou dobu.

  • ani jedna z GUI aplikací neumí konkrétní příkaz zpracovat.

  • příkaz je sice krátký ale okno TERMINAL je záměrně úzké aby při práci zbytečně nepřekáželo a zároveň byl monitorován výsledek nějaké operace, která probíha v reálném čase. A zalomit i krátký příkaz může být v takové situaci přehledné.

Následující příklad je záměrně dlouhý ale pro názornost postačuje.

Okno TERMINAL - Příklad zalomení příkazu
$ play \                                1
> sfx.wav repeat 4 \                    1
> | sox -t pulseaudio alsa_output.pci-0000_00_1f.3.analog-stereo.monitor \ 1
> -r 44100 -c 2 -t wav \                1
> test.wav \                            1
> && play test.wav                      2
$ _                                     3
1 Dlouhý zápis příkazu lze zalomit na více řádků.
Zapište v místě zalomení mezeru [SPACE], poté zpětné lomítko "\" (BACKSLASH) a odentrujte. Příkaz se zalomí do nového řádku začínajícím znakem ">". Pokračujte v psaní. Psaní příkazu se zruší [CTRL]+[c].
1) Příkaz `play` potichu přehraje \
2) soubor "sfx.wav" 1x original + 4x repeat (celkem 5x) \
3) a zapíše z PULSEAUDIO serveru a jeho konkrétního výstupu \
4) se samplerate 44100 Hz, stereo - 2 kanály, jako typ wav \
5) do souboru "test.wav" \
6) a po dokončení úlohy přehraje výsledek operace příkazem `play test.wav`.
2 [ENTER] na konci příkazu.
3 Po ukončení příkazu vypíše TERMINAL nový PROMPT.

8.2. 'man' - manuálové stránky

2020-05-12

K vyhledání nápovědy k programům a příkazům, pracujícím často na pozadí systému, je nejlépe pracovat s příkazovým řádkem. Bohužel, tyto manuály jsou z 99.99% v angličtině. Zbytek je ve francoužštině, italštině, španělštině a tak ;-). V CLI se nápověda vyvolá příkazem man [100] následovaným jménem příkazu, ke kterému se nápověda vztahuje.

Syntaxe[84] příkazu man v TERMINAL je

xfce4-terminal - Syntaxe
$ man název_příkazu

V okně man slouží:

  • k pohybu po stránce kurzorové klávesy [UP], [DOWN], [PGUP], [PGDN];

  • klávesa [/] (lomítko) je pro hledání;

    Stiskem klávesy se lomítko ukáže ve spodní části okna - ve STATUSBAR. Stačí napsat hledaný řetezec.

  • další výskyt výrazu - klávesa [n], předchozí [N];

  • ukončení hledání - [ESC], poté [u];

  • režim prohlížení se ukončí klávesou [q].

xfce4-terminal - Zobrazení manuálu k příkazu 'xfce4-terminal'
$ man xfce4-terminal

Projděte si manuál.

xfce4-terminal - Sekce manuálových stránek
NAME                                    1
       xfce4-terminal - A Terminal emulator for X

SYNOPSIS                                2
       xfce4-terminal [OPTION...]

DESCRIPTION                             3
       xfce4-terminal is what is known as an X terminal emulator, often...

OPTIONS                                 4
       ...
       --minimize
           Set the last-specified window into minimized mode; applies to only
           one window; can be specified once for each window you create from
           the command line.

       --show-menubar
           Turn on the menubar for the last-specified window. Can be specified
           once for each wi...

EXAMPLES                                5
FILES                                   5
AUTHORS                                 5
xfce4-terminal 0.8.7.4             05/15/2018                 XFCE4-TERMINAL(1)
1 Manuálové stránky začínají jménem příkazu a krátkým popisem jeho funkce.
2 SYNOPSIS je souhrnem zápisu.
Určuje pořadí zápisu. Cokoliv v hranatých závorkách [ ] je nepovinné. Začátečník může tyto informace vynechat a nemusí je vůbec použít.
3 DESCRIPTION je podrobnější popis příkazu.
4 V OPTIONS jsou popsány vnitřní funkce a přepínače.
5 Ke konci manuálových stránek jsou mnohdy uvedeny příklady, adresáře a soubory používané příkazem, jména autorů, copyright, chyby, verze software atd…​

Okno s manuálem zavřete klávesou [q].

8.2.1. Argumenty, parametry

2020-06-16

Jsou popsány v manuálech. Často jich má příkaz na několik stran. Není potřeba se jich bát. Nesprávně zapsané argumenty budou příkazovým řádkem oznámeny a příkaz se nevykoná. Určitě nikdo nepotřebuje všechny znát a určitě je nebudete potřebovat při tvorbě. Seznámení se s argumenty je však potřebné. Potom je budete moci příležitostně použít nebo alespoň budete vědět, že je lze použít a budete vědět co to je vlastně za příkazem zapsáno - stačí se podívat do manuálu. I GUI software má často ve svých nastaveních možnost jak nějakou výslednou operaci uživatelsky ovlivnit či pozměnit.

  • ARGUMENT je spíš přepnutí vnitřní funkce příkazu. Je dán a má jednoznačný zápis, který je v manuálu popsán.

  • PARAMETER je zadání uživatelské - kupříkladu zadání cesty, jména souboru, hardwarového zařízení - cokoliv co uživatel zadá ale příkaz nezná hodnotu předem.

Většina příkazů je psáno ve tvaru command -argument parameter. Všeobecně se argumentům a parametrům říká přepínače a v dalším textu je nebudu rozlišovat.

INFO: Příkazy se učte psát v uživatelském TERMINAL. Máte zaručeno, že i když zapíšete něco nesprávně nebudete psát příkazy systémové. K těm TERMINAL uživatele nepustí. K tomu je potřebné správcovské přihlášení. Psaní systémových příkazů v uživatelském TERMINAL vypíše hlášku …​ failed: Operation not permitted - operace není povolena. Můžete si pobrblat účet ale ten se dá buď opravit nebo vytvořit nový. Ale nepoškodíte si instalaci a systém samotný.

Podívejte se ještě jednou do manuálu k xfce4-terminal.

xfce4-terminal - Zobrazení manuálu 'xfce4-terminal'
$ man xfce4-terminal

V sekci OPTIONS bude mimo jiné popsán i přepínač --minimize. Pro pohyb a hledání v manuálu použijte klávesy[REF]. Lomítko [/] je pro hledání. Poté zapište pouze "--minimize". Stačí i část hledaného textu a další výskyt najdete s [n], předešlý [N]. Nemusíte hledat očkem.

xfce4-terminal - Sekce OPTIONS
...
SYNOPSIS
       xfce4-terminal [OPTION...]

OPTIONS                                 1
       ...
       --maximize
           Set the last-specified window into maximized mode; applies to only
           one window; can be specified once for each window you create from
           the command line.

       --minimize                       2
           Set the last-specified window into minimized mode; applies to only
           one window; can be specified once for each window you create from
           the command line.

       --show-menubar
           Turn on the menubar for the last-specified window. Can be specified
           once for each wi...
1 V OPTIONS jsou popsány vnitřní funkce, přepínače, argumenty, zápis parametrů.
2 Mezi jinými tam bude i přepínač --minimize.

Drže se zápisu v sekci SYNOPSIS bude příkaz s argumentem zapsán ve tvaru xfce4-terminal --minimize. Takto funguje přepínač (ARGUMENT, PARAMETER).

Okno s manuálem buď zavřete klávesou [q] nebo si pro psaní otevřete ještě jedno okno TERMINAL.

xfce4-terminal - Spuštění příkazu s argumentem
$ xfce4-terminal --minimize             1
$ mousepad -v                           2
Mousepad 0.4.1
$ man -k terminal                       3
ttyS (4)             - serial terminal lines
ttytype (5)          - terminal device to default terminal type mapping
uxterm (1)           - X terminal emulator for Unicode (UTF-8) environments
x-terminal-emulator (1) - A Terminal emulator for X
xfce4-terminal (1)   - A Terminal emulator for X
xterm (1)            - terminal emulator for X
1 Napište příkaz s přepínačem.
Spustí se nové okno TERMINAL ale minimalizované v panelu.
2 Příkaz s přepínačem vypíše krátké info o verzi editoru MOUSEPAD.
3 Nalezne programy související s klíčovým slovem "terminal".
Ve vyhledaném seznamu bude i xfce4-terminal.

I když jste si nic nezapamatovali - víte co to je za příkazem zapsáno, k čemu to slouží a kde hledat vysvětlení k jednotlivým argumentům. Po delší době se budete v příkazech orientovat automaticky a otevřením nějakého skriptu v editoru můžete částečně porozumět kódu a upravit ho tak aby počítač pracoval přesně podle pokynů.

8.2.2. Kumulace argumentů

2020-06-18

Přepínačů může být za sebou více. Není-li v sekci SYNOPSIS uvedeno jinak tak na pořadí nezáleží. Tímto způsobem ARGUMENT přepíná vnitřní funkce snad jakéhokoliv příkazu a mnohých GUI aplikací.

Utilitka grep hledá text v souborech a je popsána v jiné kapitole[REF]. Tady ji použiji pouze pro vysvětlení kumulace argumentů.

V následujícím příkladu je každý řádek ve tvaru grep -argumenty co_hledat kde_hledat. Příkazový řádek provede vždy tu samou operaci i když je v každém řádku zápis toho samého - jen jinak formulován.

  • ARGUMENT je dán a jeho zápis určil vývojář softwaru.

    • -argumenty "-n -H -I -i -F" upřesní, že do výpisu bude zahrnut i název souboru a číslo řádku, ve kterém byl řetězec nalezen a nebude rozlišovat ve velikosti písmen hledaného textu.

  • PARAMETER zadá uživatel.

    • co_hledat - příkaz grep vyhledá všechny řádky jenž obsahují text "hist".

    • kde_hledat - hledat bude v souboru "~/.bashrc".

xfce4-terminal - Kumulace argumentů
$ grep -n -H -I -i -F hist ~/.bashrc        1
$ grep -nHIiF hist ~/.bashrc                2
$ grep -niFHI hist ~/.bashrc                3
$ grep --line-number -HIiF hist ~/.bashrc   4
1 Každý ARGUMENT je zapsán zvlášť.
2 Kumulace argumentů.
Argumenty jsou nakupené za pomlčkou.
3 Na pořadí nezáleží není-li v manuálu SYNOPSIS sekci jednoznačné pořadí uvedeno.
4 Argumenty můžou mít i dlouhý zápis.
Argument -n je nahrazen jeho dlouhým zápisem --line-number (viz man grep). Argumenty s dvěma pomlčkami nejde kumulovat.

LINUX. Někdy na nervy ;-). Naučíte-li se pracovat v LINUX budete moci pracovat i v UNIX, v BSD systémech, ze kterých vychází MacOS a jiných operačních systémech. WINDOWS je pro klikače i když se některá trošičku nastavení realizují skrze příkazovou řádku.

8.3. Domovský adresář

2019-07-08

Grafém "~" (tilda, vlnovka) reprezentuje cestu k domovskému adresáři.

  • Nahrazuje zápis "/home/studio" v uživatelském účtu.

  • V příkazové řádce s právy ROOT nahrazuje cestu "/root".

Tilda ~ zkracuje zápis. Je to relativní zápis cesty k domovskému adresáři. Absolutní nezkrácená cesta má tvar "/home/studio" nebo "/root".

xfce4-terminal
studio@debian:~$ _                      1
root@debian:~# _                        2
1 Domovský adresář uživatele "/home/studio".
2 Domovský sdresář ROOT "/root".

Složky zobrazené v domovském adresáři se upravují v souboru "~/.config/user-dirs.dirs".

V souboru jde upravit i názvy složek, které jsou nechtěně z instalace v jiném jazyce[REF] a tak se zobrazují 2x. Nechcete-li některou ze složek po startu nahrávat - vymažte ji ve správci souborů a v tomto souboru ji zakomentujte. Jinak se vždy po restartu vytvoří i když byla ve správci smazána.

Můžete si vytvořit kupříkladu novou složku "~/Project" a v souboru ji dopište. Nemá to nějaký zásadní význam protože složku jde vytvořit i klasicky. Pouze v některých případech - např. v některých dialozích pro otevření souboru - se zobrazí v nabídce pro rychlé přepnutí adresáře.

Editace souboru "~/.config/user-dirs.dirs"
XDG_DESKTOP_DIR="$HOME/Desktop"
XDG_DOWNLOAD_DIR="$HOME/Downloads"
XDG_TEMPLATES_DIR="$HOME/Templates"
XDG_DOCUMENTS_DIR="$HOME/Documents"
XDG_MUSIC_DIR="$HOME/Music"
XDG_PICTURES_DIR="$HOME/Pictures"
XDG_VIDEOS_DIR="$HOME/Videos"

#XDG_PUBLICSHARE_DIR="$HOME/Public"
XDG_PROJECT_DIR="$HOME/Project"

Řetězec "$HOME" (interní proměnná[101]) také v příkazové řádce supluje zápis pro domovský adresář a lze ho regulérně použít místo "/home/studio".

xfce4-terminal
studio@debian:/etc$ cd $HOME            1
studio@debian:~$ _
1 Příkaz cd změní adresář na domovský "$HOME".

8.4. Pracovní adresář

2020-05-13

Připomenu, že není důležité si pamatovat každý příkaz. Jde pouze o pochopení syntaxe - zápisu, porozumění CLI a umění zorientovat se v systému. Odklikat je pohodlnější ale vědět jak systém pracuje je pro nastavení audia velmi důležité.

Příkaz cd (change directory) změní v příkazové řádce cestu. Téměř každý uživatel pracuje se souborovým správcem a příkaz moc nevyužije. Jeho nepostradatelnost ocení až při vytváření nových spouštěčů, ikonek, eventuálně skriptů atp. Bez příkazu cd by nefungoval žádný ze správců souborů.

Příklad naznačí jak uživatel v PROMPT pozná, ve kterém adresáři je.

xfce4-terminal - 'cd'
studio@debian:~$ _                      1
studio@debian:~$ cd /etc                2
studio@debian:/etc$ _                   3
1 Uživatel je v domovském adresáři "~".
2 Změna adresáře z domovského "~" na "/etc" příkazem cd.
3 PROMPT vypíše cestu nového aktivního adresáře.
Příkaz cd /etc změnil "/etc" na aktivní pracovní adresář. Příkazy se nyní provedou na tomto adresáři.

Mezi domovským a pracovním adresářem je zásadní rozdíl.

  • HOME DIRECTORY[102] - domovský adresář může být zároveň pracovním adresářem. Domovský adresář je neustále stejný a je ve stejném umístění.

    • Domovským adresářem uživatele je "/home/user". Z příkladu instalace je jím "/home/studio".

    • Domovským adresářem správce je složka "/root". Do ní nemá žádný z uživatelů přístup nemá-li oprávnění.

INFO: V dalším textu budu používat místo "/home/studio" všeobecný tvar "/home/user".
  • WORKING DIRECTORY[103] - pracovní adresář nemusí být nutně adresářem domovským. Pracovní adresář se mění na přání uživatele a může jím být kterýkoliv adresář v počítači.

xfce4-terminal - Příklad
studio@debian:~$ _                      1
studio@debian:~$ cat hostname           2
cat: hostname: No such file or directory
studio@debian:~$ cat /etc/hostname      3
debian
studio@debian:~$ cd /etc                4
studio@debian:/etc$ cat hostname        5
debian
studio@debian:/etc$ cd ~                6
1 Pracovním adresářem je "~".
2 Příkaz cat žádný soubor nezobrazí.
Soubor "hostname" v adresáři "~" není. TERMINAL vypíše chybovou hlášku.
3 Příkaz cat vypíše obsah souboru "hostname".
Soubor "hostname" je v adresáři "/etc". Zadejte příkaz s cestou.
4 Přepnutí do "/etc".
Pracovním adresářem je "/etc".
5 Příkaz cat vypíše obsah souboru "hostname".
Není nutné zadávat cestu.
6 Přepnutí pracovního adresáře zpět do domovského adresáře.
Pro vysvětlení:
  • Příkaz cat [REF] vypíše do TERMINAL obsah souboru/ů.

  • V "/etc/hostname" souboru je název počítače.

    S ROOT právy[REF] lze název změnit. Po restartu se počítač bude jmenovat jinak.

Aktivní pracovní adresář zjistíte příkazem pwd (print working directory).

xfce4-terminal - 'pwd'
studio@debian:~$ pwd
/home/studio
studio@debian:~$ cd /usr/share
studio@debian:/usr/share$ pwd
/usr/share

Při psaní v TERMINAL lze použít i zástupné znaky. Dvě tečky ".." umožňují přejít v adresářové hierarchii o složku výš.

xfce4-terminal
studio@debian:~$ cd ..                  1
studio@debian:/home$ _
studio@debian:~$ cd ../..               2
studio@debian:/$ _
1 Přejde do adresáře o úroveň víš.
Mnohdy je to rychlejší než psát absolutní cestu.
2 Přejde do adresáře o dvě úrovně víš.

8.5. 'su' - ROOT přihlášení

2019-07-08

!! Opatrnost je na místě. TERMINAL je mimořádně mocný nástroj. Prostřednictvím příkazové řádky lze spustit i příkazy jenž nejsou spustitelné jiným způsobem.

Práce se systémem vyžaduje ROOT přihlášení příkazem su (substitute user) a s argumentem -. I s mezerou.

xfce4-terminal
studio@debian:~$ su -
Password:                               1
1 TERMINAL počká na zadání a potvrzení hesla.

V linuxových systémech se v příkazové řádce při zadávání hesla nezobrazují žádné znaky. Ani hvězdičky. Nesprávně zadané heslo vypíše hlášku su: Authentication failure a příkaz se ukončí. Musí se zadat opět.

Potvrzením hesla se aktivuje ROOT účet. V PROMPT se místo znaku dolaru $ zobrazí znak hash #.

xfce4-terminal - ROOT PROMPT
root@debian:~# _

Klávesovou zkratkou [CTRL]+[d] se práce v ROOT účtu ukončí. TERMINAL se přepne do příkazové řádky uživatelského účtu. Opětovné [CTRL]+[d] ukončí práci i v uživatelském účtu a zavře okno TERMINAL.

8.6. Spuštění aplikace …​

8.6.1. …​ jako USER

2020-05-18

Otevřít aplikaci je velmi jednoduché. Stačí ji vyhledat v MENU a spustit.

V nemnoha případech se však víc vyplatí aplikaci spustit z příkazového řádku i když má vlastní GUI rozhraní. Aplikace zůstane součástí okna TERMINAL, ve kterém se poté vypisují zaznamenané události. Uživatel je v případě problémů informován o chybách, které se v takto spuštěném programu vyskytli. Stačí do okna TERMINAL zapsat jednoduchý příkaz. Ač chybové hlášky působí až strašidelným dojmem z kvalit operačního systému nejsou v příkazové řádce tak časté a v textu jsou především pro ilustraci.

xfce4-terminal - Spuštění aplikace
$ mousepad                              1

(mousepad:6431): dbind-WARNING **:      2
15:28:57.289: Couldn't register with accessibility bus:
Did not receive a reply. Possible causes include:
the remote application did not send a reply, the message bus security
policy blocked the reply, the reply timeout expired, or the network
connection was broken.

(mousepad:6431): Gtk-WARNING **:        2
15:28:57.296: Theme parsing error: gtk.css:998:13: not a number

^C                                      3
$ mousepad &                            4
$ mousepad > /dev/null 2>&1 &           5
1 Spustí textový editor.
V okně TERMINAL, ve kterém byla spuštěna aplikace nelze spouštět jiné příkazy. Okno TERMINAL je PARENT PROCESS[104] - rodičovským procesem aplikace MOUSEPAD. MOUSEPAD je potomkem - CHILD PROCESS okna TERMINAL. Spuštěné úlohy jsou vzájemně propojeny.
2 Programové chyby programu MOUSEPAD se vypíší do TERMINAL i s krátkým popisem.
3 Stiskem [CTRL]+[c] lze program ukončit i z příkazové řádky a TERMINAL se uvolní pro další použití.
4 Zapsáním znaku & (ampersand) za příkaz spustíte aplikaci jako samostatný proces.
TERMINAL aplikaci spustí a zůstane připraven pro další použití. Každý z procesů je jeden na druhém nezávislý. Přesto někdy PROMPT zůstane zobrazen nesprávně a TERMINAL zobrazuje události zaznamenané v aplikaci nadále. Jinak je funkční a zapsané příkazy provede.
5 Jakékoliv zaznamenané události budou spolehlivě odeslány > do /dev/null.
PROMPT se zobrazí správně. Zařízení null je v computeru digitální černá díra a cokoliv v ní skončí je nevratně pryč. Odeslání souboru do tohoto zařízení je to samé jako když soubor vymažete. Pouze se už nedá obnovit. Podívejte se do adresáře "/dev" a tam bude null v seznamu vedle dalších zařízení jako harddisků, usb, memory a tak podobně. Zápis 2>&1 je informace pro systém co provést s chybovým hlášením[105].

Takto spouštěné GUI aplikace nejsou denním chlebem ale pro odladění chyb je znalost možností příkazové řádky ku prospěchu věci. Zároveň lze z informace dedukovat jak zapsat příkaz vytvořením vlastního spouštěče[REF]. Či už se zápisem programových chyb do systémových hlášení nebo bez něj.

Není potřeba si všechno pamatovat. Mnohem důležitější je o tom vědět a až bude potřeba tak se informace dohledá.

Programy či příkazy lze spouštět i sekvenčně - najednou a popořadě za sebou.

xfce4-terminal - Sekvenční spuštění
$ date ; history                        1
Fri 18 May 2020 02:51:16 PM CEST
    1  nmcli connection up id "wifi"
    2  mount /mnt/usb0
    3  umount /mnt/usb0
$ history ; date                        2
    1  nmcli connection up id "wifi"
    2  mount /mnt/usb0
    3  umount /mnt/usb0
Fri 18 May 2020 02:56:35 PM CEST
$ command_1 ; app_1 ; command_2         3
1 Spustí popořadě 2 programy.
Nejdřív date a poté history a jejich výstup vypíše do TERMINAL. Takto spuštěné programy nejsou vzájemně ovlivněny a každý z nich provede svůj úkol.
2 Opět spustí 2 programy ale v opačném pořadí.
Takto zapsaný příkaz vypíše datum až za historii příkazů.
3 Příkazů a aplikací může být spuštěno více najednou.

8.6.2. …​ jako ROOT

2020-05-19

Příkazy v ROOT účtu se spouští stejně jako příkazy v uživatelském prostoru. Totéž platí i pro pravidla v příkazové řádce ROOT. Jsou totožné s pravidly v USER účtu[REF]. Ze strany systému nejsou kladena žádná omezení. Příkaz je příkazem a jeho spuštění provede akci. Ať ho spouští USER nebo ROOT.

DEBIAN 9

"STRETCH" a nižší

Spuštění GUI aplikace s ROOT právy je stejně jednoduché jako spuštění aplikace v uživatelském prostoru. Stačí se přihlásit k ROOT účtu a aplikaci spustit standardně příkazem. Nemusíte mít povolenou ani službu "PolicyKit Authentication Agent".

xfce4-terminal
$ su -                                  1
Password:
# synaptic                              2
# synaptic &                            3
1 Přihlášení k ROOT účtu.
2 Aplikaci spustíte jako potomka - CHILD PROCESS.
TERMINAL je PARENT PROCESS - rodičovský proces spuštěné úlohy a jsou vzájemně propojeny.
3 Aplikaci spustíte jako samostatný proces.
Každý z procesů je jeden na druhém nezávislý.
a) DEBIAN 10 - s povolenou službou "PolicyKit Authentication Agent"

"BUSTER" a vyšší

Stačí zapsat příkaz pkexec následovaný jménem aplikace. Aplikaci můžete otevřít i z MENU.

xfce4-terminal
# pkexec synaptic &                     1
1 Otevře dialogové okno k zadání hesla a poté spustí aplikaci.
b) DEBIAN 10 - se zakázanou službou "PolicyKit Authentication Agent"

"BUSTER" a vyšší

Povolení služby není akutní. Kdo chce mít systém co nejlehčí nastaví bezproblémové spouštění jinak. Celé nastavení vyžaduje napsání zhruba 30 znaků.

Jinému se může jevit další nastavení zbytečné. V tom případě povolte službu "PolicyKit Authentication Agent"[REF]. Časem se můžete k tématu vrátit. A někdo si nastavení rád alespoň přečte aby se seznámil s možnostmi a svůj systém poznal detailněji.

INFO: V systému bude o službu méně ale nejedná se o službu, která by významně zatěžovala systém. Tyto změny jsou v novějších systémech důsledkem vývoje zabezpečení účtů novým mechanizmem. Starší verze DEBIAN jsou k uživateli ohleduplnější.

Zobrazit detaily nastavení >>>

Při spuštění ROOT aplikace s oknem a bez povolené služby nastane nepříjemná situace a běh programu zlobí. Ač je příkaz zapsán správně, aplikace se nespustí a TERMINAL vypíše chybové hlášení. Spuštění aplikace s GUI (grafickým rozhraním) vyžaduje na systému kromě spuštění programového kódu i vykreslení okna aplikace.

xfce4-terminal - Chybové hlášení - Gtk-WARNING
$ su -                                  1
Password:
# synaptic &                            2
(doublecmd:4714): Gtk-WARNING **:       3
21:58:05.495: cannot open display:
^C                                      4
[1]+  Ukončena 1   doublecmd
# _                                     5
^D                                      6
$ xhost +                               7
access control disabled, clients can connect from any host
1 Přihlášení k ROOT účtu.
2 Spuštění aplikace SYNAPTIC.
3 TERMINAL vypíše chybovou hlášku.
Jiný uživatel nemá povoleno GTK vykreslování okna. ROOT je také jiný uživatel. Na pozadí běží proces bez okna a je v nekonzistentním stavu.
4 Ukončete běžící proces klávesovou zkratkou [CTRL]+[c].
5 Přihlášení k ROOT účtu zůstane aktivní.
6 Ukončete práci v ROOT účtu s klávesami [CTRL]+[d].
7 Povolte ve vašem účtu vykreslení oken jiným uživatelům.

Polovina práce je hotova. TERMINAL nezavírejte. Další nastavení proběhne v ROOT účtu. Přihlašte se opět jako ROOT.

xfce4-terminal - 'export $DISPLAY'
$ su -
Password:
# echo $DISPLAY                         1
:0.0
# export DISPLAY=:0.0                   2
# synaptic &                            3
[1] 4714                                4
# _
1 Zjistěte si informaci o zobrazovacím zařízení.
Stačí když napíšete příkaz echo $DISPLAY a budete přesně vědět co napsat v dalším příkazu.
2 Exportujte do systému informaci o použitém zobrazovacím zařízení.
Jinými slovy - nastavíte DISPLAY=:display.monitor, který bude pro vykreslení okna použit. Příkaz export nemá vlastní manuálové stránky. Je součástí linuxového BASH[106] a info o příkazu export je v manuálových stránkách man bash.
3 Spusťe aplikaci.
4 Proces běží.

Je neštěstím, že toto nastavení není perzistentní. Po restartu je nutné kroky opakovat chcete-li spustit nějakou GUI aplikaci jako ROOT. Jde také použít historii[REF] příkazů - nemusíte příkazy neustále psát. Ale umí to být otravné a hlavně ze začátku když se počítač nastavuje a přístup k ROOT účtu je používán velmi často. Proto:

  1. přidejte do automaticky spouštěných aplikací[REF] příkaz xhost +. Odhlašte se a znovu přihlašte. Funkce se inicializuje automaticky přihlášením do účtu. Další možností je zapsat příkaz xhost + do "~/.bashrc".

    Soubor "~/.bashrc" - Příklad
    # ~/.bashrc: executed by bash(1) for non-login shells.
    # see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
    # for examples
    
    xhost +                                 1
    
    # If not running interactively, don't do anything
    case $- in
        *i*) ;;
    1 Zapište příkaz hned pod uvozující komentář vývojářů.
    Vložit se dá kamkoliv do souboru ale nesmí být součástí funkčního kódu. Komentář ve vašem počítači se může lišit.
  2. v ROOT účtu proveďte malou úpravu v souboru "/root/.bashrc".

    xfce4-terminal - Spuštění editoru
    $ su -
    Password:
    # echo $DISPLAY                         1
    :0.0
    # export DISPLAY=:0.0                   2
    # mousepad "/root/.bashrc" &            3
    1 Info o zobrazovacím zařízení.
    Není potřeba příkaz psát když si údaj pamatujete.
    2 Bez exportu zobrazovacího zařízení by spuštění editoru opět vypsalo chybové hlášení.
    3 Spuštění MOUSEPAD, který zároveň otevře soubor ".bashrc" pro úpravy.
    Uvozovky není nutné psát. V cestě ani názvech nejsou mezery. Napsal jsem je pro připomenutí zápisu uvozovek a ničemu tady nevadí. Ampersand "&" se píše jako poslední.
    Soubor "/root/.bashrc" - Příklad
    # ~/.bashrc: executed by bash(1) for non-login shells.
    
    # Note: PS1 and umask are already set in /etc/profile. You should not
    # need this unless you want different defaults for root.
    # PS1='${debian_chroot:+($debian_chroot)}\h:\w\$ '
    # umask 022
    
    export DISPLAY=:0.0                     1
    export DISPLAY=:0.1                     2
    export DISPLAY=:0                       3
    
    HISTSIZE=100
    HISTFILESIZE=1000
    
    # You may uncomment the following lines if you want `ls' to be colorized:
    export LS_OPTIONS='--color=always'
    atd...
    1 Na začátek souboru, hned pod uvozující komentář připište příkaz export DISPLAY=:0.0. Zápis pro jeden monitor.
    2 Pro další monitor zapište další řádek export DISPLAY=:0.1 atd.
    3 Jednořádkový zápis export DISPLAY=:0 supluje zbytečné psaní více řádků.
    Stačí když pro více monitorů zapíšete tento jeden řádek ale předešlé dva už nepište nebo je zakomentujte.

    Vypadá to složitě ale tímto způsobem lze na linuxových strojích zapojit celé panely monitorů. A nejen monitory na lokálním stroji ale i ty v síti z jiných počítačů. Tato architektura nastavení umožňuje zobrazit plochy z jiných počítačů na jednom místě nebo také spouštění konkrétní aplikace na konkrétním monitoru. Na tomto příkladu je znát jaké možnosti v nastaveních LINUX nabízí.

Po tomto nastavení už můžete v uživatelském prostoru vesele spouštět i ROOT aplikace s grafickým rozhraním. Nemusíte se více starat. Není potřeba ani autentizační služba.

8.7. 'alias' - zkrácení příkazu

2020-01-30

Jak ".bashrc", ".bash_history", ".bash_logout" tak i ".bash_aliases" jsou soubory pro nastavení BASH[106]. Všechny jsou v domovském adresáři a jako skryté soubory. Soubor ".bash_aliases" je pouze pro zapsání zkratek k příkazům.

Příkaz zapsaný ve tvaru command > /dev/null 2>&1 & sice zahazuje jakékoliv události[REF] běžícího procesu ale zápis do příkazové řádky je příliš dlouhý a dosti nepraktický. Často používané příkazy s dlouhým zápisem nahradí vytvoření ALIAS[107] - zkratky pro zápis příkazu.

Nastavit ALIAS lze i v souboru ".bashrc". Z instalace jich tam pár je. Podívejte se. Ale psaní do tohoto souboru není bez rizika. Soubor obsahuje také kód.

ALIAS může být i jedno písmeno, kterým se spustí program nebo programy v přesně daném pořadí a v takové konfiguraci, která je potřeba. Pro příklad jeden program umístí 100 pixelů zleva na ploše 3 a poté bude provedena záloha adresáře s novou tvorbou a vše vypáleno na CD/DVD. Uznávám - je to chvilka trápení s korektním zápisem příkazu. Ale pak už stačí napsat písmeno do příkazové řádky nebo vytvořit ikonu spouštěče v panelu a computer udělá co je v aliasu. Kdykoliv je příkaz vyvolán.

INFO: Další z možností jak si zjednodušit psaní příkazů je vyvolání historie příkazové řádky kurzorovými klávesami [UP], [DOWN] nebo hledání[REF] již použitých příkazů.
xfce4-terminal - Vytvoření souboru ".bash_aliases"
$ touch ~/.bash_aliases                 1
$ man -f xedit                          2
xedit (1) - simple text editor for X    3
$ man -f x-edit                         4
x_edit: nothing appropriate.            5
$ mousepad ~/.bash_aliases              6
1 Není-li soubor ".bash_aliases" v domovském adresáři vytvořte ho.
Vymyslete si název aliasu ale s ohledy na mezery, speciální znaky "+", "&", "$" atd, českou diakritiku nebo názvy instalovaných programů. Stačí písmena "a-z,A-Z", čísla "0-9", podtržítko "_" nebo pomlčka "-". Kupříkladu "xedit".
2 Ověřte si zda není instalován program se stejným jménem.
3 Program "xedit" je instalován.
TERMINAL vypsal o nalezeném programu krátký popis. Název není vhodný. Nemohli by jste spustit program "xedit". Vymyslete jiný název - "x-edit".
4 Ověřte nový název.
5 Název je v pořádku.
V systému program se stejným názvem není.
6 Soubor ".bash_aliases" editujte.
Editace souboru ".bash_aliases"
#   Komentáře a prázdné řádky nejsou povinností.
#   Příkazy pište mezi apostrofy.
#       Syntaxe:
#   alias příkaz='původní dlouhý příkaz'

#   Otevře textový editor MOUSEPAD
alias x-edit='mousepad > /dev/null 2>&1 &'

#   Příklad, který spustí zvukový server s konfigurací
alias jackd='/usr/bin/jackd -d alsa --device US2x2 --rate 48000 &'

#   Spustí minimalizovaně TERMINAL s audiomixérem
alias amix0="xfce4-terminal --minimize -e 'alsamixer --card 0 --view=all' &"

#   Uvozovky a apostrofy u komplexních příkazů se řídí stejnými
#       pravidly jako matematické závorky:
#   alias amix0=[xfce4-terminal -e (alsamixer --card 0) &]

# atd...
INFO: Příkaz jackd už v systému sice je ale spuštěním aliasu se přepíší default parametry příkazu příhodným uživatelským nastavením.

Po zapsání vlastních aliasů soubor uložte.

xfce4-terminal - Použití aliasů
$ source ~/.bashrc                      1
$ x-edit                                2
$ jackd                                 3
$ amix0                                 4
1 Zaveďte změny okamžitě bez odhlášení.
Příkaz source nemá vlastní manuál. Info o něm je v manuálu k BASH man bash. Příkaz čte a vykoná příkazy zapsané v souboru. Velmi volně přeloženo - restartuje BASH.
2 Alias spustí mousepad > /dev/null 2>&1 &.
3 Spustí zvukový server JACK s argumenty zapsanými v aliasu.
4 amix0 otevře alsamixer.
Alsamixer se otevře v minimalizovaném okně xfce4-terminal pro první audiokartu se všemi nahrávacími i přehrávacími ovládacími prvky.

Vytvoření aliasu pro systémový příkaz je to samé pouze je nutné ROOT přihlášení su - [REF] a editace ".bash_aliases" v domovském adresáři správce.

Soubor "/root/.bash_aliases"
# Alias příkazu provede upgrade programových balíků.
# Ověřte si zda není instalován program se jménem
# stejným jako je název nového aliasu - "upgrd".
alias upgrd='apt-get clean && apt-get update && apt-get upgrade && apt-get autoremove'
xfce4-terminal - Spuštění systémového upgrade
$ su -
Password:
# upgrd                                 1
1 Alias upgrd spustí příkaz apt-get clean && apt-get update && apt-get upgrade && apt-get autoremove.
V TERMINAL pak stačí odentrovat už jen souhlas s instalací. Ale i automatické odsouhlasení lze nastavit parametry (man apt-get). Napsat 5 písmen je rychlejší než se myší proklikat přes nabídky, čekat na spuštění SYNAPTIC a v něm klikat dál. Na druhou stranu - kam spěchat?
:-)

Uživatel ve většině případů zvolí spuštění aplikace přes nabídku MENU ale aliasem jde spustit i celé série příkazů nebo skripty. Aliasu lze přiřadit i klávesovou zkratku. Pro úplnost - ALIAS jde vytvořit i příkazem alias.

8.8. 'history' příkazů

2020-05-20

V příkazové řádce není potřeba psát příkazy neustále. Jedním ze způsobů jak spustit příkaz je alias, dalším je přímý zápis nebo předešlé příkazy jednoduše a rychle vyhledejte v historii příkazů. Už jsem se o ní vlažně zmínil v předchozím[REF] textu.

Konfigurace systému chvilku trvá. Zejména na začátku. Časem se však veškerá práce neuvěřitelně zjednoduší, usnadní a zrychlí.

Konfigurace historie je v souboru ".bashrc". Příklad: můžete si nastavit aby zápis příkazu s mezerou [SPACE] na začátku nebyl do historie zapisován. Ve svém nastavení nemusíte mít nastavení jako v příkladu ale můžete si konfigurační řádky dopsat. Nechtěná nastavení vymažte nebo zakomentujte. Popis ke všem nastavením historie je v manuálu k BASH man bash.

Soubor ".bashrc"
# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options
HISTCONTROL=ignoreboth:erasedups        1

# append to the history file, don't overwrite it
shopt -s histappend                     2

# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=500                            3
HISTFILESIZE=1000                       4
HISTIGNORE="zip *:vim:mc"               5
#HISTTIMEFORMAT="%F - "                 6
1 V HISTCONTROL oddělujte jednotlivá nastavení dvojtečkou.
'ignoreboth' - sloučí dvě nastavení - 'ignorespace' a 'ignoredups'.
 'ignorespace' - nezapisuje do historie příkazy s uvozenou mezerou na začátku.
 'ignoredups' - ignoruje duplicitu příkazů.
'erasedups' - maže duplikáty.
2 'shopt -s histappend' - nepřepíše historii při přihlášení.
Po každém přihlášení nebude soubor se starou historii přepsán ale nové příkazy do historie připíše.
3 HISTSIZE je maximální množství příkazů držených v paměti.
4 HISTFILESIZE je maximální počet příkazů zapsaných do souboru ".bash_history".
5 HISTIGNORE ignoruje historii napsaných příkazů.
Z příkladu - nebude do historie ukládat příkazy zip *, vim, mc. Příkazy oddělujte dvojtečkou. Hvězdička zastupuje jakýkoliv další řetězec zapsaný za příkazem. Příkaz zip do historie zapíše ale příkaz zip -u -r …​ už ne.
6 HISTTIMEFORMAT je zakomentován a toto nastavení bude ignorováno.
  • Kurzorová šipka [UP] posune v historii o příkaz zpět. Naopak, klávesa [DOWN] je pro reverzní pohyb.

  • Kombinace [ALT]+[<] přesune na záčátek historie, [ALT]+[>] na konec.

  • Klávesová kombinace [CTRL]+[r] v historii hledá už jednou spuštěný příkaz.

    Zapište pár písmen a TERMINAL automaticky zobrazí kdysi spuštěné příkazy odpovídající zapisovanému řetezci. Opakovaným stiskem [CTRL]+[r] hledá další výskyt. Klávesa [ENTER] vyhledaný příkaz rovnou spustí. Klávesa [RIGHT] hledaný příkaz zapíše do příkazové řádky. Před spuštěním si ho můžete ještě upravit.

    [ESC] hledaní zruší.

Použijte příkaz history. Zobrazí celou historii příkazů. Je zřejmé, že USER a ROOT historie budou každá jiná.

xfce4-terminal - Historie příkazů
$ history                               1
    1  nmcli radio wifi off
    2  xinput list
    3  xinput list-props 14
    4  xrdb -merge ~/.Xresources
    5  xinput set-prop 14 140 0 &
    6  mc
    7  xlinks2 &
$ !7                                    2
$  date                                 3
$ history -c                            4
1 Zobrazí historii příkazů.
2 !7 spustí příkaz s pořadovým číslem 7 - xlinks2 &.
Příkaz !88 spustí příkaz s pořadovým číslem 88.
3 Příkaz s mezerou na začátku se do historie neuloží, je-li v ".bashrc" nastaveno 'ignoreboth' nebo 'ignorespace'.
4 Vymaže celou historii.
TIP: a) Vytvořte si alias h='history'[REF]. V TERMINAL poté zapíšete jenom h místo history.
b) Připište v ".bashrc" do nastavení HISTIGNORE="zip *:vim:mc:h". Alias h se nebude do historie ukládat.

Do souboru "bash_history" se historie ukládá a můžete ho editovat. Nechtěné překlepy nebo nepotřebné příkazy můžete vymazat. Před editací zavřete všechny okna TERMINAL. Spuštěný TERMINAL má původní historii nahranou v paměti a zavřením okna by se opět uložila ta původní.

8.9. Řetězení příkazů

8.9.1. Pipeline

2020-05-28

PIPELINE[108] | (roura, pajpa). V dalším textu ji budu používat častěji a z příkladů bude funkce PIPELINE zřejmá. Výstup jednoho příkazu bude odeslán na vstup příkazu dalšího.

xfce4-terminal - Syntaxe pipeline
$ command_1 | command_2                                 1
$ command_1 | command_2 | command_3                     2
xfce4-terminal - Příklad pipeline
$ echo Ahoj                                             3
Ahoj
$ echo Ahoj | wc -l                                     4
1
1 Toto je veškerá složitost PIPELINE |.
Všechny informace z programu command_1, které by se vypsaly do TERMINAL budou odeslány | k dalšímu zpracování do command_2.
2 Zřetězeno může být tolik příkazů kolik je potřeba.
3 Příkaz echo přečte a vypíše na obrazovku řádek se zapsaným textem.
Tady je textem "Ahoj".
4 Příkaz echo tentokrát na obrazovku nic nevypíše.
Svůj výstup odešle dál. Příkaz wc (word count) s argumentem -l vypíše počet řádků, které z výstupu příkazu echo na jeho vstup dorazili.
xfce4-terminal - Praktické použití pipeline
$ su -                                                  1
# dmesg                                                 2
[     0.336262] ACPI: EC: event unblocked
[     0.336275] ACPI: \_SB_.PCI0.LPCB.EC0_: Used as boot DSDT E...
[     0.362496] hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0
[     0.374385] pnp: PnP ACPI init
# dmesg | wc -l                                         3
1805
# dmesg | grep error                                    4
[     9.585865] EXT4-fs (sda2): re-mounted. Opts: errors=remount-ro
[704042.053253] print_req_error: I/O error, dev sr0, sector 137856
[704043.145586] Buffer I/O error on dev sr0, logical block 17232, async page read
# dmesg | grep error | wc -l                            5
3
# dmesg | grep snd                                      6
[    12.425592] snd_hda_codec_conexant hdaudioC0D0: CX20751/2: BIOS auto-probing.
# _                                                     7
^D
$ _
1 Přihlašte se jako ROOT protože jde o práci v systémovém prostoru.
2 Zapište si příkaz jen tak zkusmo do TERMINAL.
Příkaz dmesg [109] je diagnostický nástroj. Vypíše informace i o ovladačích zařízení. Příkaz zapsán do příkazové řádky bez dalšího zpracování vypíše všechny dostupné informace, které od systému obdržel. Co řádek to jiná informace.
3 Řádků bude mnoho.
Příkaz wc -l vypíše počet řádku, které se k němu z výstupu dmesg dostali.
4 Tato ukázka už najde praktické využití při odstraňování chyb a čištění audiosystému.
Příkaz grep informace obdržené z dmesg zpracuje a do TERMINAL vypíše pouze řádky, ve kterých se vyskytuje slovo "error".
5 Takto lze bezpracně spočítat počet chyb. Příkaz wc -l vypíše počet řádku, které se po zpracování přes grep dostali až k němu.
6 Informace o zvukovém zařízení v systému.
V dmesg je zvukový ovladač značen jako "snd" (sound) a určitě bude vypsáno víc řádků než jeden.
7 Ukončení práce jako ROOT - [CTRL]+[d].

Tímto způsobem lze příkazy zpracovávat. Takto kombinován zápis příkazů je PIPING[108].

8.9.2. Redirecting >, >>

2020-05-22

REDIRECTING[110] neboli přesměrování <<, <, >, >> je obdobnou operací jako PIPING. PIPING odesílá výstup k dalšímu zpracování. REDIRECTING výstup přesměruje. Kupříkladu nevypíše zprávu do příkazové řádky ale výstup přesměruje a zapíše do souboru. Výstupem příkazu může být i tiskárna.

xfce4-terminal - Syntaxe přesměrování
$ command > soubor                                      1
$ command >> soubor                                     2
xfce4-terminal - Příklad přesměrování
$ echo Hello > hello                                    3
$ date >> hello                                         4
$ mousepad > /dev/null 2>&1 &                           5
$ > hello                                               6
1 command > soubor
Příkaz nenapíše do TERMINAL nic ale přesměruje > výstup z command do souboru. Přepíše celý soubor - původní text nahradí novým textem.
2 command >> soubor
Příkaz nenapíše do TERMINAL nic ale přesměruje >> výstup z command a připojí ho na konec souboru. Původní text nevymaže ani nepřepíše.
3 Výstup příkazu echo bude přesměrován do souboru "hello".
Linuxový soubor nemusí mít koncovku.
Pozn: Nezapomeňte, že soubor se bez zadání cesty vytvoří v pracovním adresáři[REF].
4 Na konec souboru "hello" bude připsáno datum.
5 Příklad přesměrování byl použit už v předchozí kapitole[REF].
Výstupem není v tomto případě soubor ale zařízení /dev/null.
6 Vytvoří nový soubor "hello".
Prázdné přesměrování do souboru má stejnou funkci jako příkaz touch [REF]. Pro vytvoření souboru v jiném adresáři než pracovním použijte i cestu.
xfce4-terminal - Praktické použití přesměrování
# dmesg | grep error > dmesg.err                        1
# dmesg | grep error >> dmesg.err                       2
# dmesg | grep snd > /home/studio/.sound.driver         3
1 Výstup přesměruje z monitoru > do souboru "dmesg.err".
Poté lze obsah souboru číst v textovém editoru. Opakované spuštění příkazu přepíše soubor vždy novými daty - původní vymaže. Příklad je spojením PIPELINE a REDIRECTING.
2 Výstup přesměruje z monitoru >> do souboru "dmesg.err".
Poté lze obsah souboru číst v textovém editoru. Opakované spuštění příkazu dopíše nová data na konec souboru.
3 Výpis o zvukovém ovladači zapíše do skrytého souboru ".sound.driver" v adresáři "/home/studio".

8.9.3. Operator AND & OR

2020-05-29

Porozumět logickým operátorům ve spojení s konfigurací audiosystému není nutné. Tady jsou prezentovány ve spojení z příkazovou řádkou. Použitím logických operátorů && (AND), || (OR) a dalších funkcí se v příkazové řádce dají vytvořit přesně definované akce a lze specifikovat konkrétní podobu výstupu. Moc řádků o nich nenapíši. Koho to bude zajímat tak se určitě porozhlédne.

TIP: Podobnou SYNTAX používají i programátoři. LINUX je výborný operační systém pro pochopení základů programování od velmi nenáročných až po složitější formulace zápisu. LINUX ve své jednoduchosti a transparenci nabízí souběžně tvorbu hudby i možnost pochopit programování aplikací, ovladačů k OPENHARDWARE[REF] zařízením a objevit zákonitosti architektury, designu a struktury operačního systému. Koho zajímá vesmír, servery, grafika, matematika, kybernetika nebo programování her - může si vybrat. LINUX je v tomto ohledu velmi čitelný operační systém se širokým oborovým portfoliem i s velmi úzce specializovanými programovými balíky za hubičku.

Někdo se tímto způsobem může propracovat k psaní programů. Stačí si zběžně prohlédnout mnohé systémové soubory. Čitatel, ač laicky, přesto odhalí zákonitosti vystavěného kódu. Kód není zabalen do nečitelných proprietárních programových balíků. OPENSOURCE je ideální cestou jak se seznámit s konkrétním programovacím jazykem v praktickém balení a s funkčním kódem aniž by musel absolvovat trénink ve výcvikovém středisku NASA.

xfce4-terminal - Operator AND a OR - syntaxe
$ command_1 ; command_2                                 1
$ command_1 && command_2                                2
$ command_1 || command_2                                3
1 Sekvenční spuštění.
Spustí více příkazů nezávisle na sobě. Tento postup již byl popsán v kapitole[REF] pro spouštění více aplikací z příkazové řádky. Příklad je ukázkou podobnosti zápisu s operátory AND a OR.
2 Operator AND.
Spustí více příkazů, které jsou na sobě závislé. Příkaz command_2 se spustí pouze v situaci, že command_1 úspěšně ukončí svůj úkol.
3 Operator OR.
Spustí více příkazů, které jsou na sobě závislé. Příkaz command_2 se spustí pouze v situaci, že command_1 zlyhá.
xfce4-terminal - Operátor AND a OR - příklad
# upgrd ; echo Byl spuštěn upgrade                      1
# upgrd && echo Upgrade proběhl úspěšně                 2
# upgrd || echo Upgrade zlyhal                          3
# (upgrd && echo OK ; aplay ~/sound.wav) || echo ERROR  4
1 Spustí upgrd a echo nezávisle na sobě. Je jedno zda upgrade proběhl úspěšně či nikoliv. Hlášku napíše.
Pro zkrácení jsem použil vytvořený alias upgrd [REF].
2 Po úspěšném dokončení upgrd vypíše echo hlášku o úspěšném upgrade. Jinak nic.
3 Po zlyhání příkazu upgrd vypíše echo hlášku se zlyháním. Jinak nic.
4 Zřetězení operátorů AND a OR.
  1. Po úspěšném upgrade vypíše echo hlášku "OK" a zahraje "~/sound.wav".

  2. Jinak oznámí "ERROR".
    Příkaz je uzavřen závorkami záměrně protože takto si ho TERMINAL prezentuje jako jeden (blok příkazů). Je to podobné jako v matice. Odstraňte závorky a příkaz se vykoná jinak protože operátor OR || bude mezi:
    aplay ~/sound.wav || echo ERROR.
    A se závorkami bude řádek vykonávat příkaz:
    (blok příkazů) || echo ERROR.

INFO: Je patrné, že ALIAS[REF] upgrd stojí za přepsání. Praktičtější podobu ovšem bude mít až se jeho spuštěním aktivují i síťové služby a po úspěšném upgrade systému je příkaz opět automaticky deaktivuje.

Čtení not v notovém zápisu se v začátcích tváří možná i složitěji. K těmto řádkům se můžete kdykoliv vrátit později a dáte mi za pravdu. Ideální je zapisovat příkazy do příkazové řádky a procvičit si základy programátorské abecedy.

8.10. 'less' - méně je více

2020-06-09

V TERMINAL se vypíše občas i dlouhý výstup nějakého příkazu a zobrazená data proběhnou obrazovkou aniž by je kdokoliv spatřil. Výpis skončí u nového PROMPT. V tomto případě jedinou možností jak prolistovat výpis je použití kláves [SHIFT]+[PGUP] respektive [SHIFT]+[PGDN]. Tento způsob je však omezen možnostmi.

Pro příjemnější a přehlednější listování ve výpisu slouží nástroj less [111] (less is more), který výstup vypíše do vygenerovaného okna. Ve vygenerovaném okně se zobrazí to samé co by se vypsalo do TERMINAL. Ale okno less nabízí mnoho dalších možností jak s textem naložit. Usnadňuje prohlížení s použitím kurzorových kláves, editaci externím editorem, hledání textu a další možnosti, které při klasickém výpisu do TERMINAL nelze použít. Je to vlastně to samé okno jako u zobrazení manuálů pouze se v něm nezobrazí manuál ale vyžádaná sada informací. Dokonce i klávesové zkratky jsou stejné:

  • Listuje se klasicky šipkami.

  • Hledání je vyvoláno lomítkem [/]. Ve spodní části okna se zobrazí lomítko a za něj napište hledaný řetězec.

  • Další výskyt hledané fráze naleznete klávesou [n] a předchozí klávesou [N].

  • Hledání ukončíte klávesou [ESC] a následným stiskem [u].

  • Zobrazený výstup lze i uložit. Stiskněte [s]. Ve spodní části okna se napíše "log file:". Zvolte si název souboru nebo i cestu a odentrujte. Zeptá se i na přepsání existujícího souboru.

  • Nápověda je v buď v manuálu man less [REF] nebo se přímo v okně vyvolá klávesou [h]. Nápovědu ukončíte klávesou [q].

  • Pro návrat do TERMINAL použijte [q].

Ze všeho je zřejmé, že to co by se za běžných okolností vypsalo do TERMINAL je potřeba zpracovat ještě přes PIPELINE[REF].

xfce4-terminal - Zápis
$ command | less                        1
$ history | less                        2
xfce4-terminal - Okno vygenerované příkazem 'history | less'
1  xinput list-props 10
2  mc
3  nmcli radio wifi off
...
862  xinput set-prop 14 140 0 &
863  firefox &                          3
:q                                      4
xfce4-terminal - Návrat do PROMPT
$ !863                                  5
1 Formální zápis.
Výstupem příkazu command by měl být čitelný text nebo alespoň znaky. Například spuštění syntetizéru dále zpracovaného nástrojem less postrádá smysl. Zároveň by TERMINAL mohl mít nepředvídatelné chování i když si myslím, že takto zapsané příkazy jsou vývojáři předpokládány a ošetřeny.
2 Je-li v historii předešlých příkazů mnoho položek nástroj less listování či hledání usnadní.
3 Stačí si zapamatovat číslo příkazu …​
4 …​ okno less ukončit [q] …​
5 …​ a do příkazové řádky zapsat číslo příkazu s výkřičníkem na začátku. [ENTER].

Tento příklad je pouze jednoduchým návodem jak na hledání v historii příkazů ale ve spojení s jinými příkazy jej lze využít velmi prakticky a bez nutnosti použít těžkopádný editor. Jak už bylo naznačeno příkaz dmesg vypíše do TERMINAL velké množství informací. Podoba výstupu není dána a pro hledání ve změti informací není jednoznačně potřebné výstup přesměrovat[REF] do souboru a poté v něm listovat. Pomoci může i less.

xfce4-terminal - Zobrazení 'dmesg' pomocí 'less'
# dmesg > dmesg.status                  1
# dmesg | less                          2
1 Přesměrování výstupu dmesg do souboru "dmesg.status".
Poté lze soubor prohlížet v texteditoru.
2 Zobrazení výstupu dmesg nástrojem less.
Do souboru uložíte klávesou [s].
Oprava barevného výstupu 'less'

Barevný výpis vedený přes PIPELINE může být interpretován jinak než jaké bylo očekávání. Ve výstupu se můžou objevit různé znaky "[01;31mESC[K", které text pořádně znepřehlední. Tyto znaky jsou právě barevným značením textu. Oprava je velmi jednoduchá. Příkaz stačí zapsat s argumentem -R a text bude správně a barevně.

xfce4-terminal - Chyba barevného výstupu
# dmesg | grep error | less             1
[0.004442] [Firmware Bug]: TSC ADJUST ... fixing all ESC[01;31mESC[KerrorESC[mESC[Ks
[10.242608] EXT4-fs (sda2): re-mounted. Opts: ESC[01;31mESC[KerrorESC[mESC[Ks=remount-ro
[704042.053253] print_req_ESC[01;31mESC[Kerror: I/O ... , dev sr0, sector 137856
# dmesg | grep error | less -R          2
[0.004442] [Firmware Bug]: TSC ADJUST differs within socket(s), fixing all errors
[10.242608] EXT4-fs (sda2): re-mounted. Opts: errors=remount-ro
[704042.053253] print_req_error: I/O error, dev sr0, sector 137856
1 Příkaz otevře okno less s chybným textem.
2 Příkaz otevře okno less správně a v barvě.

Nástroj less je jedním ze stránkovačů a v DEBIAN je standardním stránkovacím nástrojem. Je použit i pro zobrazení manuálů. Anglicky je stránkovač PAGER[112]. Další stránkovače, listovače nebo jak je nazvat nejsou u muziky určitě potřeba a až bude vše ponastavováno nebude skoro vůbec potřeba ani less. Když tak jednou za čas pro vytvoření nějakého příkazu do ikony.

8.11. 'grep' - hledá řetězce

2020-06-19

Nástroj grep [113] vyhledá text. Ve výchozím nastavení vypisuje do TERMINAL řádky vyhovující hledanému výrazu. Zadáním přepínačů se může jeho chování měnit. Pracuje i s regulárními výrazy REGEX[114] ale to by bylo na další téma. Vše je v manuálu man grep.

Argumenty si zadává podle potřeb uživatel ale nejsou povinné. Hledaný řetězec povinný je.

xfce4-terminal - Příklady 'grep'
$ grep -nHIiF hist ~/.bashrc            1
$ grx hist ~/.bashrc                    2
$ cat ~/.bashrc | grep -i hist          3
$ systemctl | grep service              4
34:init.scope               loaded active running   System and Service Manager
36:accounts-daemon.service  loaded active running   Accounts Service
37:alsa-restore.service     loaded active exited    Save/Restore Sound Card State
38:avahi-daemon.service     loaded active running   Avahi mDNS/DNS-SD Stack
...
$ grep -E '(ctrl|caps):' ~/*.txt        5
1 Vyhledá text "hist" v "~/.bashrc".
Zapsán do TERMINAL samostatně hledá v souborech. Tento způsob hledání byl již popsán v kapitole o kumulaci[REF] argumentů.
2 Vytvořte si kupříkladu v ".bash_aliases" alias grx="grep -nHIiF"[REF] a nemusíte neustále psát.
3 Zřetězen v PIPELINE[REF].
Hledá ve výstupu příkazu cat, který zobrazuje obsah textových souborů. Z jeho výstupu vyfiltruje řádky s řetězcem "hist" a vypíše je do TERMINAL. U příkazu grep je argument -i a proto nezáleží na velikosti písmen. Najde "hist, HIST, Hist" atd.
4 Vyhledá text "service" ve výstupu příkazu systemctl a vypíše ho do TERMINAL.
Služeb bude vypsáno mnohem víc.
5 Příkaz grep s přepínačem -E bude hledat vícenásobně. Nalezne řetězce "ctrl:" nebo "caps:" v jednom příkazu ve všech "txt" souborech domovské složky.

Přepínače lze kombinovat a správné zapsání příkazu neuvěřitelně zjednoduší práci.

V nových distribucích bude hledaný řetězec ve výstupu barevně zvýrazněn za podmínky, že v souboru "~/.bashrc" je zároveň nastaven alias grep='grep --color=always'. Ostatně to lze rychle zjistit právě příkazem grep, který v souboru "~/.bashrc" vyhledá text grep=. Není potřeba psát celý řetězec.

xfce4-terminal - Hledání v "~/.bashrc"
$ grep -nHiIF grep= ~/.bashrc
/home/studio/.bashrc:86:    alias grep='grep --color=always'

Když v "~/.bashrc" ALIAS[REF] není dopište si ho a grep bude mít výstup v barvičkách.

Budete-li někdy přes grep hledat text obsahující mezeru zapište ho v uvozovkách nebo v apostrofech.

8.12. 'find' - hledá soubory

2020-12-23

Utilitka grep [REF] hledá a extrahuje řetězce na svém vstupu. Naproti tomu nástroj find [115] hledá adresáře a/nebo soubory.

Příkaz find je pravděpodobně jeden z nejdůležitějších příkazů. Nepoužívá se často a hledání je většinou realizováno skrze příjemné GUI prostředí některého ze správců souborů. Ale když je potřeba vyhledat cokoliv velmi specifického je find příkazem, který hledá velmi sofistikovaně. Zapsání příkazu zabere delší dobu ale odsouhlasením zapsaného je nalezeno i to, s čím si neporadí žádný správce souborů.

Nejjednodušší tvar zápisu je:

xfce4-terminal - Zápis příkazu 'find'
$ find ~ -name ".bashrc"

Hned za příkazem je určeno, ve které lokaci hledat. Příkaz bude hledat v domovském ~ adresáři. Užití přepínače -name specifikuje, že za ním bude následovat hledaný řetězec, kterým je .bashrc.

xfce4-terminal - Určení lokace
$ find . -name ".bashrc"                        1
$ find / -name ".bashrc"                        2
$ find ~ -name ".bashrc"                        3
$ find /etc -name ".bashrc"                     4
$ find ~ /etc /usr/bin -name ".bashrc"          5
1 . - prohledá nynější adresář i se zanořenými složkami.
Záleží na tom, ve kterém pracovním adresáři uživatel příkaz spustil.
2 / - bude hledat v kořenovém adresáři, tj. v celém počítači.
3 ~ - bude hledat v domovském adresáři.
4 /etc - hledání proběhne v adresáři "/etc".
5 ~ /etc /usr/bin - bude hledat ve více adresářích najednou.
Stačí je zapsat za sebou. Od sebe se oddělují pouze mezerou. Po specifikaci adresářů pokračuje standardní zápis příkazu.
xfce4-terminal - Rozlišování ve velikosti znaků
$ find ~ -name ".bashrc"                        1
$ find ~ -iname ".bashrc"                       2
1 Přepínač -name hledá s ohledy na velikost zadaných znaků.
Najde pouze ".bashrc".
2 Přepínač -iname nebude rozlišovat ve velikosti znaků.
Najde i ".bashRC".

V situaci, kdy není znám přesný název pomůže hvězdička "*" jako zástupný znak. Hvězdička může pomoci i se zkrácením zápisu.

xfce4-terminal - Použití zástupné hvězdičky
$ find ~ -iname "bash"                          1
$ find ~ -iname "*bash*"                        2
1 Určitě nenajde nic ;-).
Nic se jménem "bash" v domovském adresáři není. Příkaz vyžaduje zadání přesné konstrukce hledaného řetězce - tedy zadání přesného názvu.
2 Najde soubory s názvem obsahujícím "bash".
Tedy i soubory ".bashrc", ".bash_history". S použitím zástupné hvězdičky je jedno jaké a kolik znaků je před nebo za hledaným řetězcem "bash". Hvězdička zastoupí i tečku na začátku názvu souboru.
INFO: Hledaný řetězec uvedený v uvozovkách je téměř povinný. Uvozovky oddělují hledaný výraz od zbytku příkazu a zároveň je zápis lépe čitelný.

Vyhledávání v systémových složkách mohou zkomplikovat přístupová práva. Ne všechny adresáře může příkaz prohledat aniž by byly delegována dostatečná přístupová práva. V systémových složkách je proto doporučeno hledat s ROOT přihlášením.

Implicitně příkaz hledá jak složky tak i soubory. Umí však rozlišit i hledání podle typu. Hledat může přímo buď jen soubory nebo jen adresáře.

xfce4-terminal - Hledání podle typu
$ find ~ -iname "*bash*" -type f                1
$ find ~ -iname "*bash*" -type d                2
1 Hledá pouze soubory.
f - file
2 Hledá pouze adresáře.
d - directory

Manuál příkazu man find je obsáhlý a možnosti hledání jsou vcelku bez konce. Hledat soubory lze podle času vytvoření, modifikace, přístupu, přístupových práv, data. Při hledání jde přesně stanovit hloubku zanoření do složek a mnoho dalšího.

xfce4-terminal - Přiklad hledání podle času
$ find ~ -maxdepth 1 -type f -mmin 2            1
1 Najde v domovském adresáři ~ s maximálním zanořením -maxdepth 1 do jedné úrovně pouze soubory -type f modifikované -mmin do 2 minut zpět.

Asi jednou z nejzajímavějších možností příkazu je možnost vykonat další příkaz na nalezeném obsahu. Toto dodatečné zpracování je implementováno přímo v kódu. Parametr -exec se píše až na konec po zapsání ostatních parametrů. Má přesně stanovený zápis ve tvaru -exec jiný_příkaz '{}' \;. Až za ním může následovat přesměrování[REF] nebo jiný operátor[REF] pro zřetězení.

Následující příklad jsem záměrně zalomil[REF] na více řádků.

xfce4-terminal - Přiklad komplexního zápisu
$ find /dev/sdb* \                              1
> -exec \                                       2
> grep -E 'http:|https:' \                      3
> '{}' \; \                                     4
> >> urls.txt                                   5
1 Najde ve všech oddílech připojeného harddisku /dev/sdb
2 a provede -exec
3 extrahování grep -E všech řádků s textem http: nebo https:.
4 Následuje povinné ukončení '{}' \; příkazu
5 a poté nalezené informace připojí >> [REF] na konec souboru urls.txt.

Zápis je opravdu dlouhý ale příkaz prolítne napříč všemi složkami velmi rychle a za chvilku je hotovo. Zkuste to ve správci souborů. Ve WINDOWS by bylo potřeba najít, stáhnout a instalovat aplikaci. V LINUX stačí napsat řádek.

9. Uživatelé & skupiny

9.1. Hierarchie účtů

2020-12-21

Pro tvorbu a v osobním počítači není bezpodmíněčně nutné vytvářet nové uživatelské účty. Ale po praktické stránce může nový účet posloužit. Před ukončením práce a vypnutím počítače lze totiž celé uživatelské sezení uložit a opětovným přihlášením k účtu se načte poslední konfigurace uložené relace s otevřenými aplikacemi, nastavením, uspořádáním oken atd.

> MENU
    > Nastavení
        > Relace a spouštění
            > Relace -> Uložit relaci

Proč toho nevyužít? Správným výběrem jmen uživatelů, nastavení skupin, vlastnických a přístupových práv lze docílit velmi účelné a praktické hierarchie účtů. Přihlášením k účtu se dá pokračovat v práci na každém hudebním dílku zvlášť.

INFO: Přihlášení k jednotlivým účtům probíhá na přihlašovací obrazovce. Funkce AUTOLOGIN[REF] přihlašovací obrazovku přeskakuje.

K souborům se může přistupovat i z jiných účtů, lze je importovat, editovat. Nemůže se stát, že by bylo hudební dílko nechtěně přepsáno z účtu jiného. A určitě nebudou omylem dotčeny ani původní soubory v jiném účtu když se nastaví vše jak má.

9.2. 'adduser'

2020-12-20

Téma, kolem kterého se točí celý svět. Domény, servery datové, e-mailové, telefonní, správcové, rootové, admini, účty, automatizace, vlastnická, přístupová práva…​ V osobním počítači jsou tato nastavení úplně nedůležitá. Uživatel a správce v jednom. Někdy je ale potřeba z jakýchkoliv důvodů vytvořit nový účet.

Ve WINDOWS je to jedno a majitel počítače může klikat jak si zamane a nikdo se nestará zda si poškodí počítač. Má přístup ke všemu co je v počítači a je to na něm. V LINUX je situace kapánek jiná a systém rozlišuje mezi uživatelem a správcem. Není jedno zda uživatel spustil něco, co není v jeho kompetenci. Přístup má pouze ke svému účtu, ke svým souborům a spouštět může pouze aplikace a příkazy, které neohrožují funkčnost systému samotného. Také nemůže editovat jakékoliv soubory či mazat adresáře, které nejsou v jeho rajónu. Nejdřív se musí se systémem seznámit a až poté mu je dovoleno nastavovat i to, co běžným klikáním nejde. Jakýkoliv zásah do systému je podmíněn zadáním správcovského hesla a neznalý uživatel si tak nechtěně nepoškodí systémová nastavení a samotnou instalaci operačního systému. Účet si poškodit může ale ten může jako správce z nepoškozeného systému opravit nebo přinejhorším vytvoří účet nový a soubory překopíruje.

Vytvářet a konfigurovat uživatelské účty může pouze správce[REF] systému. Vytvoří ho příkazem adduser.

xfce4-terminal - Přidání nového uživatele - všeobecný tvar
$ su -
# adduser NEW_USER

Název pro nový účet volte bez interpunkce a speciálních znaků jinak systém vypíše upozornění.

adduser: Please enter a username matching the regular expression configured
via the NAME_REGEX configuration variable.  Use the `--force-badname'
option to relax this check or reconfigure NAME_REGEX.

Počítače jsou háklivé na $@/^:,." a jiné speciální znaky. Myslím, že pomlčka a podtržítko jsou v toleranci. Jen je nedávejte na začátek nebo konec. Číslice jsou taky košér. Vložené informace si zapište.

xfce4-terminal - Přidání nového uživatele - vytvoření účtu
# adduser blues                                     1
Adding user `blues' ...
Adding new group `blues' (1001) ...                 2
Adding new user `blues' (1001)                      2
        with group `blues' ...
Creating home directory `/home/blues' ...           3
Copying files from `/etc/skel' ...
New password:                                       4
Retype new password:                                5
passwd: password updated successfully
Changing the user information for blues
Enter the new value, or press ENTER for the default 6
        Full Name []:
        Room Number []:
        Work Phone []:
        Home Phone []:
        Other []:
Is the information correct? [Y/n]                   7
# _                                                 8
$ _
1 Nový účet pojmenuji "blues".
2 Důležité informace:
new group blues (1001) - vytvoření skupiny.
new user blues (1001) - vytvoření uživatele.
3 Domovský adresář je vytvořen v "/home/blues".
4 Vymyslete si heslo k novému účtu.
5 Potvrzení hesla.
6 Do dalších políček nemusíte psát nic. Stačí [ENTER]ovat. Tyto otázky jde ztlumit přepínačem.
7 Když je všechno v pořádku odentrujte.
Jinak napište n a otázky se zopakují.
8 [CTRL]+[d] Odhlášení.

Je vytvořen nový účet. Podívejte se do adresáře "/home". Bude tam nový adresář "/blues" s několika málo skrytými soubory. Aby měl nově vytvořený uživatel přístup i k dalším funkcím systému použijte usermod[REF] a připojte ho do systémových skupin, ve kterých je i uživatel "studio".

9.3. 'addgroup'

2020-12-21

Systém si nějaké skupiny vytvořil už v instalaci. Pro běžného uživatele jsou mnohdy nečitelné ale pro systém jsou důležité. Uživatelské vytvoření skupiny není v osobním počítači až tak běžné jako vytvoření nového účtu ale může se hodit.

xfce4-terminal - Přidání nové skupiny
$ getent group                                  1
...
fax:x:21:
voice:x:22:
cdrom:x:24:studio                               2
floppy:x:25:studio
tape:x:26:
sudo:x:27:
audio:x:29:pulse,studio
dip:x:30:studio
www-data:x:33:
backup:x:34:
operator:x:37:
...
$ su -
# addgroup NEW_GROUP                            3
1 Výpis už existujících skupin v systému.
2 Tvar:
cdrom:x:24:studio
skupina:heslo se nezobrazuje:číslo skupiny:členové,uživatelé
3 Všeobecný zápis příkazu k vytvoření nové skupiny "NEW_GROUP".
K pojmenování skupiny volte názvy bez speciálních znaků.

Nově vytvořené skupiny jsou bez uživatelů. Zkuste si vhodně zvolit název např. "personal",

xfce4-terminal - Vytvoření skupiny "personal"
# addgroup personal

promyšleně přidejte do skupiny uživatele[REF], správně nastavte vlastnická[REF] a přístupová práva[REF] a systém nepovolí neoprávněným osobám přístup k souborům. Pouze těm ze skupiny "personal".

9.4. 'usermod'

2020-12-24

xfce4-terminal - Přidání/odebrání USER do/ze skupiny GROUP
$ su -
# usermod -a -G GROUP USER                      1
# usermod -aG GROUP_1,GROUP_2,GROUP_3 USER      2
# gpasswd -d USER GROUP                         3
1 Připojení uživatele USER do předem vytvořené[REF], už existující skupiny.
Přepínače -a -G jsou povinné a musí být oba. Přidat uživatele do neexistující skupiny nelze.
Přepínač může být ve tvaru -aG[REF].
2 Uživatele lze přiřadit k více skupinám najednou.
Všechny skupiny musí před zadáním příkazu existovat.
3 Odebrání ze skupiny.

S opatrností lze uživatele přidat do jakékoliv už existující skupiny, která v systému je. Uživatel zařazený do nevhodné skupiny však může v systému nadělat paseku.

Uživatel "blues" je prozatím pouze ve skupině "blues". Aby uživatel "blues" získal stejné možnosti jako uživatel "studio" musí ho ROOT přiřadit ke stejným skupinám, ke kterým náleží i "studio".

xfce4-terminal - Přidání uživatele do specifické skupiny
$ getent group                                  1
...
fax:x:21:
voice:x:22:
cdrom:x:24:studio
floppy:x:25:studio
tape:x:26:
sudo:x:27:
audio:x:29:pulse,studio
dip:x:30:studio
...
$ groups blues                                  2
blues : blues
$ groups studio                                 3
studio : studio cdrom floppy audio dip video plugdev netdev bluetooth scanner lpadmin
$ su -
# usermod -aG \
> cdrom floppy audio dip video plugdev netdev bluetooth scanner lpadmin \
> blues                                         4
1 Výpis skupin v systému.
Příkaz není vyžadovaný a je pouze pro informaci o skupinách.
2 Příkaz vypíše informace o členství uživatele "blues" ve skupinách.
3 Členství uživatele "studio" ve skupinách.
cdrom - přístup k optické mechanice
audio - přístup ke zvuku
atd.
4 [ENTER]
Přidání do skupin.

Přidáním do stejných systémových skupin má teď "blues" stejné možnosti jako "studio". Členství ve skupinách ovlyvňuje i vlastnická a přístupová práva na souborech.

xfce4-terminal - Ověření
$ groups blues
blues : blues cdrom floppy audio dip video plugdev netdev bluetooth scanner lpadmin

Když se uživatel z nějaké skupiny odebere nemá nadále ke službám, které tato skupina nabízí žádný přístup a stejně tak ztratí přístup i k souborům vlastněných skupinou.

xfce4-terminal - Odebrání uživatele ze skupiny
# gpasswd -d blues audio                        1
Removing user blues from group audio
$ groups blues                                  2
blues : blues cdrom floppy dip video plugdev netdev bluetooth scanner lpadmin
1 Odebrání uživatele "blues" ze skupiny "audio".
2 Ověření.

9.5. 'delgroup'

2020-12-24

Příkaz delgroup odstraní skupinu.

!! Opatrnost je na místě.

Odstraňujte jen skupiny, které jsou vytvořeny uživatelsky. Nemažte skupiny systémové.

xfce4-terminal - Příkaz 'delgroup'
$ su -
# delgroup GROUP                                1
# delgroup --only-if-empty GROUP                2
# delgroup --only-if-empty personal             3
1 Odstraní skupinu.
2 Odstraní skupinu pouze za předpokladu, že skupina nemá uživatele. Toto je bezpečné mazání.
3 Nejsou-li ve skupině "personal" jiní uživatelé odstraní ji.

9.6. 'deluser'

2020-12-21

Příkaz deluser smaže vytvořený účet. Akci může provést pouze ROOT.

!! Podívejte se raději i po internetu aby jste nechtěně nesmazali co mazat nechcete. S účtem "studio" manipulujte až budete vědět co děláte.
xfce4-terminal - Příkaz 'deluser'
$ su -
# deluser blues                                 1
Removing user `blues' ...
Warning: group `blues' has no more members.
Done.
# deluser \                                     2
> --backup-to "/home/studio/blues" \            3
> --remove-all-files \                          4
> blues                                         5
Looking for files to backup/remove ...
/usr/sbin/deluser: Cannot handle special file /proc/1/task/1/fd/0
/usr/sbin/deluser: Cannot handle special file /proc/1/task/1/fd/1
/usr/sbin/deluser: Cannot handle special file /proc/1/ta...
...
Removing files ...
Removing user `blues' ...
Warning: group `blues' has no more members.
Done.
1 Příkaz smaže účet blues.
Zůstane zachován domovský adresář. Nejsou-li už potřeba žádné soubory z tohoto účtu tak adresář "/home/blues" jde ve správci souborů vymazat. Jako ROOT. Je to sice bezpečnější způsob ale v systému zůstanou i nepotřebné informace.
2 Příkaz je zalomen na více řádků \ [REF].
3 Nejdřív zazálohuje soubory do složky --backup-to "/home/studio/blues".
4 Poté --remove-all-files příkaz proleze celý počítač a vymaže všechno
5 co je ve spojitosti s odstraněným účtem blues včetně domovského adresáře. Zůstanou pouze zazálohované soubory.

10. Práva na souborech

10.1. 'stat' - status souboru

2020-12-17

V linuxové adresářové struktuře mají všechny soubory a/nebo adresáře nastaveny vlastnická a přístupová práva. Tyto práva byly vlažně popsány už v jedné z předešlých kapitol[REF]. Správce systému, ROOT, má vcelku přístup k celému systému a bez omezení. Naproti tomu je vztah uživatele k jiným i systémovým souborům omezen právě přístupovými právy. Ty jednoznačně definují vztah jednotlivých uživatelů a skupin:

  • k souborům a adresářům ve svém pracovním prostoru - ve své domovské složce.
    Uživatel má ve svém účtu přístup ke všemu co si sám vytvořil a je jeho.

  • k souborům a adresářům v prostoru jiných uživatelů - jejich domovských složkách.
    Jiným uživatelem je i správce a jeho soubory jsou z pohledu klasického uživatele v domovské složce správce systému.

K získání informací o nastaveních přístupových práv k nějakému souboru nebo adresáři lze použít příkaz stat (status). Tyto informace jsou vidět i ve správcích souborů když se nastaví zobrazení sloupce s právy. Sloupec může být nastaven k zobrazení práv v číselné (absolutní zápis) nebo znakové podobě (symbolický zápis).

xfce4-terminal - Výpis příkazu 'stat'
$ stat -c '%A %U %G' .bashrc                    1
-rw-r--r-- studio studio
$ stat -c '%A %U %G' /root                      2
drwx------ root root
$ stat -c '%A %U %G' /root/*                    3
stat: cannot stat '/root/*': Permission denied
1 Příkaz zobrazí přístupová práva %A k souboru ".bashrc", vlastníka %U a skupinu %G.
- rw- r-- r-- jsou práva, studio je vlastníkem souboru ".bashrc", studio je uživatelská skupina. Je to vše co je potřeba vědět.
2 Takto napsaný příkaz zobrazí práva k adresáři "/root".
d rwx --- --- jsou přístupová práva ke složce "/root" a root je vlastníkem. Je ve skupině root.
3 Zkuste si jako uživatel zobrazit práva ke všemu uvnitř složky "/root".
Příkaz vypíše hlášku, že do složky "/root" není povolen přístup. Příkaz musí být proveden s patřičnými oprávněními jako správce.

10.2. Symbolika

2020-12-18

Status[REF] práv na souboru má většinou tvar -rw-r--r-- studio studio.

Tabulka 3. Přístupová a vlastnická práva
Typ souboru Přístupová práva[REF] Vlastnická práva[REF]

-

rw- r-- r--

studio studio

První znak je definován systémem a zůstává nezměněn. Buď je to soubor nebo adresář. Může to být i link a jiné ale zatím, budete-li nastavovat, nastavujte pouze soubory a/nebo adresáře.

- ··· ··· ··· - soubor má na začátku pomlčku -.
d ··· ··· ··· - adresář má d.

Samotné přístupová práva jsou seřazeny do trojic a každá trojice vyjadřuje vztah uživatele, skupiny a ostatních uživatelů k souborům a adresářům.

· rwx ··· ··· - první trojice znaků jsou práva uživatelská - USER.
· ··· rwx ··· - druhá trojice znaků jsou práva pro skupinu - GROUP.
· ··· ··· rwx - třetí trojice znaků jsou práva pro ostatní uživatele - OTHERS.

Znaky každé z trojic vyjadřují možnosti přístupu:

- - soubor nemá nastaveno povolení k některé z operací r, w, nebo x.
r - read - povolení ke čtení souboru. Je povoleno jeho otevření, kopírování. Nic víc.
w - write - je povolena i editace souboru, jeho smazání, přesunutí do jiné složky, změna přístupových práv.
x - exec - je povoleno spuštění souboru. Na soubor lze poklikat a spustit ho. Až si jednou napíšete skript tak tímto nastavením souboru ho budete moci i spouštět. Podívejte se do složky "/usr/bin". V ní jsou nainstalované programy. Programy mají toto nastavení taky.

Zpětně poskládám předchozí příklad[REF] k souboru ".bashrc":

- ··· ··· ··· - parametr - je daný systémem a je to soubor.
- rw- ··· ··· - USER (vlastník) studio může se souborem ".bashrc" manipulovat dle libosti.
- rw- r-- ··· - GROUP (skupina) studio může soubor číst, podívat se do něj ale nic víc.
- rw- r-- r-- - OTHERS (ostatní) můžou soubor taky jen číst.

Operace spouštění souboru x má praktický smysl pouze:

  • u programů nebo spustitelných souborů. Soubor ".bashrc" tento parametr nevyžaduje protože je to soubor s nastavením[REF] a ne skript.

  • u adresářů. Adresář musí mít nastavenou operaci spouštění jinak by ho uživatel neotevřel. Musel by práva x pro spuštění adresáře znovunastavit.

Adresář "/root" je nastaven tak aby k němu měl přístup pouze uživatel root. Ani členové skupiny root ani ostatní uživatelé nemají do složky "/root" přístup.
d rwx --- ---

Správce však může nastavit přístup do své složky i jinak. Ale pro počítač s připojením do sítě to určitě doporučeno není.

10.3. Přístupová práva

2020-12-20

Příkaz chmod [116] (change mode) mění nastavení přístupových práv k souborům a adresářům. S právy k souboru může nakládat pouze vlastník souboru nebo ROOT. Příkaz manipuluje s nastaveními r, w, x.

Pro vysvětlení bude nejlepší vytvořit si nový soubor aby se nepoškodili stávající. Pak se vymaže.

xfce4-terminal - Vytvoření souboru a zjištění jeho statusu
$ touch skript.sh                               1
$ stat -c %A skript.sh                          2
-rw-r--r--
1 Vytvoření souboru.
2 Status přístupových práv.
- rw- r-- r--

Po změně přibude vlastníkovi a skupině možnost spuštění. Ostatní budou úplně bez přístupových práv.

xfce4-terminal - Přidání & odebrání práv
$ chmod ug+x,o-r skript.sh                      1
$ stat -c %A skript.sh
-rwxr-x---                                      2
1 Příkaz změnil oprávnění k souboru.
Vlastníkovi a skupině ug přidal + možnost soubor spustit x. Ostatním o odebral - čtení r.
2 Nové nastavení práv.
- rwx r-x ---

Znaky používané příkazem chmod a znaky použité v příkladu:

Kdo:
u user - změny týkající se vlastníka souboru
g group - změny pro skupinu
o others - změny pro ostatní
a all - změny pro všechny ugo najednou

Jaké:
+ přidá oprávnění
- oprávnění odebere
= přiřadí oprávnění

Oprávnění:
r read
w write
x exec

Jsou i další[116] - X, s, t.

xfce4-terminal - Jiné příklady pro změnu přístupových práv
$ chmod g-rx FILE                               1
$ chmod a+r *.txt                               2
$ chmod -R ugo=x *.sh                           3
$ find DIR -type f -exec chmod o-x '{}' \;      4
1 Skupině g odebere - možnost čtení a spouštění rx.
2 Všem a umožní + čtení r souborů *.txt.
3 S přepínačem -R bude příkaz proveden i v zanořených složkách - rekurzivně.
4 Najde[REF] v adresáři DIR všechny soubory -type f a spustí -exec na nich příkaz chmod, který ostatním o odebere - možnost spouštění x.

10.4. Vlastnická práva

2020-12-28

Příkaz chown [117] (change owner) mění vztah mezi uživatelem/skupinou a vlastnictvím adresářů/souborů.

Vytvořením souboru v účtu "studio" bude jeho vlastníkem automaticky uživatel "studio" a skupina "studio". Vlastník souboru může vlastnictví sdílet i s jinými uživateli změnou skupiny. Učinit změnu vlastníka a převést práva na jiného uživatele může jen správce.

Do příkazu se zapisuje nový VLASTNÍK:SKUPINA, na které budou práva převedena.

xfce4-terminal - Synopse zápisu
# chown VLASTNÍK:SKUPINA soubor
# chown OWNER:GROUP file

Na formulaci zápisu závisí zda se mění pouze vlasník, pouze skupina nebo obojí současně.

xfce4-terminal - Formulace převodu práv
# chown OWNER file                              1
$ chown :GROUP file                             2
# chown OWNER:GROUP file                        3
1 Zápis příkazu bez dvojtečky je změna vlastníka.
2 Dvojtečka na začátku jména je interpretována jako změna skupiny.
3 Zápis ve tvaru OWNER:GROUP mění současně vlastníka i skupinu.
xfce4-terminal - Příklad příkazu 'chown'
$ stat -c '%U %G' soubor                        1
studio studio
$ su -
# chown blues soubor && stat -c '%U %G' soubor  2
blues blues
# chown blues soubor /adresář                   3
# find /dir -type f -user blues \
-exec chown studio:studio * '{}' \;             4
# find /dir -group studio                       5
# chown -R root /dir                            6
1 Status.
2 Novým vlastníkem souboru bude uživatel "blues".
Řetězení příkazů[REF].
3 Novým vlastníkem souboru a adresáře bude uživatel "blues".
4 Nalezne ve složce /dir soubory -type f, kterých vlastníkem je -user blues "blues" a provede -exec změnu práv chown na studio:studio u všech nalezených souborů *.
5 V /dir najde všechno co vlastní skupina studio.
6 S argumentem -R mění práva na root rekurzivně i v zanořených složkách /dir.

11. Souborový systém

11.1. File Hierarchy Standard

2020-06-29

Základ řazení adresářů byl položen v prvních UNIX systémech. Z nich vychází i adresářová struktura jiných operačních systémů včetně LINUX. Adresářová struktura WINDOWS je od původní hierarchie FHS[118] UNIX-LIKE systémů odlišná. Zdůrazním, že ulítlý je WINDOWS. Porozuměním adresářové struktury LINUX porozumíte i řazení adresářů v jiných systémech.

Ve WINDOWS je kořenovým adresářem "C:". V LINUX je jím "/" (obyčejné lomítko).

Tabulka 4. FHS - Hierarchie souborového systému DEBIAN
Cesta Popis Připodobnění

/

kořenový adresář

C:

~bin

je odkazem na "/usr/bin", programy

C:\Program Files\*\*.exe

/boot

obrazy jádra, bootovací soubory

C:\ntldr

/dev

soubory vztahující se k zařízením

Správce zařízení

/etc

globální textové konfigurační soubory systému

Ovládací panely

/home

uživatelské účty a data uživatelů

C:\Documents and Settings

/home/user

nastavení a soubory konkrétního uživatele

C:\Documents…​\uživatel

~lib

odkaz na "/usr/lib", knihovny

C:\Windows\*.dll

/media

automaticky připojené USB, CD/DVD médiá

připojené disky A,B,D-Z

/mnt

manuálně připojené (mount) zařízení

připojené disky A,B,D-Z

/proc

informace o jádru a procesech

regedit.exe

/root

složka se soubory správce

C:\Documents…​\Admin

/run

info o systému od posledního bootu

autoruns.exe, regedit.exe

~sbin

je odkazem na "/usr/sbin", systémové programy

C:\Windows\*.exe

/tmp

adresář pro dočasné pracovní soubory

C:\Temp; C:\Windows\Temp

/usr

programová data

C:\Program Files\Data aplikací

/var

variabilní data, logy…​

C:\Temp; C:\Windows\Temp

a další[118] …​

Globální nastavení

Editace globálních konfiguračních souborů ovlivňuje chování celého systému a zároveň i nastavení aplikací ve všech uživatelských účtech najednou.

Systémové konfigurační soubory:

  • jsou ve složce "/etc". V adresáři jsou nastavení systému a některá z nastavení programů pro všechny uživatele;

  • další globální nastavení programů jsou v "/usr/share".

Individuální uživatelská nastavení

Přistupovat k nim lze přes správce souborů a zobrazením skrytých souborů. Vytvořením nebo úpravou uživatelského konfiguračního souboru k nějakému programu může uživatel ovlivňovat chování aplikací nebo příkazů ve svém účtu.

Konfigurační soubory pro jednotlivý účet jsou:

  • přímo v domovském adresáři "~" ve formě skrytých souborů;

  • nebo stále častěji i ve složce "~/.config".

V sofistikovaných správcích souborů jakým je MIDNIGHT COMMANDER je název souboru uvozen konkrétním znakem. Určuje o jaký typ souboru se jedná:

  • Lomítkem "/" je označen adresář.

  • Roura "|" před názvem je pipe[REF].

  • Rovnítko "=" je socket.

  • Hvězdičkou "*" jsou označeny spustitelné soubory.

  • Pomlčka "-" označuje znaková zařízení.

  • Plus "+" je blokové zařízení.

  • Vlnovka "~" je odkaz, link na adresář.

  • Zavináč "@" je taky odkaz (link) ale na soubor. Ve WINDOWS se odkaz "@" jmenuje zástupce.

  • Výkřičník "!" je odkaz, který odkazuje nikam. To znamená, že odkazovaný soubor neexistuje nebo je jinde než má být.

Se souborovým systémem úzce souvisí konfigurační soubor FSTAB[REF].

11.2. FSTAB

2019-08-05

Soubor FSTAB[119] (File Systems Table) je systémovým souborem a je k nalezení v globálním konfiguračním adresáři "/etc". Obsahuje definice všech připojovaných souborových systémů. Není pro hudební tvorbu až tak důležitý ale bez něj si nikdo přes počítač nezahraje. Spuštěním jakéhokoliv správce souborů s právy ROOT, vyhledáním FSTAB souboru a jeho editací lze připojit další, v instalaci nepřipojený disk. Manuál k nastavením FSTAB se v CLI vyvolá příkazem man fstab.

Poinstalační FSTAB tabulka je vytvořena instalačním procesem[REF]. Jednotlivé položky <file system>, <mount point>, <type>, <options>, <dump>, <pass> jsou ozřejmeny v dalším textu.

/etc/fstab - Poinstalační tabulka rozdělení disku
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system>                            <mount point>  <type>       <options>           <dump>  <pass>
# / was on /dev/sda2 during installation
UUID=f2a5f8c2-2f98-4569-937e-b06155b67e08  /              ext4         errors=remount-ro   0       1    1
# /home was on /dev/sda3 during installation
UUID=a77efb0d-eeef-44ec-a416-5cdc546b2ed1  /home          ext4         noatime,nodiratime  0       2    2
# swap was on /dev/sda1 during installation
UUID=efd8cc2e-5863-49f7-ad61-ef8a6f8b8eb6  none           swap         sw                  0       0    3
/dev/sr0                                   /media/cdrom0  udf,iso9660  user,noauto         0       0    4
/etc/fstab - Tabulka bez komentářů
UUID=f2a5f8c2-2f98-4569-937e-b06155b67e08  /              ext4         errors=remount-ro   0       1    1
UUID=a77efb0d-eeef-44ec-a416-5cdc546b2ed1  /home          ext4         noatime,nodiratime  0       2    2
UUID=efd8cc2e-5863-49f7-ad61-ef8a6f8b8eb6  none           swap         sw                  0       0    3
/dev/sr0                                   /media/cdrom0  udf,iso9660  user,noauto         0       0    4
1 Data systémového oddílu / jsou instalována na druhý oddíl prvního /dev/sda2 harddisku.
2 Oddíl pro uživatelská data /home je ve třetím oddílu /dev/sda3. V instalaci byli aktivované volby noatime a nodiratime. Stačí jen noatime.
3 Linuxový odkládací SWAP oddíl byl při instalaci vytvořen v prvním oddílu prvního harddisku /dev/sda1. SWAP nemá svůj přípojný bod.
4 Zařízením pro optickou mechaniku je /dev/sr0. MOUNT POINT má v "/media/cdrom0"[REF]. V tomto adresáři lze po vložení média nalézt soubory. Je-li mechanik víc jsou pojmenovány podobně jako harddisky - sr0, sr1, sr2 - atd. Zkuste přepsat "/media/cdrom0" za "/home/user/cdrom" a soubory vloženého CD/DVD budou po restartu k nalezení v "/home/user/cdrom".

Adresáři "/home" byl při instalaci vytvořen vlastní oddíl na harddisku. V tomto případě je v systému instalován pouze jeden harddisk sda a sr0 CD/DVD mechanika. Byl-li DEBIAN instalován paralelně s jiným OS na druhý disk bude jeho instalace na sdb. Třetí disk bude sdc atd. Podle unikátního UUID je oddíl v systému rozpoznatelný a má i svůj MOUNT POINT.

TIP: Hardwarová zařízení jsou v kořenovém adresáři "/dev". V této složce jsou informace jak o nainstalovaných harddiscích tak i optické mechanice a dalších hardwarových zařízeních a lze je prohlížet textovým editorem.

11.2.1. <file system>

2019-07-24

<souborový systém> definuje úložné zařízení:

Disky značené sd jsou sériové SATA disky.

  • /dev/sda5 - disk a oddíl 5

  • /dev/sdb2 - disk b oddíl 2

  • /dev/sdc1 - disk c oddíl 1

  • /dev/sdd3 - disk d oddíl 3

Disky hd jsou paralelní IDE disky a jejich značení je úplně stejné.

  • /dev/hda5 - disk a oddíl 5

  • /dev/hdb2 - disk b oddíl 2

  • /dev/hdc1 - disk c oddíl 1

  • /dev/hdd3 - disk d oddíl 3

11.2.2. <mount point>

2019-07-24

<přípojný bod> sděluje příkazu mount cestu kam připojit <file system> zařízení:

Příklad přípojného bodu
  • /mnt/moje_USB

  • /media/fleshka

  • /home/user/flash_disk-01

  • /home/user/ExtHDD_WINDOWS-D

Při vytváření přípojného bodu nezapomeňte, že v příkazové řádce je nutné cesty a názvy s mezerami uzavřít do uvozovek.

11.2.3. <type>

2019-07-24

<typ> definuje souborový systém zařízení nebo oddílu, který má být připojen:

Nejčastěji používané a podporované typy:
ext2, ext3, ext4, reiserfs, xfs, jfs, smbfs, iso9660, vfat, ntfs, swap, auto.

Zapsáním argumentu -t auto nechá uživatel definovat souborový systém na oddíle automaticky příkazem. Volba auto je užitečná pro odpojitelná USB zařízení.

  • USB klíčenky mívají typ vfat.

  • Externí disky WINDOWS jsou ntfs.

Souborový typ na externím zařízení lze zjistit příkazem lsblk -f [REF].

Uživatel může externí disk nebo flešku formátovat[REF] a nastavit na něm souborový typ podle potřeby.

11.2.4. <options>

2019-07-24

<volby> jsou jednotlivé, individuální atributy pro připojování oddílů harddisku:

  • auto - souborový systém zařízení se připojí automaticky při startu nebo vyvoláním příkazem mount -a;

  • noauto - souborový systém bude připojen pouze příkazem mount;

  • rw - připojí souborový systém pro čtení a psaní;

  • ro - připojí oddíl pouze pro čtení;

  • user - povoluje připojit zařízení i uživatelům (zahrnuje noexec, nosuid, nodev není-li dáno jinak);

  • nouser - pouze ROOT může systém připojit (defaultní nastavení);

  • owner - LINUX specifická volba umožňující zařízení připojit pouze vlastníkem;

  • noatime - neaktualizuje přístupové časy k souborům, může zvýšit výkon počítače;

    INFO: V instalaci operačního systému byl atribut noatime aktivován[REF].
    INFO: Jak noatime stejně tak i nodiratime zvyšují životnost SSD disků.
  • nodiratime - neaktualizuje přístupové časy k adresářům, může zvýšit výkon počítače, tuto volbu není potřeba zadávat je-li zadána volba noatime;

  • relatime - aktualizuje přístupové časy relativně k poslední modifikaci nebo poslední změně, aktualizuje přístupový čas pouze je-li předchozí přístup dřívějšího data než současný čas přístupu, byl-li soubor čten od doby jeho posledních úprav. Volba podobná noatime. Může zvýšit výkon.

  • exec - povoluje v oddílu spouštění programů (defaultní nastavení);

  • noexec - spouštění programů není povoleno;

  • nobarrier - zakazuje zapisování změn do interní datové journal struktury systému. Souborový systém ext4 má defaultně nastaven atribut barrier;

    INFO: Zapsání atributu nobarrier do oddílu s přípojným bodem "/home" obsahujícím uživatelské data může být výhodou. Jeho aktivace je pouze na zvážení správce. S tímto atributem se urychlí operace na souborech. Hrozí však nebezpečí, že se nečekaným vypnutím počítače ztratí rozpracovaná, neuložená data a nebude možné je obnovit. O uložená data uživatel nepřijde.
    !! Stejně tak se může stát, že s aktivovaným atributem nobarrier se při výpadku proudu souborový systém poškodí a bude potřebné vyhledat chyby na disku. O automatickou opravu případné nekonzistence se stará systém[REF] při bootování nebo se defekt musí v horším případě odstranit manuální cestou[REF].
  • sync - I/O komunikace by měla být synchronní;

  • async - I/O komunikace by měla být asynchronní;

  • discard - systém informuje disk, které bloky dat již nejsou používány a je možné je odstranit;

    INFO: Tato volba je vhodná pro vylepšení výkonu SSD disků. Především starších SSD disků. Podívejte se zda používaný SSD disk tuto technologii podporuje.
  • flush - volba pro FAT souborový systém (diskety), častěji aktualizuje přenášená data;

  • defaults - výchozí default nastavení (ekvivalentní s volbou rw,suid,dev,exec,auto,nouser,async);

  • suid - povoluje operace s suid a sgid bity, používa se k dočasným povolením spouštět programy pro splnění specifického úkolu;

  • nosuid - zakazuje operace s suid a sgid bity;

a další, viz man mount, man fstab.

11.2.5. <dump>

2019-07-24

<výpis> volba je použita utilitou pro čištění souborového systému, je-li utilita instalována.

  • 0 - ignoruje zálohy souborového systému

  • 1 - provede zálohu

Mnoho uživatelů utilitu instalovanou nemá a nastavení by tedy mělo zůstat 0.

11.2.6. <pass>

2019-07-24

<kontrola> souborového systému. Hodnoty 0, 1, 2 jsou k určení pořadí kontroly:

  • 0 - souborový systém nebude kontrolován

  • 1 - značí nejvyšší prioritu a má je ROOT souborový systém

  • 2 - ostatní souborové systémy

Kontroly obsluhuje příkaz fsck (file system check). Kontrola není výstižný překlad. Jde spíš o slovo ve smyslu "projít", "schválit". Tato kontrola probíhá při bootu počítače. Když se počítač vypne natvrdo tak trvá chvilku déle.

11.3. Editace FSTAB

2019-07-07

Po nainstalování operačního systému není nutné tabulku FSTAB upravovat a vše funguje jak má. Uživatel si ji možno časem upraví. Připojení externího nebo USB disku se provede ve správci souborů nebo příkazem[REF].

Rychlou informaci o discích v systému lze získat příkazem lsblk (list block), který zobrazí výpis blokových zařízení.

xfce4-terminal - Rychlé info
$ lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0 55,9G  0 disk                 1
├─sda1   8:1    0  1,9G  0 part [SWAP]          2
├─sda2   8:2    0  6,5G  0 part /               2
└─sda3   8:4    0 47,6G  0 part /home           2
sdb      8:16   1 29,8G  0 disk                 1
└─sdb1   8:17   1 29,8G  0 part                 2
sr0     11:0    1 1024M  0 rom                  3
1 disk - harddisky, externí nebo USB disky.
2 part - oddíly na discích.
3 rom - CD/DVD
Aby byla mechanika zobrazena musí v ní být zasunuté médium.

Příkaz lsblk s parametrem -f.

xfce4-terminal - Výpis FSTYPE
$ lsblk -f
NAME    FSTYPE  LABEL       UUID                                    MOUNTPOINT
sda
├─sda1  swap                efd8cc2e-5863-49f7-ad61-ef8a6f8b8eb6    [SWAP]
├─sda2  ext4    název1      f2a5f8c2-2f98-4569-937e-b06155b67e08    /
└─sda3  ext4    název2      a77efb0d-eeef-44ec-a416-5cdc546b2ed1    /home
sdb
└─sdb1  vfat    názevUSB    6933-B7D4                               1
sr0

FSTYPE vypíše <type>[REF] souborového systému.
LABEL není povinný a je to název zařízení zadaný uživatelem.
UUID toho kterého oddílu je vždy jedinečné číslo a každý oddíl má svoje.

1 Není-li u některého oddílu uveden MOUNTPOINT potom oddíl není připojen.
Disk /dev/sdb je USB disk. Při instalaci operačního systému nebyl zasunut a určitě ani inicializován. Má jeden oddíl sdb1, SIZE je 32G (29.8G po zformátování). FSTYPE je vfat. Tyto informace jsou užitečné pro editaci FSTAB a manuální připojení[REF] USB klíčenky nebo externího HDD.

Editovat soubor FSTAB lze jakýmkoliv textovým editorem. HDD, SDD, USB Flash disky se tak k systému dají připojit uživatelsky. Editor se otevře poklikáním na soubor ve správci souborů. Souborového správce lze spustit stejně jako jakoukoliv GUI aplikaci z MENU ale i příkazem[REF].

xfce4-terminal - Spuštění správce souborů
$ su -
# doublecmd &

FSTAB není skrytý soubor ale můžete si nechat zobrazit i skryté soubory. Zobrazit skryté soubory v DOUBLE COMMANDER lze i klávesou [CTRL] spolu s [.]. Chcete-li do některého souboru pouze nahlédnout označte ho kurzorem a stiskněte klávesu [F3]. Pro režim editace poklikejte na soubor nebo poslouží i klávesa [F4].

! Pozor na překlepy.

FSTAB je velmi důležitá systémová tabulka. Je čtena při inicializaci operačního systému. Data v ní zapsaná jsou nutná pro správný chod celého systému. Upravovaný soubor si určitě zálohujte nebo alespoň pracujte s tužkou a poznámkovým blokem. Poškozený soubor lze potom v opravném režimu[REF] obnovit.

/etc/fstab - Tabulka bez komentářů
UUID=f2a5f8c2-2f98-4569-937e-b06155b67e08  /              ext4         errors=remount-ro   0       1    1
UUID=a77efb0d-eeef-44ec-a416-5cdc546b2ed1  /home          ext4         noatime,nodiratime  0       2    2
UUID=efd8cc2e-5863-49f7-ad61-ef8a6f8b8eb6  none           swap         sw                  0       0    3
/dev/sr0                                   /media/cdrom0  udf,iso9660  user,noauto         0       0    4
1 Data systémového oddílu / jsou instalována na druhý oddíl prvního /dev/sda2 harddisku.
2 Oddíl pro uživatelská data /home je ve třetím oddílu /dev/sda3. V instalaci byli aktivované volby noatime a nodiratime. Stačí jen noatime.
3 Linuxový odkládací SWAP oddíl byl při instalaci vytvořen v prvním oddílu prvního harddisku /dev/sda1. SWAP nemá svůj přípojný bod.
4 Zařízením pro optickou mechaniku je /dev/sr0. MOUNT POINT má v "/media/cdrom0"[REF]. V tomto adresáři lze po vložení média nalézt soubory. Je-li mechanik víc jsou pojmenovány podobně jako harddisky - sr0, sr1, sr2 - atd. Zkuste přepsat "/media/cdrom0" za "/home/user/cdrom" a soubory vloženého CD/DVD budou po restartu k nalezení v "/home/user/cdrom".

Předchozí tabulka je původní. Její editací se do systému vloží nové zařízení a nastaví se. Není to bezpodmínečně nutné. Ale poté může zařízení připojit a soubory přepisovat pouze ROOT. Zapsat lze i víc zařízení. Potom je možné uživatelsky připojit více zařízení současně.

/etc/fstab - Editace
# <file system>                            <mount point>  <type>       <options>           <dump>  <pass>
# <co připojit>                            <kam>          <typ>        <atributy>          <dump>  <pass>
# /dev/sdb1
/dev/sdb1                                  /mnt/point     auto         user,rw,noauto      0       0    1
/dev/sdc1                                  /mnt/c1        auto         user,rw,noauto      0       0    2
/dev/sdc2                                  /mnt/c2        auto         user,rw,noauto      0       0    3

Zařízení lze zapsat i pomocí UUID. Není to povinnost ale zařízení bude definováno jednoznačně. UUID vypíše příkaz lsblk -f.

/etc/fstab - Nová uživatelská tabulka FSTAB
# <file system>                            <mount point>  <type>       <options>           <dump>  <pass>
UUID=f2a5f8c2-2f98-4569-937e-b06155b67e08  /              ext4         errors=remount-ro   0       1
UUID=a77efb0d-eeef-44ec-a416-5cdc546b2ed1  /home          ext4         noatime,nodiratime  0       2
UUID=efd8cc2e-5863-49f7-ad61-ef8a6f8b8eb6  none           swap         sw                  0       0
/dev/sr0                                   /media/cdrom0  udf,iso9660  user,noauto         0       0
/dev/sdb1                                  /mnt/point     auto         user,rw,noauto      0       0    1
1 Po uložení změn je výsledkem nová tabulka FSTAB s novým zařízením.
/dev/sdb1 - systém bude po restartu na vyžádání[REF] připojovat jakékoliv blokové zařízení.
/mnt/point - do této složky ať už jím je USB klíčenka nebo oddíl externího HDD. Připojování dalších zařízení sdb2, sdc1 atd…​ je obdobné.
auto - ve sloupci <type>, nemusí se v příkazu pro připojení psát -t auto.
user - zařízení může připojovat a odpojovat i USER bez nutnosti přihlášení k ROOT účtu.
rw - pro čtení i zápis.
noauto - ve sloupci <options> sděluje systému zda tento oddíl připojit při spuštění systému automaticky.
2 Pro příklad - další oddíl.
Může se najednou připojit víc externích zařízení.
3 A ještě jeden další oddíl.
? Při zadání více parametrů za sebou dbejte na jejich oddělení čárkou a bez mezer.

Atributy a další možnosti nastavení jsou uvedeny v tabulce[REF] FSTAB.

TODO - os-prober & NTFS

11.4. Připojení zařízení

2020-12-30

Nepřipojené USB disky nejsou jen ty v kapse u kalhot ale i ty už vložené do slotu USB ale zatím softwarově nezavedené operačním systémem.

Připojení v některém z klasických správců souborů.
  • V aplikaci DOUBLE COMMANDER se po zasunutí disku objeví v horní liště ikona zasunutého zařízení a stačí na ní kliknout. Disk se automaticky připojí a správce souborů automaticky přepne i adresář. DOUBLE COMMANDER připojuje zařízení do "/media/studio/názevUSB".

    Před odpojením je potřeba přejít do jakékoliv složky jiného disku např. do domovského adresáře jinak se připojené zařízení neodpojí. Poté se odpojí kliknutím pravého myšítka na ikonu v liště zařízení a "Odpojit".

  • Ve správci THUNAR je vložený disk vidět po levé straně s nabídkou míst v PC. Stačí na ikonu kliknout. Odpojení je dokonce luxusnější protože není před odpojením nutné přejít do jiného disku.

Připojení manuálně skrze příkazový řádek.

Příkazový řádek jde vyvolat i v MIDNIGHT COMMANDER[REF] klávesami [CTRL]+[o]. Pro návrat zpět do okna MC slouží ty samé klávesy.

xfce4-terminal - Získání informací
$ lsblk                                         1
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0 55,9G  0 disk
├─sda1   8:1    0  1,9G  0 part [SWAP]
├─sda2   8:2    0  6,5G  0 part /
└─sda3   8:4    0 47,6G  0 part /home
sdb      8:16   1 29,8G  0 disk                 2
└─sdb1   8:17   1 29,8G  0 part 3
1 Připojená bloková zařízení.
2 Když nevíte, které zařízení je fleška zpusťte lsblk [REF] s vytaženou fleškou. Příkaz ji nevypíše.
3 Není-li vypsán MOUNTPOINT není zařízení připojeno.

K připojení slouží příkaz mount [120]. K odpojení slouží příkaz umount.

Základní podmínkou je, že přípojný bod musí existovat už před připojením. Vytvořte ho kdyžtak příkazem mkdir (make directory).

xfce4-terminal - Vytvoření přípojného bodu
$ su -
# mount -t auto /dev/sdb1 "/mnt/point"          1
mount: mount point "/mnt/point" does not exist  2
# mkdir /mnt/point                              3
1 Samotný příkaz pro připojení zařízení se časem stane rutinou.
2 Připojení zařízení bez vytvořeného adresáře pro přípojný bod vypíše chybovou hlášku.
3 Vytvořte si adresář pro přípojný bod.
Název nebo cestu[REF] si zvolte podle vlastních potřeb.

Připojte zařízení /dev/sdb1 ještě jednou.

xfce4-terminal - Připojení zařízení
# mount -t auto /dev/sdb1 "/mnt/point"          1
# lsblk                                         2
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
...
sdb      8:16   1 29,8G  0 disk
└─sdb1   8:17   1 29,8G  0 part /mnt/point      3
# cd /mnt/point                                 4
1 Příkaz pro připojení má tvar: mount -t souborový_typ zařízení do_adresáře.
2 Kontrola.
3 Zařízení /dev/sdb1 je připojeno do složky /mnt/point.
Jsou tam všechny soubory připojeného disku.
4 Stačí změnit cd [REF] pracovní adresář nebo si adresář otevřete ve správci.
xfce4-terminal - Odpojení zařízení
# umount -t auto /dev/sdb1                      1
umount: /mnt/point: target is busy.             2
# umount -t auto /dev/sdb1 && lsblk             3
1 Příkazem umount se zařízení odpojí.
2 Chybová hláška upozorní, že je zařízení stále aktivní.
Někde je otevřený soubor nebo je zařízení otevřeno ve správci atd. Problém vyřešte zavřením souborů nebo ve správci změňte pracovní adresář.
3 Odpojení umount opakujte a poté && příkaz lsblk vypíše aktuální stav.

Připojit nebo odpojit externí zařízení může pouze ROOT. Rovněž má k souborům exklusivní přístup.

Aby mohl externí zařízení připojit a odpojit i USER a měl i plný přístup k souborům musí to správce v souboru FSTAB odsouhlasit zapsáním řádky s definicí zařízení[REF].

/etc/fstab
# Dopsání řádky do '/etc/fstab' umožní pracovat se zařízením 'sdb1' i uživateli.
#   'user'  - může zařízení připojit a odpojit
#   'rw'    - může soubory na flešce kopírovat, mazat, editovat

# Zařízení          Přípojný bod    Typ         Možnosti            Dump    Pass

/dev/sdb1           /mnt/point      auto        user,rw,noauto      0       0

Pro nahrání tabulky počítač RESTARTujte. Potom stačí po zasunutí zařízení do slotu zapsat příkaz.

xfce4-terminal - Uživatelské připojení a odpojení
$ mount /mnt/point                              1
$ umount /mnt/point                             2
1 Připojení uživatelem.
Stačí zapsat mount /mnt/point a v adresáři /mnt/point budou soubory. Uživatel s nimi může nakládat svobodně aniž by se musel přihlásit jako správce.
2 Před fyzickým odebráním zařízení ze slotu ho odpojí příkazem umount.

12. Zálohy

12.1. 'cp' - kopírování

2019-08-05

Pracovat s tužkou a notesem není od věci. Zároveň je velmi praktickým zvykem kterýkoliv ze systémových souborů před úpravami zálohovat. Či už pro dobrý pocit a klid na duši nebo pro případnou možnost porovnání změn nebo obnovení. Jakákoliv akce v systému vyžaduje ROOT[REF] přihlášení.

Příkaz cp (copy) vytvoří k původnímu souboru jeho digitální obraz v podobě kopie s novým názvem. Kopírovat se samozřejmě dá i ve správci souborů[REF]. DOUBLE COMMANDER je ortodoxní dvoupanelový správce ve stylu WINDOWS aplikace TOTAL COMMANDER. MIDNIGHT COMMANDER spoušten jednoduchým příkazem mc je linuxovější a vykresluje se přímo v okně TERMINAL bez GUI interface.

Kopírování v pracovním adresáři[REF] bez uvedení cesty

xfce4-terminal
$ cp "file" "file.orig"

uloží kopii souboru "file" do toho samého aktivního pracovního adresáře s extenzí "file.orig". V UNIX-LIKE systémech nejsou koncovky zejména u textových souborů nutné. Dá se vytvořit jakákoliv tedy i žádná.

TIP: Zapsání příkazu s parametrem cp -i "file" "file.orig" vyvolá interaktivní mód a příkaz se zeptá na přepsání souboru. Informace o dalších parametrech a možnostech příkazu cp jsou v jeho manuálových stránkách man cp.

Zapsáním příkazu cp s uvedením cesty je možné soubor kopírovat do libovolného adresáře v adresářové struktuře[REF].

xfce4-terminal
$ cp "file" "/path/new_file.orig"

je v překladu do lidštiny

xfce4-terminal
$ kopíruj "soubor" "/cesta/nový_soubor.orig"

Pro zkrácení zápisu cesty poslouží i tilda[REF] jako zástupný znak pro domovský adresář.

xfce4-terminal
$ cp "file" "~/Dokumenty/new_file"              1
1 Tilda ~ je zkrácený zápis pro "/home/user"
INFO: Domovský adresář uživatele je "/home/user". Domovský adresář správce ROOT je "/root".

Je asi správné zálohovat původní konfigurační soubory do toho samého adresáře. Potřebná záloha se v nouzi nemusí hledat a zkrátí se i zápis příkazu.

Obnovení souboru, který byl nechtěně poškozen třeba překlepem při psaní je vcelku snadné. Stačí poškozený soubor "file" nahradit původním souborem "file.orig". Tedy reverzně ho kopírovat do původního umístění a s původním názvem.

xfce4-terminal
$ cp "/path/file.orig" "/path/file"

Je-li záložní soubor v tom samém adresáři jako poškozený soubor není nutné uvádět cesty.

xfce4-terminal
$ cp "file.orig" "file"

Máte-li jako uživatel práva ROOT pak lze spouštět příkazy i bez nutnosti zadání hesla příkazem sudo [REF] (superuser do).

xfce4-terminal
$ sudo cp "/cesta/soubor" "/cesta/kopie"

Se zálohou je možné systém uvést do původního stavu se zachováním funkčnosti.

TIP: Operační systémy nabízejí při BOOT volbu s možností admimistrace nebo opravy systému. Ne jinak to je i s linuxovými distribucemi.

Nedodržením této do začátku praktické zásady zálohování se může stát, že systém nebude schopen s poškozeným systémovým souborem bootovat a záloha není. Stát se může. Neodborným zásahem se může nevratně poškodit i hardware. V tomto případě hardware neopraví ani obnovení zálohy. Bude-li čím obnovit zálohu. Právě proto je znalost i příkazů jako je cp užitečný, praktický fakt a vynikající prvotní zábrana před klikáním bez rozmyslu a uvážení.

? Počítač vydrží hodně a restartem se umí mnohdy oklepat ale proti neuváženému zásahu sebeobranu nemá.

12.2. Bitová kopie

2020-12-29

Řešením záloh je taky kompletní bitová kopie všech oddílů. Nevýhodou je potřeba dalšího harddisku ne menšího než je součet velikostí kopírovaných oddílů. Bitová kopie je přesný digitální obraz harddisku a zálohovaný systém lze obnovit do stavu, ve kterém byl zazálohován i se systémovými nastaveními. S velkokapacitním diskem jde zazálohovat všechny počítače v domácnosti. Bohužel tyto zálohy nelze dělat denně především z časových důvodů. Oddíl o velikosti 500GB plný dat může být kopírován přes hodinu. Záleží i na rychlosti jednotlivých komponent počítače.

Obnovení je poté rutinou:

  1. je-li záloha vytvořena na externím USB harddisku stačí zasunout disk do USB slotu a oddíly připojit[REF] do systému. Nalézt potřebnou zálohu některého z poškozených souborů ve správci souborů je snadné;

  2. u většího problému stačí zpětně kopírovat zazálohovanou bitovou kopii původního zazálohovaného oddílu na místo oddílu poškozeného. Záleží na datu poslední zálohy protože nahrazení poškozených dat daty původními způsobí návrat v čase do stavu poslední zálohy.

Vynikajícím softwarem určeným pro zálohování a správu oddílů je LiveCD distribuce GParted Live[REF]. Vytvoří bitovou kopii jakéhokoliv oddílu jehož souborový systém je v aplikaci podporován. WINDOWS oddíly nevyjímaje.

TIP: Zálohy na jiný harddisk zvýší pravděpodobnost, že o zazálohovaná data uživatel nepřijde ani v případě zlyhání pracovního harddisku.

Zálohy lze provést i skrze některou z GUI aplikací. V DEBIAN je velmi oblíbeným zálohovacím nástrojem rsync. Jeho implementaci v grafickém rozhraní používá aplikace GRSYNC[121]. Bohužel, aplikace není lokalizována.

V profesionálním prostředí vyžadujícím maximální prevenci před strátou dat se používají RAID[122] pole. Vyžadují však větší počet harddisků a v realtime audiosystému nejsou přeci jen zvýšenou zátěží. V LINUX jsou spravovány technologií LVM (Logical Volume Management).

13. System info

13.1. 'dmesg' - BOOT zprávy

2019-07-16

Nastavení počítače a jeho hardwaru vyžaduje přehled, který je úzce spjatý se správným vyhodnocením získaných informací. Po úspěšné instalaci je potřeba provést malý vhled do systému zda je opravdu vše jak má být. Mnohdy systém běží bez zjevných problémů ale s mnoha chybami. Dokáže si poradit i bez zásahu a vše se zdá být v pořádku. Ovšem jenom z pohledu uživatelského. Při normálním používání počítače to nevadí ale pro náročnější práci je záhodno o chybách alespoň vědět. A časem je, po získání nezbytných zkušeností, opravit.

Počítač pro tvorbu hudby potřebuje mít pro maximální výkon a zpracování dat v reálném čase co možná nejvíc volných systémových prostředků. Proč mu to znesnadňovat? Vyladit počítač znamená nastavit přesně takové hodnoty a parametry, které ho budou co nejmíň zaměstnávat řešením zbytečností a budou mu co nejvíc pomáhat při výpočtech. Ladění je nutné realizovat s ohledy na hardwarové možnosti a mnohdy pouze po malých bezpečných změnách.

K lehčímu a svižnějšímu systému kromě jiného patří:

  • redukce již zmiňovaných background služeb[REF] okenního manažera

  • kontrola bootovacího mechanizmu. Z pohledu chyb i z pohledu latence (zpoždění).

Asi žádný počítač nejde vyladit k dokonalosti ale proč se o to alespoň nepokusit a nemít computer v rámci možností co možná nejlehčí s ohromnou schopností počítat to, co počítat má. Kdyby to bylo prakticky možné tak pouze instrukce pro zpracování audiodat. Toto je velká výhoda hardwarových audiomašinek[REF].

INFO: Příkazy[REF] jsou opravdu potřebné a užitečné a bez znalosti jejich zápisu to opravdu nepůjde. Určitě ne při nastaveních systému.

Nástroj dmesg [123] (display message) je k tomuto účelu velmi vhodnou pomůckou. Buffer linuxového jádra typicky obsahuje zprávy ovladačů linuxového jádra při zavedení systému. Vyhledávací nástroj grep vyhledá ve výstupu příkazu dmesg pouze řádky jenž obsahují řetězec "failed", tedy pouze zprávy týkající se selhání příkazu nebo akce při bootování. Chyby lze analyzovat vyhodnocením informací získaných zadáním nalezeného řetězce do internetového vyhledávače. Chybějící firmware ke zvukovce je už vážný problém a tento nedostatek lze vyřešit:

  1. buď koupí zvukovky s CLASS compliant[REF] charakterem

  2. nebo instalací firmware ke zvukovce je-li v repozitářích[REF] nebo alespoň ke stažení na stránkách výrobce zařízení.

Nebude-li firmware k nalezení - smůla. Nebude-li zvukovka běžet bez proprietárních ovladačů - ještě větší smůla. Výrobce se nedržel standardů CLASS compliant[REF] a zvuková karta bude funkční pouze s originálními proprietárními ovladači od výrobce. Je-li zvukovka výrobcem určena pro jiný OS potom v LINUX nepoběží.

V příkladu je vypsána chyba chybějicího firmware 'rtl8168g-2.fw' pro síťovou kartu. Síť z pohledu uživatele funguje nejspíš bez problémů ale vyřešení problému instalací vhodných ovladačů může systému ulehčit.

xfce4-terminal
$ dmesg | grep 'failed'                         1
firmware: failed to load rtl_nic/rtl8168g-2.fw  2
$ apt-get install firmware-realtek              3
1 Extrahuje "failed" v dmesg.
2 Firmware chybí.
3 Instalace ovladače.

Firmware lze hledat i ve správci balíků SYNAPTIC[REF]. Hledání vyvolá kombinace [CTRL] s [f]. V tomto případě se jako hledaný řetězec znaků napíše "rtl8168g-2.fw" nebo jednodušeji "rtl8168g" a tak podobně. Je-li hledaný text v popisu alespoň jednoho z balíků, SYNAPTIC ho vypíše do seznamu. Poté stačí rozhodnout zda je balík ten správný. Instalací balíku do systému se při bootovacím procesu firmware určitě inicializuje.

TIP: Přidání příkazu grep s hledaným slovem, řetězcem nebo frází skrze pipeline[REF] za první příkaz skvěle poslouží ve vyhledávání konkrétních informací v souborech. Příkaz dmesg | grep snd najde v DMESG jakékoliv řádky obsahující řetězec snd tedy zprávy o sound zařízeních, modulech…​
? Je-li příkaz nainstalován a nejde spustit bude chyba nejspíš v nesprávně zadané velikosti písmen příkazu, uživatel nepoužil v názvech nebo příkazech s mezerami uvozovky. Příkaz je interpretován nesprávně. Spustí-li uživatel systémový příkaz bez ROOT oprávnění a příkaz je instalován vypíše TERMINAL hlášku bash: command not found.

13.2. Adresář "/proc"

2019-07-19

Kromě DMESG[REF] utility je v LINUX mnoho dalších nástrojů. Vyhledat příkaz vztahující se k určitému tématu lze i příkazem man [REF] nebo analyzovat boot proces nástrojem systemd-analyze [REF].

Některé z nástrojů jsou součastí instalace jiné v repozitářích distribuce a instalují se dodatečně. Mnoho informací o hardwaru nejsou nikdy ve spojení s hudbou potřeba. A když tak jen pro vývojáře nebo programátory. Ač se příkazy v uživatelském prostoru nepoužívají často jsou velmi užitečné při vytváření scriptů a počátečném nastavení systému. Získá se jimi spousta informací pro nastavení Linux Audio Workstation. Některé z nástrojů jsou pouze ve formě příkazu a jiné mají i vlastní grafické prostředí - GUI. Z mého pohledu nejpoužívanějších mnoho není. Ač je jejich výčet delší než dlouhý některé se zapamatují hned i nechtěně, další až budou opět potřeba a některé musím neustále hledat.

! Čemu nerozumím to nepřepisuji.

Mnoho z těchto hardwarových informací lze najít v adresáři "/proc"[124] a jsou v něm detaily o linuxovém systému včetně procesů a konfiguračních parametrech, verzi distribuce a podobně. V adresáří "/proc" jsou informace o aktuálním stavu jádra. Do souborů v adresáři jsou informace zapsány okamžitě ale až ve chvíli kdy si je uživatel vyžáda.

INFO: V reálu není "/proc" klasická složka. Dokonce soubory viditelné v této složce nejsou na harddisku ani uloženy. Adresář je virtuální a s vlastním souborovým systémem[REF] procfs.

Virtuální soubory v adresáři "/proc" poskytují na vyžádání aktuální informace o systému a jeho okamžitém stavu. Prohlížet se dají:

  • sofistikovanějším textovým editorem[REF];

  • souborovým správcem[REF] MIDNIGHT COMMANDER a jeho klávesou pro náhled [F3];

    Nastavte si v něm zobrazení skrytých souborů - Nabídka [F9] > Volby > Volby panelu > Zobrazit skryté soubory.

  • jednoduše se vyvolají příkazem cat [REF];

  • jakýmkoliv systémovým příkazem, který je programován pro zobrazení systémových informací z tohoto adresáře.

13.3. 'cat' - výpisy

2019-07-19

Utilita cat [125] (concatenate) čte a vypíše soubory v zadaném pořadí. Na rozdíl od nástroje less [REF] je vhodný pro zobrazení nebo uložení více souborů současně. Ve tvaru cat "soubor1" "soubor2" se do TERMINAL vypíše obsah obou souborů. Příkaz cat "file1" "file2" > "file3" přesměruje[REF] výstup obou čtených souborů a uloží do nově vytvořeného souboru "file3".

TIP: U delších výstupů příkazu cat je někdy příjemnější směrovat výstup skrze pipeline[REF] do příkazu less [REF] - cat file | less. Okno nástroje less nabízí komfortnější prohlížení s kurzorovými klávesami a hledáním klávesou [/]. Okno se uzavře klávesou [q] - quit.
xfce4-terminal
$ cat "soubor 1"                                1
$ cat "soubor 1" soubor_2                       2
$ cat file1 file2 > file3                       3
1 vypíše soubor "soubor 1"
2 vypíše "soubor 1" + soubor_2
3 zapíše oba soubory do file3

V dalším budu příkazy zpracovávající data na souborech zapisovat bez uvozovek a uvedu pouze seznam užitečných utilit pro zjištění informací o hardwaru. Půjde-li to omezím se na minimum textu.

xfce4-terminal
$ cat /proc/cpuinfo             // procesor
$ cat /proc/meminfo             // paměť
$ cat /proc/version             // LINUX a KERNEL informace
$ cat /proc/partitions          // diskové oddíly
$ cat /proc/interrupts          // přerušení
$ cat /proc/cmdline             // parametry předané při startu jádru
$ cat /etc/os-release           // informace o distribuci
$ cat /etc/hostname             // jméno počítače, "/etc/hostname" lze editovat
$ ...

Příkaz zapsaný s použitím hvězdičky cat /proc/cpu* /proc/mem* > /root/hw.info přečte v adresáři "/proc" všechny soubory s názvem začínajícím na cpu a mem. Výstup nevypíše do TERMINAL ale přesměruje[REF] a uloží do souboru "/root/hw.info" v domovském adresáři správce.

13.4. 'tee' - kopie výpisů

2019-08-14

Malinký nástroj tee má velmi podobnou funkci jako přesměrování > [REF] výstupu do souboru. Není určen pro detekci hardware a možno do této kapitoly ani nepatří ale je vynikajícím pomocníkem ve spojení s jinými příkazy. Jeho vylepšením je současné zobrazení výpisu v TERMINAL a okamžité uložení výpisu do souboru.

xfce4-terminal
$ cat file_1 file_2 file_8 | tee file_x         1
1 Příkaz do TERMINAL vypíše soubory file_1 file_2 file_8 a zároveň výstup uloží do souboru file_x. Když soubor "file_x" existuje - přepíše ho.

Uložení výpisu do existujícího souboru ale bez přepsání jeho původního obsahu proběhne s doplňujícím parametrem -a.

xfce4-terminal
$ cat file_1 file_2 file_8 | tee -a file_x      1
1 Výpis příkazu bude připojen k původnímu textu v souboru.
TIP: Dlouhé zápisy příkazů odrazují od jejich používání. Byli-li už jednou v TERMINAL zapsané dají se rychle vyhledat[REF]. Zapsat složitý příkaz nebo sérii příkazů jednou do skriptu a poté skript pouštět pouze kliknutím nebo klávesovou zkratkou je už velmi zajímavé řešení jak se okamžitě dopátrat k přesným, konkrétním informacím vytvořených na míru.

13.5. 'uname', 'free' - rychlé info

2019-12-11

Utilitka uname (unix name) vypíše do TERMINAL základní informace o systému.

xfce4-terminal
$ uname -a
Linux studio 4.9.0-9-amd64 #1 SMP Debian 4.9.168-1+deb9u3 (2019-06-16) x86_64 GNU/Linux

Linux - jméno jádra
studio - jméno počítače, soubor "/etc/hostname" lze editovat
4.9.0-9-amd64 - vydání (release) operačního systému, číselné označení jádra
#1 - pořadí kompilace jádra
SMP - víceprocesorový provoz (symmetric multiprocessing)
Debian 4.9.168-1+deb9u3 - verze jádra
2019-06-16 - datum kompilace jádra
x86_64 - architektura 64bit (i386, i486, i586, i686 jsou 32bit architektury)
GNU/Linux - operační systém

Malinký příkaz free nezobrazí nic jiného než informace o využití paměti. Jedním z argumentů (-b, -k, -m, -g) zobrazí výstup v bytech, kilobytech, megabytech, gigabytech.

xfce4-terminal
$ free -m                                       1
$ free -h                                       2
1 Výstup zobrazí v megabytech.
2 Dynamické zobrazení.

Příkaz čte informace ze souboru "/proc/meminfo". Krátky manuál - man free.

14. Oprava systému

14.1. RESCUE mode

2020-12-10

Metoda opravy v RESCUE MODE je ideální v případě, že vůbec nejde spustit instalovaný systém. A nejde spustit ani v RECOVERY MODE[REF]. Proto je k opravě nutné použít jiný systém, který se zavádí z externího média - CD/DVD-éčka nebo USB disku. Metoda je vhodná pro:

  • reinstalaci zavaděče GRUB[REF]

  • opravu poškozeného souborového systému a tabulek FSTAB[REF].

INFO: Pro operace na souborech, přeinstalaci poškozených systémových programů, správu služeb nebo pro úpravu instalovaného systému je vhodnější zavést systém alternativně v RECOVERY MODE, jenž je popsán v jiné kapitole[REF]. Tento mód nevyžaduje spuštění z CD/DVD nebo USB disku.

V RESCUE MODE mají všechny operace správcovský charakter. Vždy si vše před odentrováním bez spěchu rozmyslete a poté pečlivě zkontrolujte než aby jste přišli o data. Alespoň minimální znalost CLI[REF] je potřebná. Právě pro tyto nepříjemné události jsou užitečné instalační poznámky, poznámky s důležitými změnami a tak.

Vložte instalační CD/DVD do optické mechaniky nebo zasuňte instalační bootovací USB flash disk do slotu. Nabootujte z média[REF].

Zobrazí se úvodní instalační nabídka.

"DEBIAN GNU/Linux installer boot menu"

V okně "Hlavní menu instalace Debianu" se práce v záchranném režimu ukončí odsouhlasením volby "Přerušit instalaci". Počítač zůstane po vyjmutí média a vypnutí v původním stavu. Jak v instalačním procesu tak i před spuštěním RESCUE MODE lze zobrazit technickou nápovědu "Help". Bohužel pro našince je pouze v angličtině. Pro přepnutí z nápovědy zpět do instalačního MENU je příkaz menu.

Po zobrazení úvodní nabídky zvolte možnost:

> "Advanced options"
  > "Rescue mode"

V textové verzi "Rescue mode" slouží pro pohyb stejné klávesy jako u instalačního procesu:

  • tabulátor [TAB] k přesunu mezi volbami

  • kurzorové klávesy [UP] , [DOWN] , [LEFT] , [RIGHT] k pohybu v nabídkách

  • mezerník [SPACE] k výběru/vyjmutí položky

  • klávesa [ENTER] k potvrzení volby a spuštění příkazu

  • v oknech bez tlačítek může pro návrat pomoci klávesa [ESC]

V grafické verzi "Graphical rescue mode" je k dispozici ovládání polohovacím zařízením.

Další kroky jsou velmi podobné instalačnímu procesu a proces se ze začátku tváří jako opětovná instalace operačního systému. Ve kterémkoliv bodu lze režim oprav opustit tlačítkem "Jít zpět".

  > "Select a language"
  > "Vybrat umístění"
  > "Nastavit klávesnici"

Proběhne automatická detekce hardware, nastavení sítě a proces požádá o zadání "Jméno počítače" a "Doménové jméno", které bylo uvedeno v instalačním procesu[REF].

INFO: Následující příklad vychází z příkladu instalace[REF], ve které je kořenovým souborovým systémem oddíl /dev/sda2. Proto při výběru oddílu vycházejte z vlastní instalace. Při opravě systému volte oddíl, na kterém je instalace operačního systému.

RESCUE MODE vygeneruje následující volby s možností výběru mezi instalovanými a zároveň detekovanými oddíly.

  > "Zařízení pro použití jako kořenový souborový systém"
    > "/dev/sda1"                               1
    > "/dev/sda2"                               2
    > "/dev/sda3"                               3
    > "Sestavit RAID pole"                      4
    > "Bez kořenového souborového systému"      5
1 Na oddíle /dev/sda1 byl vytvořen "SWAP"[126].
2 /dev/sda2 byl v příkladu instalace nastaven jako root "/" kořenový souborový systém[REF].
Při opravě FSTAB[REF] tabulky a/nebo GRUB zavaděče je tato volba jediná logická.
3 /dev/sda3 - jako oddíl s uživatelskými daty "/home"
4 "Sestavit RAID[122] pole" je metoda jak zabezpečit data proti selhání disku.
Implementace této technologie výborně pomůže na dataserverech. Avšak následné zatížení, zejména softwarové, je v počítači určeném pro zpracování audiodat v reálném čase spíše na škodu.
5 V podnabídce "Bez kořenového souborového systému" je pouze jedna volba jak se systémem pracovat "Spustit shell v prostředí instalačního systému". Nepřipojí se žádný oddíl.
INFO: Termíny command-line, shell, příkazový řádek, prompt, CLI, console, term nebo TERMINAL jsou různá pojmenování pro totéž. Avšak pouze v praxi. V definicích výrazů jsou rozdíly ale v souvislostech tohoto textu jsou termíny zaměnitelné. Správné to není ale v praxi se kterýkoliv z výrazů chápe jako prostředí pro spouštění příkazů.

Výběrem některé z možností vytvoří RESCUE MODE podnabídku a v každé jsou podobné nástroje:

  • "Spustit shell na /dev/sda2"

Volba automaticky připojí /dev/sda2 jako kořenový souborový systém do "/" a otevře TERMINAL (≈shell). V TERMINAL lze procházet pouze kořenový adresář "/" a se zálohovanými soubory opravit opravitelné.

Další oddíly připojeny nejsou. Je-li potřeba v nich cokoliv upravit musí se připojit manuálně příkazem[REF]. Například oddíl /dev/sda3 se připojí příkazem mount -t ext4 /dev/sda3 /home do "/home".

Práce v TERMINAL se ukončí příkazem exit.

  • "Spustit shell v prostředí instalačního procesu"

Ke kontrole a k opravě souborového systému EXT4 na /dev/sda2 je příkaz fsck.ext4 /dev/sda2 a s přepínačem p - fsck.ext4 -p /dev/sda2 opraví problémy automaticky. Pro EXT3 je příkaz fsck.ext3 /dev/sda2. Příkaz fsck (File System Check) je obdobou scandisk operace ve WINDOWS.

Zkontrolujte si pro jistotu i ostatní oddíly na harddisku.

Po opravě se systém opět spustí. Když ne, může být poškozený GRUB nebo dokonce hardware. Pro detekci, analýzu a opravy hardwaru jsou určené specializované RESCUE LiveCD distribuce[REF].

Příkaz partman zadaný do příkazové řádky otevře okno s rozdělním disku známé z instalačního procesu[REF]. V něm se dají opětovně aktivovat oddíly, nastavit souborové systémy a přípojné body.

!! S použitím příkazu partman oddíly v žádném případě neformátujte. Jen je opětovně zkontrolujte nebo inicializujte a změny bez obav zapište na harddisk. Určitě si před uložením zkontrolujte zda není nastaveno formátování. SWAP zformátován bude ale u něj to nevadí. SWAP je pouze linuxový odkládácí prostor.

Další operační systémy vyhledá příkaz os-prober.

TERMINAL se ukončí příkazem exit.

  • "Reinstalovat zavaděč GRUB"

Stane se, že po startu počítače se nezobrazí seznam operačních systémů a systém není schopen z harddisku korektně startovat. Podobný problém v LINUX častý není ale reinstalace zavaděče[REF] může velmi pomoci. WINDOWS obdobou tohoto problému je "ntldr is missing", "harddisk read error". GRUB se může poškodit instalací nebo aktualizací jiného OS[38]. Když i po reinstalaci zavaděče GRUB systém stávkuje podívejte se ještě jednou na předešlé body s příkazem fsck. Mnohdy totiž pomůže i kombinace reinstalace GRUB spolu s kontrolou souborového systému v jednom kroku.

  • "Vybrat jiný kořenový souborový systém"

Byl-li v instalaci kořenový souborový systém "/" instalován do jiného oddílu harddisku například do /dev/sda1 je tato volba možností jak změnit oddíl a předešlé volby včetně reinstalace GRUB aplikovat v tomto umístění.

  • "Restartovat systém"

Pro úplné vyřešení problému musí počítač restartovat aby uložené změny načetl. Před opětovným zavedením operačního systému vyjměte instalační CD/DVD nebo instalační USB klíčenku.

14.2. RECOVERY mode

14.2.1. Advanced options

2020-12-09

Oprava z command-line je opravným režimem bez zavedení systému z instalačního média. Tato metoda není přístupná je-li poškozený linuxový zavaděč GRUB nebo z jakýchkoliv důvodů není připojený kořenový souborový systém "/"[REF]. Poškozený zavaděč GRUB nebo poškozená tabulka oddílů FSTAB se opraví zavedením systému z CD/DVD a spuštěním v režimu RESCUE MODE[REF].

Spuštěním PC a po startu GRUB zavaděče se zobrazí obrazovka s výběrem operačních systémů. Je-li instalován pouze DEBIAN bude v nabídce defaultně nastaven start systému DEBIAN z harddisku. GRUB ale nabízí i možnost spustit opravu systému volbou "Advanced options". Ve WINDOWS je volba známá jako "Nouzový režim".

...
> "Advanced options for Debian GNU/Linux"
  > "Debian GNU/Linux, with Linux x.x.x (recovery mode)"        1
1 x.x.x je číselné označení verze LINUX jádra

Jader může být instalováno víc. Je to důsledek aktualizací. Takto se po nezdařené aktualizaci linuxového jádra dá nabootovat i KERNEL (jádro) předchozí verze a systém lze opravit třeba odinstalací nefunkčního KERNEL.

Je-li v nabídce RECOVERY MODE víc verzí jader volte verzi KERNEL s nejvyšším číslem. Až bude instalováno realtime jádro[REF], které je určeno k tvorbě v reálnem čase bude označení verze KERNEL obsahovat řetězec "rt".

Spuštěním RECOVERY MODE pro zotavení a obnovu nastartuje základní linuxový systém bez uživatelského GUI rozhraní a zastaví se při přihlášení k ROOT účtu. Heslem se správce přihlásí k TERMINAL.

...
...
"Pro zahájení údržby je třeba zadat heslo uživatele root"
(nebo stisněte Control-D, abyste pokračovali): _                1
root@debian:~# _
1 zadejte heslo a potvrďte [ENTER]

ROOT poté může spustit instalované nástroje, utility a příkazy, které pro běh nepotřebují grafické rozhraní. V těchto situacích je pro práci velmi užitečným souborový správce MIDNIGHT COMMANDER[REF], který GUI nepotřebuje a ovládat ho lze i klavesnicí.

Příkaz /sbin/poweroff vypne počítač.

Pro úplnost: kombinace kláves [CTRL]+[d] ukončí TERMINAL v režimu RECOVERY MODE a jde-li zavést pak zavede operační systém.

14.2.2. Připojení k síti

2020-12-09

V módu režimu pro obnovení je do paměti nahráno pouze nejnutnější a vše je v maximální možné míře deaktivováno. V RECOVERY MODE neběží ani síťové služby. Pro instalaci nástroje z repozitářů DEBIAN je běh síťových služeb a správně zapojený síťový kabel nutností.

$ systemctl status NetworkManager.service       1
  NetworkManager.service - Network Manager
   Loaded: loaded (/lib/systemd/sy...
   Active: active (running) si...
...
$ systemctl start NetworkManager.service        2
1 Příkazem systemctl status NetworkManager.service lze stav sítě ověřit.
"Loaded: loaded" - musí být nahrána konfigurace síťových služeb;
"Active: active (running)" - a zároveň musí být síť aktivovaná.
"Active: inactive (dead)" - hlášení upozorní, že síť neběží.
2 Spuštění síťové služby.

Není-li cokoliv v pořádku potom příkaz

$ systemctl reload-or-restart NetworkManager.service

znovu nahraje jak konfigurační soubory tak restartuje i síťové služby.

TIP: Služby v DEBIAN se spravují příkazem systemctl akce název_služby.service. Akcí jsou vnitřní funkce start, stop, restart, enable, disable a další jsou popsány v manuálu man systemctl. Tato operace vyžaduje práva ROOT[REF].

Zakázání síťových služeb už při startu systému provede příkaz systemctl disable NetworkManager.service. Vytvořením vhodných spouštěčů[REF] nebo klávesových zkratek se dá síť účelně aktivovat pouze ve chvílích, kdy audiosystém nezpracovává data. Lze využít pro update systému. Následně se síťové prvky opět zakáží.

Síť po drátech se aktivuje sama není-li uživatelem nastaven jiný mechanizmus. Bezdrátové připojení k přístupovému bodu WIFI (AP) vyžaduje příkazy navíc.

$ nmcli radio                                   1
WIFI-HW  WIFI     WWAN-HW  WWAN                 2
enabled  enabled  enabled  disabled             3
1 Ověření WIFI statusu.
2 WWAN-HW a WWAN nejsou důležité.
3 WIFI-HW a WIFI musí být povoleno.

Jest-li WIFI-HW povolen není podívejte se zda nemáte zamčený WIFI-HW nějakým čudlíkem na počítači nebo jest-li není PC v leteckém režimu. WIFI se aktivuje příkazem:

$ nmcli radio wifi on

Deaktivuje se příkazem nmcli radio wifi off.

Samotné připojení k WIFI access pointu (AP) je jednoduché, pamatujete-li si název svého připojení:

$ nmcli connection up id "jméno_připojení"

Nepamatuje-li si název připojení pak má příkaz nmcli i alternativní ncurses rozhraní nmtui, ve kterém se dá k WIFI připojit také.

14.2.3. Práce se softwarem

2020-12-09

Po spuštění síťě[REF] lze doinstalovat i programy, které jsou k opravě systému potřeba. Nejdřív systém aktualizujte. Není to nutné ale proč pracovat s neaktuálním softwarem?

Následující sekvence příkazů vyčistí nepotřebné a provede upgrade softwarových balíků.

xfce4-terminal - Update softwarových balíků
$ apt-get autoclean                             1
Načítají se seznamy balíků... Hotovo
Vytváří se strom závislostí
Načítají se stavové informace... Hotovo
$ apt-get update                                2
Stahuje se:1 http://ftp.cz.debian.org...
Stahuje se:2 http://security.debian.org...
...
Staženo 23,0 MB za 24s (952 kB/s)
Načítají se seznamy balíků... Hotovo
$ apt-get upgrade                               3
...
1 Systém odstraní info o nepotřebných balících.
2 Aktualizuje databázi balíků.
3 Provede instalaci novějších verzí softwaru.

V průběhu instalace se může otevřít okno se správou o změnách nebo novinkách v jednotlivých programových balících.

apt-listchanges - Změny v balících
apt-listchanges: Novinky
-
webkit2gtk (2.20.0-2) unstable; urgency=medium
  webkit2gtk 2.20.0 contains a security feature named Gigacage that
  requires a virtual memory region of several gigabytes and is used for
  variable-length random-acce...
...
:

Okno se zavře stiskem klávesy [q] a systém bude pokračovat v instalaci.

Po upgrade softwaru se ještě udělá pořádek a systém odstraní již nepotřebné, osiřelé programové balíčky tzv. orphans.

$ apt-get autoremove

Systém je vyčistěn, aktuální a je možné stažení programového balíku z repozitáře a jeho instalace zadáním příkazu apt-get install jméno_balíku. Systém umožňuje současně instalovat vícero balíků.

$ apt-get install mc                            1
$ apt-get install mc testdisk photorec          2
1 Nainstaluje jen MIDNIGHT COMMANDER.
Okamžitě po nainstalování lze správce souborů spustit zadáním příkazu mc a použít pro souborové operace.
2 Příkaz nainstaluje tři programy v jednom kroku - MIDNIGHT COMMANDER, TESTDISK a PHOTOREC
Pro zajímavost
  • Utilita TESTDISK[127] výborně poslouží v situacích kdy se zdá, že data na harddisku jsou již nevratně ztracena. TESTDISK je výborným nástrojem pro obnovení ztracených souborových oddílů na harddisku.

  • PHOTOREC[128] nalezne, extrahuje a obnoví soubory. Nedělejte si iluze. Ne vždy se podaří všechny data zachránit ale šance na úspěšné obnovení není malá.

    INFO: Šance na obnovu dat se zvyšují když se nechtěně smazaná data na harddisku nepřepisují daty novými a obnova je zahájena neprodleně. Poškozené disky lze opravit sofistikovanými nástroji jiných LINUX distribucí. V RESCUE distribucích[REF] jsou většinou zahrnuty i TESTDISK a PHOTOREC.

V RECOVERY módu lze pracovat pouze v příkazové řádce ale dá se:

  • pracovat s příkazy[REF],

  • nahlížet do manuálů[REF],

  • hledat informace[REF],

  • systém zálohovat nebo ze zálohy obnovit[REF],

  • nalézt hardwarový problém[REF] nebo

  • provést upgrade[REF].

A výborným pomocníkem je právě správce souborů MIDNIGHT COMMANDER[REF] spustitelný z příkazové řádky.

Opravu poškozeného hardwaru nebo jiné vážné problémy lze řešit stažením[REF] a vypálením[REF] RESCUE distribuce[REF].

Příkazová řádka je plnohodnotným rozhraním se všemi možnostmi jak se systémem pracovat. Grafické uživatelské rozhraní GUI je nadstavbou a jiný způsob jak si práci více zpříjemnit. Mnoho GUI aplikací, tzv. frontend aplikací používá právě nejjednodušší příkazy a uživateli jako nadhodnotu poskytují komfort v podobě okna, ve kterém uživatel nemusí příkazy psát a stačí je vyklikat.

14.2.4. Stažení obrazu ISO

2020-12-09

Vytvoření ISO[129] obrazu na CD/DVD nebo na bootovací USB klíčence s použitím několika příkazů je cestou jednodušší a rychlejší než instalovat další software, seznamovat se s ním a poté použít. Nejsou vyžadovány další utility a vše potřebné je již zavedeno instalací DEBIAN distribuce. Takto stahovat a vypalovat lze i v prostředí XFCE zapsáním příkazů do command-line. Vypalovat CD a DVD v XFCE lze i v okně aplikace XFBURN.

WGET[130] je program pro stahování souborů ze sítě. Podporuje stahování přes protokoly HTTP, HTTPS, FTP.

Bez konkretizování cest s přepínači v příkazové řádce ukládá stažené soubory do aktivního pracovního adresáře. Před stažením:

  • se buď podívejte, ve kterém adresáři[REF] jste ať nehledáte kde je soubor uložen. Použijte příkaz pwd;

  • nebo změňte pracovní adresář[REF] aby se stažené data uložili kam je potřeba.

Nejjednodušší zápis příkazu

$ wget "http://domain.tld/path/file"

stáhne a uloží soubor do pracovního adresáře. Souborem může být jakýkoliv soubor, dokonce kompletní stránky a to rekurzivně (se zanořenými složkami) a odkazy převede na lokální. Možností je mnoho. Podívejte se do manuálu man wget nebo si najděte na webu příklady. Použitím vnitřních funkcí (parametrů, přepínačů) programu jsou jeho možnosti opravdu velmi bohaté.

INFO: Při stahování nezapomínejte na autorova přání nebo i licence. Buďte ohleduplní, poctivý a k sobě úpřimní. Ne každý si přeje aby jste stahovali podle libosti.

Alternativní zápis příkazu s parametry uloží soubor pod jiným jménem nebo do jiné složky. Nástroj wget má i funkci pro pokračování stahování souboru po přerušení downloadu. Příkazem lze také stáhnout ISO obraz RESCUE[REF] distribuce, ve které se dá analyzovat a specializovanými programy opravit i vážnější problém.

$ wget -O "nový_název.iso" "https://domain.tld/path/file.iso"       1
$ wget -P "/cesta/jiná_složka" "ftp://domain.tld/path/file.iso"     2
$ wget -O "nový_název.iso" -P "/cesta/složka" \                     3
> "ftp://domain.tld/path/file.iso"
$ wget -c https://domain.tld/path/file.iso                          4
$ wget -c -O "nový_název.iso" -P "/cesta/složka" \                  5
> "ftp://domain.tld/path/file.iso"
1 Příkaz wget stažený soubor přejmenuje.
2 Uloží stahovaný obsah do jiné složky.
3 Obsah přejmenuje a uloží jej do "/cesta/složka".
Dlouhý příkaz je na řádku zalomen[REF].
4 S parametrem -c naváže stahování po nechtěném přerušení stahování.
5 Vše v jednom. Přejmenuje, uloží do určené složky a kdyby stahování zlyhalo tak jej opětovně naváže.
INFO: Nezalamujte bezhlavě kdekoliv uprostřed slova ale přehledně v mezerách. Zapište před zalomením mezeru, poté zpětné lomítko \, potvrďte [ENTER] a příkaz pište dál.
INFO: Před bootem z CD/DVD nebo USB nezapomeňte v BIOS správně nastavit bootovací pořadí[REF] zařízení.

14.2.5. Vypálení ISO

2020-12-09

Po stažení ISO souboru lze data zapsat:

  1. na CD/DVD. Nejdřív si nainstalujte vypalovací nástroj cdrskin.

    $ apt-get install cdrskin                           1
    $ lsblk                                             2
    NAME   MAJ:MIN RM  SIZE  RO TYPE MOUNTPOINT
    sda      8:0    0  55,9G  0 disk
    ├─sda1   8:1    0   1,9G  0 part [SWAP]
    ├─sda2   8:2    0   6,5G  0 part /
    └─sda3   8:4    0  47,6G  0 part /home
    sdb      8:16   1  29,8G  0 disk
    └─sdb1   8:17   1  29,8G  0 part
    sr0     11:0    1 648.6M  0 rom
    $ cdrskin -v dev=/dev/sr0 -dao "/cesta/obraz.iso"   3
    1 Instalace vypalovací utilitky.
    2 Příkaz lsblk [REF] vypíše kromě harddisků i USB disky a optickou mechaniku.
    V mechanice CD/DVD musí být nějaké CD/DVD-éčko jinak se mechanika ve výpisu nezobrazí.
    3 Vypálení staženého souboru.
    Parametrem dev= se CD/DVD definuje. V příkladu to je zařízení "sr0". Všechna bloková zařízení jsou v adresáři "/dev". Cesta k zařízení bude "/dev/sr0". Zadáním argumentu -v bude operace vypalování upovídanější, -dao parametr se postará o vypálení dat najednou (disk_at_once).

    Příkaz eject vysune CD/DVD - instaluje se příkazem apt-get install eject, příkaz poweroff vypne počítač. Příkaz reboot počítač restartuje.

  2. nebo na USB flash disk. Data na USB disku si zálohujte. Prázdná fleška je pro tento účel ideální. Příkaz dd je velmi strojový a co se zadá to udělá bez odvolání.

    $ lsblk                                             1
    NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sda      8:0    0 55,9G  0 disk
    ├─sda1   8:1    0  1,9G  0 part [SWAP]
    ├─sda2   8:2    0  6,5G  0 part /
    └─sda3   8:4    0 47,6G  0 part /home
    sdb      8:16   1 29,8G  0 disk
    └─sdb1   8:17   1 29,8G  0 part
    $ umount -t auto /dev/sdb1                          2
    umount: /dev/sdb1: not mounted.
    $ lsblk                                             3
    NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sda      8:0    0 55,9G  0 disk
    ├─sda1   8:1    0  1,9G  0 part [SWAP]
    ├─sda2   8:2    0  6,5G  0 part /
    └─sda3   8:4    0 47,6G  0 part /home
    $ dd bs=4M if="/cesta/obraz.iso" of="/dev/sdb" \    4
    > status=progress oflag=sync
    1 lsblk vypíše bloková zařízení včetně USB disku.
    Co je ve výpisu USB disk je rozpoznatelné podle velikosti. Když tak zadejte příkaz lsblk opětovně ale bez zasunuté flešky a z výpisu poznáte, které zařízení ve výpisu chybí. Je to fleška.
    2 Odpojení USB oddílu /dev/sdb1.
    Oddíl USB disku nemá být připojen. Příkaz proveďte třeba jen pro jistotu. Nebyl-li disk před tím připojen tak se v příkazové řádce vypíše hláška umount: /dev/sdb1: not mounted. Když připojen byl odpojí se.
    3 Kontrola.
    4 dd zapíše ISO data na USB.
    Utilita dd (data duplicator) kopíruje RAW data na disk. Po odpojení klíčenky sice nelze na klíčenku kopírovat žádné soubory - ale - kopírování neprobíha do oddílu /dev/sdb1 ale přímo na disk /dev/sdb jinak nebude USB bez dalších úprav bootovat. Argument if= definuje vstupní soubor (input file). Uvozovky nejsou potřeba ale pozor na soubory s mezerami.

Příkaz poweroff vypne počítač. Příkaz reboot počítač restartuje.

14.2.6. Formátování USB

2020-12-09

Může se někdy stát, že USB flash disk je potřeba zformátovat. Formátování klíčenky není náročné.

!! Formátováním se vymažou všechna data. Neformátujte oddíly se systémem nebo se svými daty. Opatrnost je na místě.
$ lsblk                                             1
NAME   MAJ:MIN RM  SIZE  RO TYPE MOUNTPOINT
sda      8:0    0  55,9G  0 disk
├─sda1   8:1    0   1,9G  0 part [SWAP]
├─sda2   8:2    0   6,5G  0 part /
└─sda3   8:4    0  47,6G  0 part /home
sdb      8:16   1  29,8G  0 disk
└─sdb1   8:17   1  29,8G  0 part
$ umount -t auto /dev/sdb1                          2
$ mkfs -t vfat /dev/sdb1                            3
$ mkfs -t vfat -n jméno /dev/sdb1                   4
1 Zjištění informací o discích. S přepínači lsblk -afm je příkaz podrobnější.
2 Softwarové odpojení formátovaného oddílu.
Oddíl musí být odpojen.
3 Formátování oddílu.
USB klíčenku z praktických důvodů formátujte na souborový systém vfat jak je uvedeno v příkladu. Formátovat USB oddíl pro vlastní potřeby do EXT4 nebo jiných souborových systémů lze a bližší info je v manuálu man mkfs. Avšak kupříkladu WINDOWS tyto oddíly nerespektují a s takto formátovanou fleškou lze pracovat pouze v normálních operačních systémech.
4 Pouze příklad s pojmenováním flešky. Zadávat příkaz s přepínačem a názvem flešky -n jméno není potřeba. Kdo si ji chce nějak pojmenovat ten si ji může takto pojmenovat.
Formátování USB flešky s bootovacím příznakem.

Vypálením obrazu na USB disk lze sice systém instalovat z USB disku ale fleška je i s bootovacím příznakem. Pro opětovné řádné použití flešky je potřeba učinit pár kroků. USB disk sice funguje ale divně a systém uvádí třeba i víc oddílů na flešce i když to tak není. Je to způsobeno právě bootovacím příznakem na flešce. Systémy vidí USB disk jako bootovací a ne jako klasický USB disk pro zápis a čtení dat.

!! Formátováním se vymažou všechna data. Neformátujte oddíly se systémem nebo se svými daty. Opatrnost je na místě.
$ lsblk                                             1
NAME   MAJ:MIN RM  SIZE  RO TYPE MOUNTPOINT
sda      8:0    0  55,9G  0 disk
├─sda1   8:1    0   1,9G  0 part [SWAP]
├─sda2   8:2    0   6,5G  0 part /
└─sda3   8:4    0  47,6G  0 part /home
sdb      8:16   1  14.4G  0 disk
├─sdb1   8:17   1   3.6G  0 part
└─sdb2   8:18   1   3.1M  0 part
$ umount -t auto /dev/sdb1                          2
$ wipefs --all /dev/sdb                             3
$ fdisk /dev/sdb                                    4
$ mkfs -t vfat /dev/sdb1                            5
1 Zjištění informací.
2 Flešku odpojte.
3 Vyčištění disku a obnovení do původního čistého stavu a bez oddílů.
4 Utilitou fdisk se vytvoří nový oddíl. Po otevření textového rozhraní si můžete vyvolat písmenem m krátkou nápovědu.
Vytvořte nový oddíl s klávesou n a entrujte nabízené defaultní volby.
Poté klávesou w oddíl zapište.
Klávesou q ukončete fdisk.
5 USB disk zformátujte a když tak si vše okontrolujte příkazem lsblk -afm.
Určitě bude vše v pořádku a USB disk je opět použitelný jako klasická fleška.

14.3. RESCUE LiveCD

2020-12-09

Nejpohodlnější alternativou vyhledání zdroje potíží je stažení ISO obrazu linuxové RESCUE distribuce. Zapsáním obrazu na CD/DVD nebo USB flash disk a nabootováním z tohoto média se nahraje nabídka distribuce. Některé nástroje z bootovací nabídky se spustí v prostředí GUI a jiné v textové podobě s ovládáním klávesnicí. Jsou zaměřené výlučně pro forenzi, analýzu, detekci a identifikaci HW, pro opravu systémů, záchranu nebo obnovení dat. Všechny uvedené distribuce lze použít pro opravy nebo zálohování i v počítačích s jinými operačními systémy. Nejsou určené výlučně pro linuxové stroje.

Stažením[REF] a zapsáním[REF] obrazu ISO na USB flash disk je už spuštění distribuce z klíčenky rychlé. Z CD/DVD je nahrávání pomalé ale neobtěžuje. Systém lze při spuštění zavést do RAM. Uvolní se tím optická mechanika pro další použití. Minimální velikost operační paměťi RAM musí odpovídat velikosti distribuce. Jsou sestavovány s ohledy na velikost CD do 750 MB.

  • V sestavě UltimateBootCD[131] (UBCD) je přes 100 výborných diagnostických nástrojů pro analýzu a opravu. Obsahuje nástroje pro BIOS, procesor, harddisk, paměť, periferie, systém a další. Součástí je i boot do PartedMagic systému, ve kterém je spousta dalších aplikací. V současné době nemá podporu pro UEFI. V BIOS je nutné před bootem z CD nebo USB nastavit mód LEGACY[REF]. Programově je nejlíp vybavenou distribucí.

  • GParted Live[132] je koncipován pro správu, zálohování oddílů a záchranu dat v GUI módu. Stěžejní aplikací je GParted. Na stránkách jsou neustále aktualizovány verze pro 32/64-bit architekturu. Distribuce má na internetu i českou příručku s obrazovým návodem. Tabulka s podporovanými souborovými systémy je na českém serveru WIKIPEDIE[133].

  • SystemRescueCD[134] je kódován pouze pro 64-bit architekturu (x86_64). Je výborně vybaven softwarem.

  • All in One – System Rescue Toolkit[135] je LiveCD s mnoha programy pro opravu poškozeného operačního systému.

Několik nástrojů obsažených v RESCUE distribucích:

  • Boot Repair[136] - obnoví přístup k operačnímu systému WINDOWS - 32-bit/64-bit (XP, Vista, Windows7, Windows8, Windows10), LINUX - 64-bit (Debian, Ubuntu, Mint, Fedora, OpenSuse, ArchLinux) a MAC 64-bit. Je na All in One – System Rescue Toolkit CD.

  • ClamAV - linuxový antivirus určen především pro kontrolu WINDOWS oddílů

  • FSArchiver - archivační nástroj a může být použit i pro záchranu dat

  • GNU Parted - nástroj pro práci s diskovými oddíly

    Oddíly lze vytvářet, měnit velikost, přesouvat, mazat a na nich vytvářet souborové systémy. Je základem pro GUI aplikaci GParted.

  • GParted[132] - výborný editor oddílů s grafickým rozhraním, GUI implementace GNU Parted knihovny

  • Memtest - pro testování pamětí

  • Mprime - Mersenne prime CPU výkonnostní test

  • Partimage - nástroj pro diskové obrazy

  • PhotoRec[128] - utilita pro extrakci a obnovení dat

  • sfdisk - ukláda a obnovuje tabulky oddílů

  • TestDisk[127] - často používaná utilita pro kontrolu a obnovení ztracených oddílů reiserfs, ntfs, fat32, ext3, ext4…​

Samozřejmou součástí těchto distribucí jsou i systémové příkazy.

Bylo by ostudné nezmínit se i o LiveCD[25] distribuci DEBIAN. Ač nejde o záchranné CD obsahuje dostatek nástrojů, prostředí je známé a nabootování z CD či USB dovolí systém zběžně prozkoumat i s myší a v grafickém rozhraní. Možno stačí přepsat detail v naposled editovaném souboru nebo v nastavení a počítač opět poběží.

15. Softwarové balíky

15.1. Repozitáře

15.1.1. DEBIAN repos

2019-08-14

TODO Odsud až do konce je text v mnoha místech pouze rozpracován. Něco málo se opakuje protože některé předcházející kapitoly jsem už upravil ale na opravu následujících zatím nezbyl čas.

FIXME Inline příkazy jsou psané v apostrofech - asi největší nedostatek. Pište je bez apostrofů.

V souboru "/etc/apt/sources.list" lze editovat repozitáře DEBIAN distribuce. Nezáleží na verzi distribuce. Repozitáře jsou místa, na kterých má operační systém hledat programy a jejich zdrojové kódy. Soubor s repozitáři byl generován instalací[REF] DEBIAN. Data tohoto souboru čte i SYNAPTIC[REF] vyvoláním funkce "Obnovit informace o balících".

INFO: Výchozími repozitáři v distribuci DEBIAN 10 "BUSTER" jsou buster repozitáře.
/etc/apt/sources.list - Genuine "STRETCH" repozitáře
# deb cdrom:[Debian GNU/Linux 9.8.0 _Stretch_ - Official i386 NETINST 20190216-12:51]/ stretch main
#deb cdrom:[Debian GNU/Linux 9.8.0 _Stretch_ - Official i386 NETINST 20190216-12:51]/ stretch main

deb http://ftp.cz.debian.org/debian/ stretch main non-free contrib
deb-src http://ftp.cz.debian.org/debian/ stretch main non-free contrib

deb http://security.debian.org/debian-security stretch/updates main contrib non-free
deb-src http://security.debian.org/debian-security stretch/updates main contrib non-free

# stretch-updates, previously known as 'volatile'
deb http://ftp.cz.debian.org/debian/ stretch-updates main contrib non-free
deb-src http://ftp.cz.debian.org/debian/ stretch-updates main contrib non-free

# stretch-backports, previously on backports.debian.org
deb http://ftp.cz.debian.org/debian/ stretch-backports main contrib non-free
deb-src http://ftp.cz.debian.org/debian/ stretch-backports main contrib non-free
  1. Řádek uvozen znakem "#" je komentářem.

  2. Řádky "deb" jsou repozitáře s klasickými programy DEBIAN. Programové balíčky v tomto repozitáři jsou v binární podobě. Jsou vývojáři pre-kompilované a připravené k okamžité instalaci uživatelem.

  3. Řádky "deb-src" byly vytvořeny instalačním procesem zatržením volby "Používat v APT repositáře se zdroji"[REF]. Pro bezproblémový chod celého systému nejsou povinné a lze je zakomentovat nebo úplně vymazat.

    Nastavení "deb-src" je vhodné ke stažení zdrojových kódů příkazem 'apt-get source název_balíku'. Obyčejný uživatel tuto výsadu využije zajímá-li ho zdrojový kód toho-kterého programu. Může si kód dle potřeb a na míru upravit a následně ho zkompilovat.

TIP: DEBIAN balíky mají svobodnou licenci GNU/GPL.

15.1.2. Repozitář v detailu

2019-08-15

Popis nastavení repozitářů zdrojových kódů "deb-src" je analogií binárních repozitářů "deb". Proto je v dalším vynechám.

/etc/apt/sources.list - Řádek repositáře "STRETCH" distribuce
deb   http://ftp.cz.debian.org/debian/             stretch             main non-free contrib
  • programové balíčky "deb" budou systémem vyhledány na adrese "http://ftp.cz.debian.org/debian/"

  • "stretch" jsou balíky DEBIAN 9 "STRETCH" distribuce

    V distribuci DEBIAN 10 "BUSTER" je název repositáře "buster" a tak dále.

  • další nastavení v řádku jsou podmíněná licenční politikou

    1. "main" - hlavní větev repozitáře se svobodnými GNU/GPL balíky

      Je v ní převážná většina programů DEBIAN. Větev "main" nemažte jinak budete moci instalovat pouze balíky z "non-free" a "contrib".

    2. "non-free" - repozitář s nesvobodnými proprietárními balíky a s FIRMWARE ovladači

      Tuto proprietární větev repositáře je potřeba aktivovat v situaci kdy jsou systémem pro správnou funkčnost hardwaru vyžadovány FIRMWARE[REF] ovladače.

    3. "contrib" - svobodné balíky ale k plné funkčnosti vyžadují i nesvobodný proprietární SW

      Volitelně lze větve "non-free" a/nebo "contrib" vymazat. Poté v nich obsažené balíky nebudou dostupné. Proprietární ovladače (FIRMWARE) od výrobců hardware jsou právě v "non-free" databázi. FIRMWARE pro klávesnici není až tak potřebný a LINUX si poradí. Jen nebudou fungovat speciální klávesy a jiné vymoženosti, které se výrobce rozhodl na klávesnici přidat. Nedržel se POSIX[REF] standardů i když bez těchto inovací by vývoj ustrnul. Ale FIRMWARE třeba ke zvukovce už pro tvorbu hudby důležitý je. Ve větvi "contrib" mnoho programů není a audiosoftware snad žádný.

Bezpečnostní aktualizace jsou v řádku "deb http://security.debian.org/debian-security stretch/updates main contrib non-free". S připojením k síti doporučuji zachovat aktualizaci všech větví repozitáře "main", "non-free" i "contrib". Je-li povolena i instalace balíků z "non-free" a "contrib" - potom určitě. Jinak postačují bezpečnostní aktualizace z "main".

/etc/apt/sources.list - Bezpečnostní aktualizace
deb   http://security.debian.org/debian-security   stretch/updates     main contrib non-free

Systémové updaty, updaty programů, aplikací, příkazů, nástrojů a utilit vyhledá systém na "stretch-updates".

/etc/apt/sources.list - "STRETCH" updates
deb   http://ftp.cz.debian.org/debian/             stretch-updates     main contrib non-free

Možné instalace i zpětně přeneseného software "stretch-backports" byly aktivovány v instalaci distribuce[REF]. Kdo neaktivoval toto nastavení v instalační proceduře může ho aktivovat nyní editací souboru "sources.list".

/etc/apt/sources.list - Backports
deb   http://ftp.cz.debian.org/debian/             stretch-backports   main contrib non-free

Bez připojení k internetu lze všechny zápisy ignorovat. Aktivní by mohl zůstat pouze přístup k CD/DVD mechanice nebo USB disku ale není to podmínkou. V SYNAPTIC[REF] lze aktivovat cesty k médiu pohodlně z menu. Aplikace požádá pouze o vložení CD/DVD. Stejné je to i s jinými repozitáři.

Poctivě zavedený, odladěný audiosystém s pečlivě sestaveným softwarovým vybavením může zůstat odříznutý od světa. Aktualizovat[REF] se dá kdykoliv připojením k síti[REF] a úpravou souboru "/etc/apt/sources.list"[REF].

15.1.3. "sources.list" - Editace

2019-08-15

Není potřebné editovat "/etc/apt/sources.list" kvůli obvyklé uživatelské aktualizaci[REF] systému nebo balíkového vybavení. Editace je opodstatněná pouze v případě upgrade celé distribuce na verzi vyšší nebo kvůli přidání dalších užitečných repozitářů[REF].

? Před upgradem stávající verze distribuce na verzi vyšší je doporučené provést upgrade[REF] systému a všech programových balíčků současné instalované verze distribuce.

Nastavení "deb cdrom" je u síťové instalace (NetInstall CD/DVD/USB) implicitně zakomentováno. Instalací distribuce z média bez možnosti internetového připojení odpadá možnost aktualizací a chybí i nastavení "non-free" a "contrib". Na DEBIAN serveru je ke stažení i speciální ISO obraz s nesvobodnými proprietárními balíky.

Na původním souboru "sources.list" se nemusí kvůli upgrade celé distribuce mnoho měnit. Okopírujte všechen text a kopii vložte na konec souboru. V okopírovaném textu přepište všechny výskyty "stretch" za "buster". Staré "stretch" zdroje zakomentujte.

INFO: V linuxových konfiguračních souborech nebo v souborech se zdrojovým kódem bývá zakomentovaný řádek (komentář) předcházen párem znaků "//" (dvě lomítka). Můžou být i jiné "#" (hash), "'" (apostrof), """ (uvozovky) a další. Komentář není systémem načten ani zpracován.

Po uložení změn v souboru bude DEBIAN hledat softwarové balíky v nastavených cestách.

!! Před uložením změn v "sources.list" proveďte upgrade[REF] systému ať se nepozorností nenahrají databáze nové aniž by byl současný instalovaný systém aktualizován.
/etc/apt/sources.list - Přidané "BUSTER" repozitáře
               # původní, zakomentovaný DEBIAN 9 "Stretch"

# deb cdrom:[Debian GNU/Linux 9.8.0 _Stretch_ - Official i386 NETINST 20190216-12:51]/ stretch main
#deb cdrom:[Debian GNU/Linux 9.8.0 _Stretch_ - Official i386 NETINST 20190216-12:51]/ stretch main

#deb http://ftp.cz.debian.org/debian/ stretch main non-free contrib
#deb-src http://ftp.cz.debian.org/debian/ stretch main non-free contrib

#deb http://security.debian.org/debian-security stretch/updates main contrib non-free
#deb-src http://security.debian.org/debian-security stretch/updates main contrib non-free

# stretch-updates, previously known as 'volatile'
#deb http://ftp.cz.debian.org/debian/ stretch-updates main contrib non-free
#deb-src http://ftp.cz.debian.org/debian/ stretch-updates main contrib non-free

# stretch-backports, previously on backports.debian.org
#deb http://ftp.cz.debian.org/debian/ stretch-backports main contrib non-free
#deb-src http://ftp.cz.debian.org/debian/ stretch-backports main contrib non-free

               # nové repozitáře DEBIAN 10 "Buster"

# deb cdrom:[Debian GNU/Linux 9.8.0 _Stretch_ - Official i386 NETINST 20190216-12:51]/ stretch main
#deb cdrom:[Debian GNU/Linux 9.8.0 _Stretch_ - Official i386 NETINST 20190216-12:51]/ stretch main

deb http://ftp.cz.debian.org/debian/ buster main non-free contrib
deb-src http://ftp.cz.debian.org/debian/ buster main non-free contrib

deb http://security.debian.org/debian-security buster/updates main contrib non-free
deb-src http://security.debian.org/debian-security buster/updates main contrib non-free

# stretch-updates, previously known as 'volatile'
deb http://ftp.cz.debian.org/debian/ buster-updates main contrib non-free
deb-src http://ftp.cz.debian.org/debian/ buster-updates main contrib non-free

# stretch-backports, previously on backports.debian.org
deb http://ftp.cz.debian.org/debian/ buster-backports main contrib non-free
deb-src http://ftp.cz.debian.org/debian/ buster-backports main contrib non-free

Po editaci a uložení změn v souboru je zapotřebí aktualizovat původní starou databázi balíků:

  • z příkazového řádku příkazem 'apt-get update'

  • nebo funkcí "Obnovit informace o balících" vyvolané z nabídky v okně aplikace SYNAPTIC[REF].

DEBIAN vývojáři aktivně vyvíjejí alespoň tři verze[137]:

  • stabilní (stable) verze je nejnovější oficiálně vydanou distribucí DEBIAN. Dnes(08.2019) je jí BUSTER.

  • v testovací (testing) verzi jsou obsaženy i balíčky, které zatím nebyly zařazeny do stabilní verze. Výhodou je, že je v ní obsažen novější software. Nyní je testovací verzí BULLSEYE. V "sources.list" stačí přepsat "buster" za "bullseye". Je snadné repozitáře přepsat ale nezapomínejte že novější software nemusí být stabilnější i když opravdu neozkoušený software je zařazen do nestabilní verze.

  • nestabilní (unstable) verze DEBIAN je ta, ve které dochází k aktivnímu vývoji. Tuto distribuci provozují v zásadě vývojáři a - jak píší na DEBIAN serveru - "dobrodruzi, kteří rádi žijí na samé hranici jak nejčerstvějšího software tak také nejnovějších a neočekávaných problémů". Nestabilní verze je známa pod kódovým označením SID.

Dovybavit distribuci DEBIAN programy a zároveň se držet doporučené oficiální cesty lze:

  1. ponecháním (odkomentováním) starých repozitářů v "sources.list", v tomto případě "stretch" repozitářů.

    S tímto nastavením je možná i instalace balíků starších verzí DEBIAN. Stane se, že vydáním nové verze distribuce je některý ze starších programů odstraněn ale uživatel je zvyklý v něm pracovat.

  2. přidáním repozitářů testing[REF] verze

    Ve verzi testovací je nejnovější a zároveň už poměrně stabilní software. Testovací verze je po víceletém testování a odladění chyb vydána jako oficiální stable distribuce. Před pár lety byla testovanou BUSTER distribuce. Přepište v "sources.list" všechny výskyty "buster" za "bullseye" a po upgrade systému budete mít instalovanou testing distribuci DEBIAN. Vrátit se zpět (provést downgrade) je složitější.

    Je lepší zahrnout do stable verze i backports balíčky. Není jich moc ale aspoň něco. Získáním zkušeností ve stable verzi lze později přejít na testing.

    Repozitáře SID verze unstable jsou doporučeny pouze zkušeným.

Nemyslím si, že právě DEBIAN je potřeba dovybavit dalšími programovými balíčky. V repozitářích je tolik balíčků, že jsem zatím necítil nutnost rozširovat je o další. Jiné linuxové distribuce založené na DEBIAN používají také repozitáře DEBIAN pro jejich bohaté programové vybavení. Jediným lákadlem je asi jen testing verze, která je o krok napřed. DEBIAN stable je znám svým pragmatickým konzervativním myšlením a balíky v něm jsou někdy nějaký pátek za vývojem oproti jiným linuxovým distribucím a jiným operačním systémům. Na druhou stranu jeho stabilita je s ohledy na široké portfolio aplikací výborná a asi nejlepší. I když nedokonalá a s odpustitelnými chybami. Chce-li si někdo vyzkoušet DEBIAN ve verzi testing může téže vyzkoušet multimediální distribuce[REF] AVLINUX a/nebo KXSTUDIO.

15.1.4. Repozitáře třetích stran

2019-08-15

Do "/etc/apt/sources.list"[REF] se zadávají i cesty k externím repozitářům[REF] třetích stran. Na jejich stránkách bývá vysvětlení jakým způsobem jejich repozitář do souboru zapsat.

V instalaci DEBIAN je však dostatečné množství aplikací pro práci se zvukem, s MIDI/AUDIO soubory, nástroji pro editaci, nastavení audia atd. Distribuce je vybavena softwarem nadprůměrně a obsahuje téměř 60000 softwarových balíčků. Nejvíc ze všech distribucí. Samozřejmě, že ne všechny balíčky jsou zaměřeny na audio či multimédia.

Do souboru lze zadávat další repozitáře[REF] z rodiny balíků založených na distribuci DEBIAN. Podmínkou je balíčkovací formát .deb.

Jak už bylo psáno, vývojáři nevidí rádi jsou-li do DEBIAN distribuce vpraveny neoficiální repozitáře. Tento přístup může narušit integritu oficiální distribuce. I kvalitní software ale z neoficiálních repozitářů nemusí být zcela DEBIAN kompatibilní. Pro odladění jiného než oficiálně prověřeného softwaru je určena nestabilní (unstable) SID distribuce. Není však vyloučena ani možnost přidání neoficiálního repozitáře.

? Před zapsáním externího repozitáře do "sources.list" si ověřte důvěryhodnost poskytovatele softwarových balíků. Balíky třetích stran nejsou oficiálně začleněny do DEBIAN distribuce a nemusí mít nutně korektní DEBIAN kód, svobodnou licenci GNU/GPL nebo nemusí být tvořeny s dobrými úmysly.

Po zapsání nových repozitářů do "sources.list", uložení souboru a následnou aktualizací databáze příkazem 'apt-get update' lze do systému instalovat i software třetích stran.

15.2. Instalace programů

2020-01-15

V názvech LINUX aplikací jsou často na začátku písmena "k", "g", "q" ale není to pravidlo. Je mnoho programů, které to mají taky a do této kategorie nepatří. Pro vysvětlení:

  • "k" jsou programované pro prostředí KDE;

  • "g" jsou GTK[138] aplikace, GTK knihovny jsou v XFCE výchozí;

  • "q" jsou nenáročné aplikace s QT rozhraním.

GTK a QT knihovny nebývají náročné na prostředky.

INFO: Podobně je to i s názvy distribucí. KUBUNTU je s okenním správcem KDE, LUBUNTU používá minimalistický window manager LXDE/LXQT atd. Anglický název CONSOLE napovídá, že jde o klasické LINUX okno s přístupem k TERMINAL a KONSOLE je TERMINAL vyvýjený pro KDE.

Instalací typických KDE, GNOME programů se mnohdy instaluje i další návazný KDE, GNOME software. KDE a GNOME jsou vhodné pro klasickou uživatelskou práci s hezkým prostředím ale nejsou doporučeny pro multimediální tvorbu. V prostředí XFCE je pro spuštění těchto programů nezřídka potřeba i běh služeb nutných pro KDE nebo GNOME. S instalací některých GNOME programů navíc hrozí i nechtěná instalace GVFS (Gnome Virtual File System) jenž je výpočetně velmi náročný. Pro zajímavost: v distribuci KX STUDIO[REF] je kupodivu výchozím okenním správcem, pro tvorbu těžkopádné, KDE.

!! Manipulace s programy - instalace, odinstalace a aktualizace vyžaduje ROOT[REF] oprávnění.

Instalovat program do DEBIAN lze více způsoby.

  1. Uživatelsky nejpříjemnější je instalace balíčků z okna aplikace SYNAPTIC[REF]. Není-li povoleno automatické spuštění autentizační služby "PolicyKit Authentication Agent"[REF] lze systémové GUI aplikace jakou je i SYNAPTIC spustit pouze příkazem z CLI[REF].

    ! Nelze spustit paralelně dva nástroje pro instalaci balíků. Nelze spustit SYNAPTIC a zároveň instalovat z příkazové řádky. A naopak.
  2. Před instalací nového programu z command-line je vhodné provést aktualizaci databází s informacemi o programových balících.

    xfce4-terminal - Čištění a aktualizace programové databáze
    $ apt-get clean                                 // vyčístí staré info o balících
    $ apt-get update                                // aktualizuje databázi programů

    Programový balík nalezne příkaz 'apt-cache'. Příkaz bude hledat i v popisech balíků nejen v názvech balíků. Nemusíte psát uvozovky. Víceslovné názvy balíků jsou spojené pomlčkou "-".

    xfce4-terminal - Hledání balíku příkazem 'apt-cache'
    $ apt-cache search hledaný_řetězec              // bude hledat "hledaný_řetězecc"
    $ apt-cache search linux-image                  // bude hledat "linux-image"
    ...
    linux-image-686-pae - Linux for modern PCs (meta-package)
    linux-image-686-pae-dbg - Debugging symbols for Linux 686-pae configuration (meta-package)
    linux-image-amd64 - Linux for 64-bit PCs (meta-package)
    linux-image-amd64-dbg - Debugging symbols for Linux amd64 configuration (meta-package)
    linux-image-rt-686-pae - Linux for modern PCs (meta-package), PREEMPT_RT
    linux-image-rt-686-pae-dbg - Debugging symbols for Linux rt-686-pae configuration (meta-package)
    linux-image-rt-amd64 - Linux for 64-bit PCs (meta-package), PREEMPT_RT
    linux-image-rt-amd64-dbg - Debugging symbols for Linux rt-amd64 configuration (meta-package)
    linux-headers-4.19.0-0.bpo.6-686 - Header files for Linux 4.19.0-0.bpo.6-686
    linux-headers-4.19.0-0.bpo.6-686-pae - Header files for Linux 4.19.0-0.bpo.6-686-pae
    linux-headers-4.19.0-0.bpo.6-am...
    ...
    $ apt-cache showpkg název_balíku                // vypíše detailní info o balíčku
    $ apt-cache depends název-balíku                // vypíše závislosti balíčku na
                                                    // jiných programových balících

    Není-li znám přesný název balíků stačí hledat kratší řetězec např. 'apt-cache search image'. Příkaz vyhledá všechny výskyty řetězce "image" včetně "linux-image" ale výpis bude mnohem delší s více programy. Bude potřeba hledat i očima.

    TIP: V dlouhém výpisu v TERMINAL je pro pohyb po půlstránkách užitečná klávesová kombinace [SHIFT]+[PGUP] respektive [SHIFT]+[PGDN]. Použít lze i pipeline[REF] ve tvaru příkaz | less[REF]. Vytvořené okno s výstupem příkazu less se zavře klávesou [q].

    Download programového balíku z repozitáře a jeho instalace proběhne po zadání příkazu 'apt-get install jméno_balíku'. Systém umožňuje současně instalovat vícero balíků.

    xfce4-terminal - Instalace programů
    $ apt-get install jméno_programu                // nainstaluje jeden program
    $ apt-get install program1 program2 ...         // nainstaluje programů více

    Při instalacích nových programů je v instalační proceduře často vyžádán souhlas správce s nainstalováním dalších programových balíčků vyžadovaných instalovaným programem. Odsouhlaste tento krok bez obav. Vyřešení programových závislostí je nutné k zachování správné funkčnosti instalovaného programu.

    V průběhu instalace se může otevřít okno se správou o změnách nebo novinkách v jednotlivých programových balících.

    apt-listchanges - Změny v balících
    apt-listchanges: Novinky
    -
    webkit2gtk (2.20.0-2) unstable; urgency=medium
    
      webkit2gtk 2.20.0 contains a security feature named Gigacage that
      requires a virtual memory region of several gigabytes and is used for
      variable-length random-acce...
    ...
    :

    Okno se zavře stiskem klávesy [q] a systém bude pokračovat v instalaci.

    TIP: Rozšířit programové vybavení je možné i napsáním a zkompilováním vlastního programového kódu.
  3. Balíky .deb se konečně dají instalovat, i se splněním závislostí balíků, skrze grafické prostředí aplikace GDEBI. GDEBI je rovněž potřeba doinstalovat. Výhodou této GUI aplikace je, že lze instalovat i programy stažené z webu nebo uložené na médiu. Nevýhodou takto instalovaných programů je, že jsou doinstalovány neoficiálně, nemají podporu a DEBIAN systém nemůže tyto programy aktualizovat. To je už v zájmu uživatele.

    Balík stažený z webu musí mít DEBIAN balíčkovací systém. Na webových stránkách má vývojář často programy pre-kompilované pro více linuxových systémů. Instalovat do DEBIAN lze balíky .deb.

    ? Za upozornění stojí, že balíky stažené neoficiální cestou z webu nemusí být korektní v kódu nebo úmyslech. Než do své distribuce nainstalujete stažený balík prověřte si důveryhodnost vývojáře a podívejte se po fórech zda nejsou s balíkem problémy a zda je opravdu všechno jak má být.
    INFO: Dobrou ochranou před nekalostmi je otevřený zdrojový kód OPENSOURCE. Jeho spřístupněním si jiní vývojáři mohou ověřit kvalitu kódu. Zda je vše v pořádku a umíte-li číst ve zdrojových kódech - stáhněte si kód a podívejte se jak je aplikace programována. V instalaci DEBIAN k tomuto účelu slouží zatržení instalační volby "Používat v APT repositáře se zdroji"[REF].

    Stáhnout lze i jiné formáty a poté je konvertovat. Konverze .rpm (REDHAT) balíčku do .deb formátu se spustí příkazem 'alien' s přepínačem ' --to-deb'. Utilita alien není nainstalována a je potřeba ji doinstalovat 'apt-get install alien'.

    Konverze .rpm balíčku do .deb formátu:

    xfce4-terminal - Konverze *.rpm na *.deb
    $ alien --to-deb /path/file.rpm

    Konvertovaný soubor bude uložen v aktivním pracovním adresáři[REF], tedy v adresáři, na kterém TERMINAL pracuje.

    ? Je-li příkaz nainstalován a nejde spustit bude chyba nejspíš v nesprávně zadané velikosti písmen příkazu, uživatel nepoužil v názvech nebo příkazech s mezerami uvozovky. Příkaz je interpretován nesprávně. Spustí-li uživatel systémový příkaz bez ROOT oprávnění a příkaz je instalován vypíše TERMINAL hlášku bash: command not found.
  4. Jsou i jiné cesty pro stažení a instalaci dalšího software např. git stahování…​ O tom se rozepisovat nebudu. Ale pár řádků dál bude použita i tato technika. Nemyslím, že by pozorný čtenář nedokázal už teď porozumět postupům, operacím a příkazům aniž bych se o nich rozepisoval.

  5. Manuální instalace, která vyžaduje kompilaci zdrojového kódu. Tato instalace si zaslouží samostatnou kapitolu. Možná někdy.

  6. Další možností je instalace softwarových balíků skrze webové rozhraní FLATPAK[139]. V jeho repozitářích jsou i audio/video aplikace pro zpracování základního zvuku či videa. Přehrávače etc…​ Avšak FLATPAK je zaměřen na instalaci mainstreamových aplikací. Specializované utility zatím nenabízí. Většina z nabízených instalací je i v repozitářích DEBIAN.

15.3. Odinstalace

2019-08-19

  • Stejně jak instalace tak i odinstalace programu je v aplikaci SYNAPTIC[REF] přehlednější a uživatelsky přívětivější. Není-li povoleno automatické spuštění autentizační služby "PolicyKit Authentication Agent"[REF] lze systémové GUI aplikace jakou je i SYNAPTIC spustit pouze příkazem z CLI[REF].

  • Odinstalací programu z command-line je jednoduchá. Do příkazové řádky napište příkaz pro odinstalaci.

    xfce4-terminal - Odinstalace balíku
    $ apt-get remove jméno_programu                // odinstaluje program
    $ apt-get purge jméno_programu                 // odinstaluje program

    Vnitřní funkce příkazu 'apt-get' remove odinstaluje balíček. Funkce purge balíček odinstaluje a zároveň odstraní i jeho konfigurační soubory. Tato funkce se používá v případě, že odinstalovaný balík už nebude instalován nebo si uživatel opětovnou instalací program znovu nastaví.

    Systém umožňuje současně odinstalovat vícero balíků.

    xfce4-terminal - Odinstalace více balíků najednou
    $ apt-get remove program1 program2 ...
    $ apt-get purge program1 program2 ...

15.4. Upgrade softwaru

2019-11-14

!! Aktualizacemi systému se sice aplikace a různé programy rozšíří o nové funkce a možnosti ale možnosti a funkce hardwaru zůstávají i po aktualizacích v původním stavu. Časem se stane, že hardware už nezpracovává data tak svižně a je potřeba ho přinejmenším upgradovat. Myslím, že lepší hudbu nevytváří "nadupaný" počítač. Je to spíš o maximálním využití všech dostupných programových funkcí a využití dostupných prostředků.

Upgrade softwarových balíčků je principiálně jednoduchá činnost. Aktualizaci je možné provést buď ve správci balíků SYNAPTIC[REF] nebo zadáním pár příkazů do příkazové řádky.

! Nelze spustit paralelně dva nástroje pro instalaci balíků. Nelze spustit SYNAPTIC a zároveň instalovat z příkazové řádky. A naopak.

Následující sekvence příkazů vyčistí nepotřebné a provede upgrade softwarových balíků.

xfce4-terminal - Update softwarových balíků
$ apt-get autoclean                             1
Načítají se seznamy balíků... Hotovo
Vytváří se strom závislostí
Načítají se stavové informace... Hotovo
$ apt-get update                                2
Stahuje se:1 http://ftp.cz.debian.org...
Stahuje se:2 http://security.debian.org...
...
Staženo 23,0 MB za 24s (952 kB/s)
Načítají se seznamy balíků... Hotovo
$ apt-get upgrade                               3
...
1 Systém odstraní info o nepotřebných balících.
2 Aktualizuje databázi balíků.
3 Provede instalaci novějších verzí softwaru.

V průběhu instalace se může otevřít okno se správou o změnách nebo novinkách v jednotlivých programových balících.

apt-listchanges - Změny v balících
apt-listchanges: Novinky
-
webkit2gtk (2.20.0-2) unstable; urgency=medium
  webkit2gtk 2.20.0 contains a security feature named Gigacage that
  requires a virtual memory region of several gigabytes and is used for
  variable-length random-acce...
...
:

Okno se zavře stiskem klávesy [q] a systém bude pokračovat v instalaci.

Po úspěšném upgrade softwaru se ještě příkazem

xfce4-terminal - Odstranění osiřelých balíků
$ apt-get autoremove

odstraní již nepotřebný software (orphans) nebo-li osiřelé programové balíky.

Některý z jednořádkových příkazů

xfce4-terminal - Jednořádkový update softwaru
$ apt-get autoclean && apt-get update && apt-get upgrade && apt-get autoremove   // 1.
$ apt autoclean && apt update && apt upgrade && apt autoremove                   // 2.

provede stejnou operaci. Vytvořením alias[REF] lze příkaz zkrátit.

TIP: Znak "&" (ampersand) je logickým operátorem. Sekvence "&&" logicky spojuje dva příkazy a neuspěje-li předchozí příkaz nespustí se ani další příkaz. Logické operátory, pipeline, redirection[REF] jsou pojítkem příkazů v příkazové řádce. Jsou hojně využívány ve skriptech, do kterých se zapíší komplikované a často používané příkazy jednou a posléze se spouští opakovaně kombinací kláves, aliasem[REF], jiným příkazem nebo vytvořenou ikonou[REF].

V DEBIAN lze místo 'apt-get' použít i novější příkaz 'apt' s totožnými funkcemi.

xfce4-terminal - Použití novějšího příkazu 'apt'
$ apt autoclean                                // odstraní info o nepotřebných balících
$ apt update                                   // aktualizuje databázi balíků
$ apt upgrade                                  // nainstaluje novější verze softwaru
$ apt autoremove                               // odstraní už nepotřebný sofware (orphans)

15.5. Upgrade distribuce

2019-08-14

V kterékoliv mně známé edici DEBIAN byl zatím postup upgradu distribuce stejný. Před upgradem je dobré provést zálohu. Alespoň těch důležitých uživatelských souborů. Není pravděbodobné že by se upgradem poškodila celá distribuce nebo dokonce harddisk či počítač ale čert nikdy nespí a podcenění situace nepřinese klid na duši.

  • Pro minimální zálohování postačí zkopírovat soubory do jiného umístění, nejlépe na externí harddisk. Kopírovat lze v příkazové řádce[REF] nebo souborovým manažerem[REF].

  • Pro zálohy ucelených digitálních kopií oddílů (partitions) harddisku je výtečným nástrojem GPARTED[REF].

V distribuci se můžou vyskytnout programové balíčky, které jsou zamčené a u nich nelze provádět instalaci, odinstalaci nebo aktualizaci. Instalace DEBIAN je nevytváří ale mohl si je vytvořit uživatel. Takové balíky by mohli působit problémy. Jejich seznam se vyvolá příkazem 'apt-mark showhold'. Odemčením balíků 'apt-mark unhold ...' se upgradem aktualizují taky. Aby se příkazem nemusel odemykat každý balík zvlášť lze použít i zástupní znak[REF], který zastoupí všechny balíky zapsáním jednoho znaku "*" hvězdičky.

xfce4-terminal - Uvolnění zamčených balíků
$ apt-mark showhold                            // vypíše zamčené balíky
package1 package2 ...                          // package = balík anglicky
$ apt-mark unhold package1 package2 ...        // zápis 1
$ apt-mark unhold *                            // zápis 2

Před upgrade nižší verze DEBIAN na vyšší je potřeba ošetřit stávající verzi. Instalovaná distribuce se aktualizuje včetně balíků na poslední verzi této instalované distribuce.

xfce4-terminal - Chronologie příkazů pro upgrade distribuce
$ apt-get update                     // 1. obnoví databázi
$ apt-get upgrade                    // 2. aktualizuje software
$ apt-get dist-upgrade               // 3. upgrade distribuce
$ apt-get autoremove                 // 4. odstraní osiřelé balíky
$ apt-get autoclean                  // 5. automaticky uklidí databázi

Příkaz 'apt-get autoremove' odstraní už nepotřebné programy a 'apt-get autoclean' vyčistí databázi s informacemi o balících.

Systém lze upgradovat na verzi vyšší teprve po editaci souboru "/etc/apt/sources.list"[REF].

INFO: Soubor "sources.list" není pro BOOT systému životně důležitý a systém bez problému nastartuje i bez něj. Ale při úpravě kteréhokoliv ze systémových souborů buďte opatrni na překlepy. Nebude-li po úpravě počítač startovat - nevadí. Stačí vědět, který soubor byl naposled upravován a kde je soubor s původním nastavením. V RECOVERY MODE[REF] ho lze ze zálohy obnovit. Poznámky také pomohou.

Po aktualizaci[REF] stávající verze distribuce lze provést upgrade na verzi vyšší. Zápis příkazu pro upgrade distribuce se u příkazů 'apt-get' a 'apt' mírně liší:

  • příkaz apt-get má pro upgrade zápis ve tvaru 'apt-get dist-upgrade'

  • novější apt provede upgrade distribuce po zadání 'apt full-upgrade'.

Nezáleží na tom, který ze zápisů bude použit. Příkaz 'apt' vykreslí navíc průběhovou lištu stahování a instalace. Zůstanu u 'apt-get'.

TIP: Příkaz 'apt-get dist-upgrade && aplay /path/sound.wav' provede upgrade distribuce a po zdárném ukončení upgrade přehraje zvuk "/path/sound.wav". Zůstaňte však radši poblíž aby upgrade nezůstal viset na nějaké instalační otázce.
xfce4-terminal - Upgrade distribuce
$ apt-get dist-upgrade
Načítají se seznamy balíků... Hotovo
Vytváří se strom závislostí
Načítají se stavové informace... Hotovo
Propočítává se aktualizace... Hotovo
Následující balíky byly nainstalovány
     automaticky a již nejsou potřeba:
  cpp-6 dh-python ... xml-core
Pro jejich odstranění použijte „apt autoremove“.
                                               // po upgradu distribuce se manuálním
                                               // spuštěním příkazu 'apt-get autoremove'
                                               // vyčistí nepotřebné balíky
Následující balíky budou ODSTRANĚNY:           // info o odinstalaci nepotřebného SW
  evince-gtk ... libthunarx-2-0
Následující NOVÉ balíky budou nainstalovány:   // info o instalaci nového softwaru
  ant-contrib apparmor ... zenity-common       // seznam se SW je dlouhý
Následující balíky budou aktualizovány:        // info o aktualizaci balíků
  acl adduser ... xxd xz-utils zlib1g          // seznam je rovněž dlouhý
1062 aktualizováno, 357 nově instalováno,
        7 k odstranění a 0 neaktualizováno.
Nutno stáhnout 893 MB archivů.
Po této operaci bude na
          disku použito dalších 1 053 MB.
Chcete pokračovat? [Y/n]                       // [ENTER]
                                                  // stiskem klávesy [n] a poté [ENTER] se
                                                  // operace 'dist-upgrade' přeruší
                                               // po odsouhlasení se spustí upgrade
                                               // celý proces může běžet i přes 30 minut
Stahuje se:1 http://ftp.cz.debian.org...
...
Staženo 893 MB za 1min 50s (8 072 kB/s)
Načítám soubory se změnami... 38%
...

V průběhu instalace se může otevřít okno se správou o změnách nebo novinkách v jednotlivých programových balících.

apt-listchanges - Změny v balících
apt-listchanges: Novinky
-
webkit2gtk (2.20.0-2) unstable; urgency=medium
  webkit2gtk 2.20.0 contains a security feature named Gigacage that
  requires a virtual memory region of several gigabytes and is used for
  variable-length random-acce...
...
:

Okno se zavře stiskem klávesy [q] a systém bude pokračovat v instalaci.

...
Načítám soubory se změnami... Hotovo
Extrahují se šablony z balíků: 100%
Přednastavují se balíky...
setting xserver-xorg-legacy/xwrapper/allowed_users from configuration file
(Načítá se databáze ... nyní je nainstalováno 94959 souborů a adresářů.)
Připravuje se nahrazení .../base-files_10.3_i386.deb ...
Rozbaluje se base-files (10.3) přes (9.9+deb9u9) ...
Nastavuje se balík base-files (10.3) ...
Instaluje se nová verze konfiguračního souboru /etc/debian_version ...
Instaluje se nová verze konfiguračního souboru /etc/issue ...
Instaluje se nová verze konfiguračního souboru /etc/issue.net ...
(Načítá se databáze ... nyní je nainstalováno 94960 souborů a adresářů.)
Připravuje se nahrazení .../libc-l10n_2.28-10_all.deb ...
...

Instalační proces může požadovat rozhodnutí uživatele o některých instalačních nastaveních. Např. zda restartovat služby související s nově instalovanými balíky automaticky a bez dalších otázek.

Restart služeb
Restart services during package upgrades without asking?

[Yes]                                               [No]

Odsouhlasením tichého režimu volbou "Yes" se v procesu upgrade nezobrazí další otázky na restart konkrétních služeb a vše proběhne automaticky. Pro pohyb mezi volbami slouží klávesa [TAB].

INFO: Jakoukoliv generovanou zprávu si stačí přečíst a vybrat některou z možností. Čemu nerozumím to ponechávám ve výchozím DEFAULT nastavení a v práci pokračuji odsouhlasením nabídnuté volby.
...
Setting up libeot0:i386 (0.01-5) ...
Setting up libboost-date-time1.67.0:i386 (1.67.0-13) ...
...
Installing for i386-pc platform.
Installation finished. No error reported.
Generating grub configuration file ...
...
...
Processing triggers for libgdk-pixb ...
Processing triggers for systemd (241-5) ...    // upgrade je ukončen
$ _                                            // vytvořením nové příkazové řádky

Po upgrade distribuce je správné ještě systém vyčistit od již nepotřebných nebo osiřelých programů (orphans).

xfce4-terminal - Vyčištění systému
$ apt-get autoremove                           // automaticky odstraní orphans
$ apt-get autoclean                            // odstraní zastaralé info
$ lsb_release -a                               // zobrazí info o verzi DEBIAN

Pro plnou funkčnost instalované edice je posledním krokem softwarový anebo hardwarový RESTART[REF] systému. Každý z následujících zápisů lze použít pro vypnutí a znovuzavedení systému.

xfce4-terminal - Příklad možností pro restart nebo vypnutí
$ reboot                                       // restartuje
$ poweroff                                     // vypne
$ /sbin/reboot                                 // restartuje, příkaz je uveden s cestou
$ /sbin/poweroff                               // vypne, příkaz je uveden s cestou
$ systemctl reboot                             // restartuje
$ systemctl poweroff                           // vypne
$ init 6                                       // restartuje
$ init 0                                       // vypne
$ /sbin/halt                                   // systém pouze zastaví, poté se musí
                                               // počítač vypnout čudlíkem na skříni
                                               // PC, příkaz je uveden i s cestou
$ /sbin/start                                  // softwarově spustí vypnutý počítač

Nebo jenom restartujte či vypněte počítač ikonou z MENU v panelu na ploše. Některý z těchto příkazů používá k vypnutí počítače i Window Manager (okenní správce) XFCE. Krom toho se používá i příkaz 'shutdown'. Podívejte se do manuálu nástroje systemctl - 'man systemctl' kde je popsáno více možností a do 'man shutdown'.

? Computer se specifickým hardware je lepší vypnout[REF] a poté zapnout.

Speciální příkaz '/sbin/start' pro softwarový BOOT počítače funguje pouze když je computer vypnutý. Je funkční nejen v LINUX ale i v MACOS, WINDOWS, BSD, SOLARIS a mnoha dalších operačních systémech. Příkaz zapište bílým fixem na monitor a ihned poté entrujte tlačítkem [POWER] na skříni od počítače. Příkaz ve tvaru '/sbin/start' lze zapsat i na lednici a dá se jim spustit třeba vysavač. Mně to doma funguje. Ostatní příkazy z předchozího příkladu lze spustit pouze z příkazové řádky již spuštěného počítače.

Tvrdý systémový upgrade lze provést i reinstalací[REF] celé distribuce se vším všudy. To znamená i s novým nastavováním systému a opětovnou instalací aplikací. Byl-li v instalaci záměrně vytvořen jiný oddíl[REF] pro ukládání uživatelských dat je situace jednodušší a uživatelská nastavení aplikací se zachovají. Stačí tento oddíl v instalaci nastavit, aktivovat a připojit do "/home".

! Bez zálohy se v žádném případě nesmí původní oddíl s uživatelskými daty připojený do "/home" formátovat. Bez zálohy přijde nezkušený o všechny data.

Tímto způsobem lze přeinstalovat nejen DEBIAN ale lze místo něj instalovat jiný linuxový systém[REF]. Nastavením původního uživatelského jména se po reinstalaci a restartu nahraje původní uživatelské prostředí s původním nastavením i v jiném LINUX. Chytře rozděleným harddiskem[REF] může být v počítači paralelně instalovaných více linuxových distribucí sdílejících uživatelem vytvořené soubory, to samé uživatelské prostředí, desktop i stejné uživatelské nastavení. Není to potřebné ani mimořádně praktické, není to profesionální ani zcela košér ale možné to je.

16. Digitální očista

16.1. Odinstalace nepotřebného

2019-11-24

V dalším kroku nastavování, nestalo-li se tak předtím je nutno odinstalovat[REF]:

  • PULSEAUDIO

    Není nutností PULSEAUDIO odinstalovat. Ale k čemu by měl být instalován jakýkoliv programový balíček nejsou-li jeho funkce z podstaty potřebné a nejsou potřebné ani jeho konfigurační soubory? Zůstane-li v systému je vždy větší pravděpodobnost, že se někde něco ve své složitosti pokazí. A zároveň, lehčí a čistý systém je vždy hbitější a/nebo lepší na údržbu a snáze se v něm hledají chyby.

    INFO: Někdo může preferovat jiné řešení a svoji instalaci vylepší napsáním koumáckého skriptu[REF].

    Téže s odinstalovaným PULSEAUDIO se může uživatel dopustit nechtěné chyby. Ale zapsáním nesprávné informace do konfiguračního souboru systém buď vypíše chybu a je okamžitě patrné, že je něco špatně anebo někde něco nehraje. S mnoha nepotřebnými aplikacemi se z jakýchkoliv důvodů může spustit jiný zástupný program aby systém chybu ošetřil po svém ale uživatel se o ní nemusí dozvědět okamžitě. Potom může být hledání problému obtížnější.

    PULSEAUDIO a/nebo jakoukoliv jinou aplikaci lze časem samozřejmě i doinstalovat. Ač tak nebo jinak - pro zamýšlený účel je nepotřebný.

    Jednotlivý audioSW lze připojit pouze k jednomu sound serveru a tento server je pro něj jak audio, a podporuje-li aplikace MIDI, tak i MIDI propojením s okolním světem. Skrze tento audioserver ho lze propojit i s jinými audioservery.

INFO: Kteroukoliv z aplikací lze nahradit její lehčí nebo sofistikovanější alternativou[REF].
  • PAROLE[140]

  • QUODLIBET[141].

    QUODLIBET i PAROLE jsou audio přehrávače ale jsou založeny na frameworku (aplikační rámec) GSTREAMER[142], který se defaultně v instalaci připojuje k PULSEAUDIO.

    Lze zprovoznit i propojení GSTREAMERJACK. Audio aplikace pro tvorbu hudby jsou vesměs v nastaveních ošetřeny a podporují i uživatelskou volbu serveru. Je však do začátku příjemné když se audio software po spuštění automaticky připojí k JACK a neznalý nemusí v někdy složitých nastaveních hledat správnou kombinaci nastavení.

  • PAVUCONTROL (PulseAudio Volume Control) určený k nastavení hlasitosti (mixéru) zvukového serveru PULSEAUDIO.

Do skupiny nepotřebného softwaru řadím i:

  • VLC - video přehrávač;

  • libreoffice-base, libreoffice-core, libreoffice-common, libreoffice (metapackage);

  • java-common;

  • FIREFOX (FIREFOX-ESR).

16.2. Systémové skripty

16.2.1. Úroveň běhu

2019-11-27

Ač je následující text informačně bohatší, projděte si ho pro získání alespoň abstraktní představy co za pojmem systémových skriptů stojí a co se vlastně bude nastavovat nebo spíš zakazovat při spuštění systému. Ke konci kapitoly bude všechno pochopitelnější a nastavení jednoduchou činností.

Po spuštění počítače se vykonají rutinné sekvence, které posléze umožní uživateli plně používat počítač k práci:

  1. inicializuje se BIOS[REF];

  2. nahraje se bootloader s nabídkou výběru operačního systému, někdy pojmenovaný "Initial Program Loader" (IPL). V DEBIAN to je defaultně GRUB[REF];

  3. výběrem DEBIAN se spustí LINUX KERNEL (linuxové jádro) a následnou inicializací "/init" programu nahraje "initramfs" obraz do paměti RAM jako dočasný kořenový file system (Root File System);

  4. hlavní částí bootovacího procesu je inicializace "/sbin/init" a přepnutí dočasného kořenového souborového systému na disk.

    Na začátku hlavní části (4.) bootovacího procesu je systém na úrovni běhu označeného jako RUNLEVEL "N" (None). Úroveň běhu (RUNLEVEL) lze velmi zjednodušeně popsat jako operační stav, ve kterém se systém právě nachází.

    Systém poté přejde do základní úrovně běhu - RUNLEVEL "S" módu. Systém je spuštěn jako "Single-user". V tomto kroku je dokončena i inicializace hardwaru.

    INFO: Úrovně běhu jsou i součástí WINDOWS a jsou patrné po nabootování do nabídky s rozšířenými možnostmi spuštění klávesou [F8]. Součástí nabídky je např. Nouzový režim. V LINUXU je analogií nouzového režimu RECOVERY MODE[REF].

    Poté se systém automaticky přepne do předvoleného módu. V DEBIAN je defaultně navolen RUNLEVEL "5" a podle nastavení se spustí buď přihlašovací obrazovka nebo je napřímo bez přihlašování[REF] nahrána plocha.

Tabulka 5. Úrovně běhu v DEBIAN
Runlevel Adresář

N

None

Systémový "boot". Nemá žádný adresář pro nastavení.

0

/etc/rc0.d

"Zastavení" systému.

S

/etc/rcS.d

"Single-user" mód zaváděný systémem při bootu.

1

/etc/rc1.d

"Single-user" mód přepnutý z "Multi-user" módu. V tomto módu je inicializován hardware a zaveden základní systém. Do tohoto módu počítač nabootuje při spuštění systému v režimu RECOVERY MODE[REF]. Komunikovat s computerem lze pouze prostřednictvím příkazového řádku. Je spuštěno konfigurační minimum potřebné pro opravu, správu nebo základní práci s PC.

2 …​ 5

/etc/rc(2,3,4,5).d

Úrovně běhu "2" až "5" jsou "Multi-user" módy. DEBIAN tyto úrovně běhu nerozlišuje. Defaultně DEBIAN startuje do módu "5" a spustí systémové služby[REF] odkazované z adresáře "/etc/rc5.d". "Multi-user" mód je víceuživatelský mód. Jsou nahrána systémová nastavení a po přihlášení budou nahrána uživatelská nastavení. Je určen pro běžnou práci s počítačem. Nahrávají se automaticky[REF] spouštěné služby a aplikace.

6

/etc/rc6.d

"Reboot" systému.

7 …​ 9

/etc/rc(7,8,9).d

Úrovně běhu "7" až "9" DEBIAN nepoužívá.

Úroveň běhu se zjistí jednoduchým příkazem 'runlevel'. Při spuštění počítače v režimu RECOVERY MODE bude mít příkaz 'runlevel' ve výstupu hodnotu "1" jako "Single-user". Po spuštění uživatelského účtu bude úroveň běhu "5".

xfce4-terminal - Příklad příkazu 'runlevel'
$ runlevel                      // spuštění v RECOVERY MODE
N 1                             // N=předešlý mód, 1=současný mód
$ runlevel                      // příkaz v MULTI-USER MODE
1 5                             // 1=předešlý mód, 5=současný mód

Adresáře pro jednotlivé úrovně běhu "/etc/rc(0-6).d" obsahují odkazy na systémové skripty, které jsou ve složce "/etc/init.d".

  • Odkazy v adresáři "/etc/rc0.d" inicializují RUNLEVEL "0" mód - "Zastavení" systému.

  • …​

  • Odkazy v adresáři "/etc/rc5.d" inicializují RUNLEVEL "5" mód - "Multi-user" mód.

  • Odkazy v adresáři "/etc/rc6.d" inicializují RUNLEVEL "6" mód - "Reboot" systému.

Odkazy v adresáři "/etc/rc5.d" spustí pouze skripty odkazované z tohoto adresáře. Odkazy z "/etc/rc5.d" systém nahrává pro uživatelskou práci.

RUNLEVEL lze spustit v TERMINAL příkazem 'init'. Například spuštěním RUNLEVEL "6" módu se nahrají skripty odkazované z "/etc/rc6.d" pro restart a počítač restartuje.

xfce4-terminal - Příklad příkazu 'init'
$ init 6                        // systém restartuje, spustí skripty
                                // odkazované z "/etc/rc6.d"
$ init 0                        // systém zastaví, spustí
                                // skripty odkazované z "/etc/rc0.d"
$ init 1                        // systém se přepne do RUNLEVEL 1, spustí
                                // skripty odkazované z "/etc/rc1.d"
                                // atd.

16.2.2. Editace runlevel

2019-11-27

V adresářích pro jednotlivé úrovně běhu "/etc/rc(0-6).d" lze dělat úpravy. Soubory lze editovat nebo vytvářet nové s novými funkcemi.

Jak jsem psal po spuštění pracovní plochy běží v DEBIAN RUNLEVEL "5". Proto bude systém nastavován pouze v adresáři "/etc/rc5.d" i když DEBIAN mezi úrovněmi "2" až "5" rozdíly nedělá.

V adresáři "/etc/rc5.d jsou odkazy na skripty v "/etc/init.d", které po spuštění:

  1. aktivují nějakou funkci.

    Aktivní odkazy v adresáři "/etc/rc5.d" jsou pojmenované "S##jméno". Písmeno "S" (Start) na začátku názvu znamená, že tento odkaz spustí skript a funkci aktivuje.

  2. funkci vůbec neaktivují.

    Mají pojmenování "K##jméno". Písmeno "K" (Kill) na začátku názvu znamená, že tento odkaz není po spuštění nahrán a skript, na který odkazuje nebude po spuštění RUNLEVEL "5" nahrán.

Znaky "##" v pojmenování souborů zastupují dvojčíslo. Toto dvojčíslo určuje pořadí spuštění skriptu. Čím je číslo nižší tím dříve systém tuto funkci nahraje. Takto lze ovlivňovat sekvenční spouštění a jednotlivé prvky se nahrají popořadě.

Množství skriptů v adresáři "/etc/rc5.d" závisí na volbách, které byli v instalaci DEBIAN aktivovány defaultně a/nebo je v instalaci povolil uživatel. Někdo bude mít v adresáři odkazy na skripty vztahující se k tiskárně jiný ne.

!! Pište si poznámky, děláte-li v systému při plném vědomí a se vší zodpovědností nejisté ale nutné pokusy.

K deaktivaci skriptů stačí odkazy přejmenovat předepsaným způsobem. Čím míň se jich bude spouštět tím lehčí a svižnější systém bude. Odkazy na skripty potřebné pro bezproblémový chod systému nepřemenovávejte. Nebude-li cokoliv po restartu fungovat spusťte počítač v RECOVERY MODE[REF] a problémový odkaz přejmenujte na původní název.

! Pozor na překlepy.

V adresáři "/etc/rc5.d" jsou odkazy pojmenované podobně jako v příkladu. Zavináč "@" před jménem[REF] značí, že se jedná o odkaz na soubor.

Okno souborového správce - Adresář "/etc/rc5.d" - Příklad se spouštěnými odkazy na systémové skripty
                                |přípona|datum|vlastník|práva|atd...
..
@S01avahi-daemon
@S01anacron
@S01console-setup
@S01dbus
@S01hddtemp
@S01lightdm
@S01network-manager
@S01plymouth
@S01rsyslog
@S01saned
@S01speech-dispatcher
@S01sudo

Odkazy na systémové skripty stačí přejmenovat a místo písmene "S" (Start) zapsat "K" (Kill). Poté nebudou nepotřebné funkce spouštěny. V příkladu budou při startu operačního systému z původních dvanácti odkazovaných skriptů spouštěny pouze čtyři.

Okno souborového správce - Adresář "/etc/rc5.d" - Příklad zakázání (přejmenování) odkazů
                                |přípona|datum|vlastník|práva|atd...
..
@K01avahi-daemon
@K01anacron
@K01hddtemp
@K01network-manager
@K01plymouth
@K01saned
@K01speech-dispatcher
@K01sudo
@S01console-setup
@S01dbus
@S01lightdm
@S01rsyslog

Jednotlivé úrovně běhu lze editovat. Například nově vytvořená funkce v "/etc/rc6.d" může před restartem odeslat příkaz k restartu jiným počítačům v síti.

16.2.3. Příklady "/etc/rc5.d"

2019-11-27

V tabulce je vypsáno několik odkazů z "/etc/rc5.d na skripty. Jejich popis (description) je přímo v záhlaví souboru nebo na webu. Pro našince, bohužel, v angličtině. Nahlédnout do skriptu můžete textovým editorem. Odkazů a odkazovaných skriptů může být mnoho. Záleží na množství instalovaného softwaru, použitém hardwaru…​

Tabulka 6. Příklad odkazů na systémové skripty
Název Funkce Vypnutí

@S01anacron

opakované spouštění příkazů

lze vypnout

@S01avahi-daemon

mDNS/DNS-SD service pro lokální síť

bez lokální sítě lze vypnout

@S01console-setup

písmo a mapování klávesnice

nevypínat

@S01cron

opakované spouštění příkazů

lze vypnout

@S01dbus

posílá zprávy mezi aplikacemi

nevypínat, systémová funkce

@S01hddtemp

monitoruje teplotu harddisků

lze vypnout

@S01irqbalance

distribuuje IRQ přerušení mezi procesory

tuto službu s realtime audio určitě vypněte

@S01lightdm

display manager, potřebný pro XFCE

nevypínat

@S01network-manager

funkce sítě

lze vypnout, zapnout u aktualizací

@S01plymouth

boot splash manager, hezká grafika při bootu

lze vypnout

@S01rsyslog

syslog daemon, logování systému

nevypínat

@S01saned

scanner

bez skeneru vypnout

@S01speech-dispatcher

text-to-speech hlasová syntéza, čte nahlas text

lze vypnout

@S01sudo

spouštění ROOT příkazů příkazem sudo[REF]

lze vypnout

16.3. 'systemctl' services

16.3.1. Info o službách

2019-11-26

Služby v DEBIAN se spravují prostřednictvím příkazového řádku příkazem 'systemctl akce název_služby.service'. Akcí jsou vnitřní funkce start, stop, restart, enable, disable a další jsou popsány v manuálu 'man systemctl'. Tato operace vyžaduje práva ROOT[REF].

TIP: Jednopísmenné parametry linuxových příkazů lze psát spolu: -n -H -I -i -F-nHIiF. Není-li v manuálu k příkazu uvedeno jinak poté na jejich pořadí nezáleží. Parametry s dvěma pomlčkama jako --color se píši každý zvlášť.

Pro nalezení konkrétního řetězce v textových datech se výborně hodí i příkaz grep[REF].

Příkaz '$ systemctl | grep --color -n -i service' vyhledá jakýkoliv řádek obsahující řetězec "service" ve výstupu příkazu systemctl bez ohledu na velikost (parametr "-i") písmen řetězce. Přímým otevřením okna TERMINAL s ROOT právy není nutno psát příkaz 'su -' a zadávat heslo.

xfce4-terminal - Příkaz 'systemctl' k vyhledání služeb
$ systemctl | grep -n -i --color service
26:init.scope                            loaded active running   System and Service Manager
30:alsa-restore.service                  loaded active exited    Save/Restore Sound Card State
31:alsa-state.service                    loaded active running   Manage Sound Card State (res...
32:apparmor.service                      loaded active exited    Load AppArmor profiles
33:avahi-daemon.service                  loaded active running   Avahi mDNS/DNS-SD Stack
34:console-setup.service                 loaded active exited    Set console font and keymap
35:cron.service                          loaded active running   Regular background program pro...
36:dbus.service                          loaded active running   D-Bus System Message Bus
37:exim4.service                         loaded active running   LSB: exim Mail Transport Agent
38:getty@tty1.service                    loaded active running   Getty on tty1
39:hddtemp.service                       loaded active exited    LSB: disk temperature monito...
40:ifupdown-pre.service                  loaded active exited    Helper to synchronize boot up ...
41:keyboard-setup.service                loaded active exited    Set the console keyboard layout
42:kmod-static-nodes.service             loaded active exited    Create list of required stati...
43:lightdm.service                       loaded active running   Light Display Manager
44:lm-sensors.service                    loaded active exited    Initialize hardware monitori...
45:ModemManager.service                  loaded active running   Modem Manager
46:networking.service                    loaded active exited    Raise network interfaces
47:NetworkManager-wait-online.service    loaded active exited    Network Manager Wait Online
48:NetworkManager.service                loaded active running   Network Manager
49:polkit.service                        loaded active running   Authorization Manager
50:rsyslog.service                       loaded active running   System Logging Service
51:rtkit-daemon.service                  loaded active running   RealtimeKit Scheduling Poli...
52:systemd-journal-flush.service         loaded active exited    Flush Journal to Persisten...
53:systemd-journald.service              loaded active running   Journal Service
54:systemd-logind.service                loaded active running   Login Service
55:systemd-modules-load.service          loaded active exited    Load Kernel Modules
56:systemd-random-seed.service           loaded active exited    Load/Save Random Seed
57:systemd-remount-fs.service            loaded active exited    Remount Root and Kernel Fil...
58:systemd-sysctl.service                loaded active exited    Apply Kernel Variables
59:systemd-sysusers.service              loaded active exited    Create System Users
60:systemd-timesyncd.service             loaded active running   Network Time Synchronization
61:systemd-tmpfiles-setup-dev.service    loaded active exited    Create Static Device Nodes i...
62:systemd-tmpfiles-setup.service        loaded active exited    Create Volatile Files and Dire...
63:systemd-udev-trigger.service          loaded active exited    udev Coldplug all Devices
64:systemd-udevd.service                 loaded active running   udev Kernel Device Manager
65:systemd-update-utmp.service           loaded active exited    Update UTMP about System Boot/Sh...
66:systemd-user-sessions.service         loaded active exited    Permit User Sessions
67:udisks2.service                       loaded active running   Disk Manager
68:upower.service                        loaded active running   Daemon for power management
69:user-runtime-dir@0.service            loaded active exited    User Runtime Directory /run/us...
70:user-runtime-dir@1000.service         loaded active exited    User Runtime Directory /run/use...
71:user@0.service                        loaded active running   User Manager for UID 0
72:user@1000.service                     loaded active running   User Manager for UID 1000
73:wpa_supplicant.service                loaded active running   WPA supplicant

S výpisu je zřejmé, že počítač má spuštěných mnoho služeb, o kterých uživatel vůbec neví ale na rychlosti mu nepřidají. Spíše naopak. A služeb spuštěných na pozadí může být mnohem víc. Záleží na možnostech hardwaru, množství instalovaného softwaru a tak podobně. Některé ze služeb použije systém jednou při startu nebo je má aktivované v záloze ("exited)". Za pozornost stojí zejména běžící ("running") služby.

TIP: Vyzkoušejte třeba svůj počítač i bez zastavení nepotřebných služeb. Uvidíte zda bude pracovat tak jak je potřeba. Moderní počítače mají obrovské výkony a služba navíc je nepoloží. Časem se k tématu vraťte a počítač dolaďte.

Kupříkladu:

  • služba "bluetooth.service" je bez používání BLUETOOTH zařízení k nepotřebě. Dnes jsou však v trendu BLUETOOTH klávesnice a myši a zakázaní služby v takovém případě není doporučeno;

  • stejně tak i "avahi-daemon.service" je bez intenzivní práce v lokální síti a v kombinaci s tvorbou zcela nepotřebný;

  • služba "wpa_supplicant.service" se vztahuje k WIFI;

  • zakázaním "ModemManager.service" se nic nestane nemáte-li modem;

  • zastavením všech instancí "[nN]etwork…​service" se deaktivuje síť atd.

    Zápisem znaků "[nN]" jsem vypsal možnosti. V řetězci může být jak malé "n" tak i velké "N". Tři tečky nahraďte zbytkem názvů služeb. Tento zápis je převzat ze zápisů REGEX[114] (regulární výrazy) ale nedodržel jsem správnost celého zápisu jinak bych se rozepsal o REGEX. Odpusťte mi vědomou a záměrnou nedbalost.

Systémové služby jsou většinou rozeznatelné už podle názvu nebo z popisu.

Čím míň služeb bude na pozadí spuštěno ("running") tím vyšší výkon bude computer mít a zbylé uvolněné prostředky budou přiděleny jen a pouze potřebným výpočtům. Těžko radit, které služby povolit a které ne. Někdo na svém počítači preferuje i síťové připojení, jiný ne. Někdo potřebuje tiskárnu k vytištění notového zápisu atd.

Někdy je potřeba více úsilí k sehnání informací co jest ještě nutností a co už nikoliv. Stejný postup je však vyžadován i při nastavení v jiných operačních systémech. Není to tedy dáno nedostatkem operačního systému ale nutností svůj systém akurátně doladit. Výrobce ani vývojář neví k jakému účelu bude produkt sloužit. V základní instalaci je implementován pouze potřebný a uživatelsky často používaný software a obecná nastavení. Připojením se k průzkumu o nejpopulárnější balíky "popularity-contest"[REF] pomáháte vývojářům zjistit, který software je nejpopulárnější a ideální pro zařazení do příští instalace distribuce. DEBIAN není komerční, proprietární produkt a informace pro vývojáře se, dle mého přesvědčení, nezneužívají.

Konkrétní info o některé ze služeb lze zjistit příkazem 'systemctl status jméno_služby.service':

xfce4-terminal - Ověření stavu služby
$ systemctl status avahi-daemon.service         // ověření stavu
avahi-daemon.service - Avahi mDNS/DNS-SD Stack
    Loaded: loaded (/lib/systemd/system/avahi-daemon.service; enabled; vendor preset: enabled)
    Active: active (running) since Mon 2019-10-21 18:02:46 CEST; 3 weeks 3 days ago
  Main PID: 568 (avahi-daemon)
    Status: "avahi-daemon 0.6.32 starting up."
     Tasks: 2 (limit: 4915)
    CGroup: /system.slice/avahi-daemon.service
            ├─568 avahi-daemon: running [xm.local]
            └─575 avahi-daemon: chroot helper

Nov 14 17:50:34 xm avahi-daemon[568]: Joining mDNS multicast group on interface wlan0.IPv...
Nov 14 17:50:34 xm avahi-daemon[568]: New relevant interface wlan0.IPv4 for mDNS.
Nov 14 17:50:34 xm avahi-daemon[568]: Registering new address record for 192.168.1.104 on...
Nov 14 17:50:34 xm avahi-daemon[568]: Joining mDNS multicast group on interface wlan0.IPv6 w...
Nov 14 17:50:34 xm avahi-daemon[568]: New relevant interface wlan0.IPv6 for mDNS.
Nov 14 17:50:34 xm avahi-daemon[568]: Registering new address record for fe80::e02b:328:9ffc...
Nov 14 17:50:36 xm avahi-daemon[568]: Leaving mDNS multicast group on interface wlan0.IPv6 wi...
Nov 14 17:50:36 xm avahi-daemon[568]: Joining mDNS multicast group on interface wlan0.IPv6 with ...
Nov 14 17:50:36 xm avahi-daemon[568]: Registering new address record for fd7a:7ec9:ecf6:0:b...
Nov 14 17:50:36 xm avahi-daemon[568]: Withdrawing address record for fe80::e02b:328:9...
TIP: Výstup jednotlivého příkazu lze přesměrovat[REF] nebo rovnou zapsat a uložit do souboru[REF] např.:
'systemctl status jméno_služby.service > ~/jméno_služby.status'. Název souboru je volitelný.
TIP: Posloužit může i příkaz tee[REF] ve tvaru 'systemctl status jméno_služby.service | tee ~/jméno_služby.status', který výstup vypíše do TERMINAL a zároveň uloží do souboru "jméno_služby.status" v domovském adresáři.

16.3.2. Zakázání služby

2019-11-17

!! Činit úpravy v systému jednotlivě a po malých krocích je velmi užitečné. V RECOVERY MODE[REF] lze chybné změny vrátit na původní hodnoty.

Jakoukoliv službu lze zastavit a/nebo úplně zakázat. Příkaz '$ systemctl stop avahi-daemon.service' službu avahi daemona zastaví ale jde pouze o adhoc řešení. Po znovuspuštění PC se avahi opětovně nahraje a aktivuje. Spuštění avahi služby ihned při spouštění počítače se permanentně zakáže příkazem '$ systemctl disable avahi-daemon.service'. Stejný postup se používá i pro jakékoliv další nepotřebné služby.

!! Zapsat si na papír přesnou informaci velmi doporučuji. Tužka a poznámkový blok si pamatují velmi dobře.
xfce4-terminal - Zastavení a zakázání služby
$ systemctl stop avahi-daemon.service           // zastavení služby
$ systemctl disable avahi-daemon.service        // zakázaní služby
? Je-li příkaz nainstalován a nejde spustit bude chyba nejspíš v nesprávně zadané velikosti písmen příkazu, uživatel nepoužil v názvech nebo příkazech s mezerami uvozovky. Příkaz je interpretován nesprávně. Spustí-li uživatel systémový příkaz bez ROOT oprávnění a příkaz je instalován vypíše TERMINAL hlášku bash: command not found.

Při problémech se služba nebo-li daemon opětovně povolí '$ systemctl enable avahi-daemon.service' a/nebo spustí '$ systemctl start avahi-daemon.service' i kdyby v opravném režimu[REF].

xfce4-terminal - Povolení a start služby
$ systemctl enable avahi-daemon.service         // povolení služby
$ systemctl start avahi-daemon.service          // spuštění služby

Znovunahrání a restart služby:

xfce4-terminal - Restart služby
$ systemctl reload-or-restart avahi-daemon.service
! Čemu nerozumím to nepřepisuji.

Názvy služeb obsahující podezřelé řetězce

  • "systemd", "user", "dbus", "init", "disk", "display", "console", "alsa"[143]…​

není rozumné zastavit a/nebo zakázat.

Nastane-li opravdu okamžitý neřešitelný problém - o nic přeci nejde. Počítač klidně vypněte natvrdo. K systému to věru není ohleduplné. Počítač spusťte znovu. Nebude-li startovat operační systém nebo bude jeho funkčnost omezena vypněte ho znovu a nabootujte v RECOVERY MODE[REF]. V tomto režimu si nesprávná nastavení vrátíte do původního stavu.

TIP: Opravdu se vyplatí dělat změny po jedné. Pokuď se nic zvláštního neděje ani po několika startech a všechno, zdá se, funguje bezchybně lze přistoupit k další změně.

Při pokusech nejdřív vyzkoušejte službu pouze zastavit.

! Pozor na [ENTER] - "dvakrát měř jednou řež".
xfce4-terminal - Zastavení služby
$ systemctl stop jméno_služby.service

Služba se zastaví a je-li pro systém velmi důležitá něco se pokazí a počítač zůstane v nekonzistentním stavu. Může se vyskytnout jiný závažný problém. Nevadí. Po restartu se služba opět spustí.

? Počítač vydrží hodně a restartem se umí mnohdy oklepat ale proti neuváženému zásahu sebeobranu nemá.

Komplikovanější a vážnější problém může nastat zadá-li správce příkaz

xfce4-terminal - Zakázání služby
$ systemctl disable jméno_služby.service

Služba se nezastaví protože nebyla v příkazu uvedena vnitřní funkce "stop" jako v předchozím příkladu ale funkce "disable". Počítač žádnou viditelnou akci neprovede, nic se nepokazí. Služba nebyla okamžitě zastavena, zůstala spuštěna ale byla zakázána. Při příštím startu systému se ale služba už nespustí protože byla zakázána a systém nemusí startovat korektně. Pište si poznámky.

16.3.3. Povolení služby

2019-11-21

Může se stát, že bez zakázané služby cokoliv nefunguje jak má. Je tedy nutné službu opětovně povolit příkazem 'systemctl enable jméno_služby.service'. Příkazem 'systemctl start jméno_služby.service' se služba okamžitě spustí. Opětovné povolení a spuštění služby lze provést:

  1. jde-li systém nastartovat tak klasicky přihlášením k účtu, otevřením okna TERMINAL s právy ROOT

    xfce4-terminal - Povolení a start služby
    $ systemctl enable jméno_služby.service         // povolení
    $ systemctl start jméno_služby.service          // spuštění
  2. nestartuje-li systém tak v RECOVERY MODE[REF].

    ...
    ...
    "Pro zahájení údržby je třeba zadat heslo uživatele root"
    (nebo stisněte Control-D, abyste pokračovali): _               // heslo [ENTER]
    root@debian:~# _

    Do TERMINAL se poté zapíší stejné příkazy

    root@debian:~# systemctl enable jméno_služby.service         // povolení služby
    root@debian:~# systemctl start jméno_služby.service          // start služby

    Kombinace kláves [CTRL] a [d] ukončí práci v ROOT účtu. Následuje buď vypnutí PC

    $ poweroff                                     // vypnutí
    $ reboot                                       // restart

    nebo spuštění grafického rozhraní opětovným stiskem [CTRL] a [d]:

    (nebo stisněte Control-D, abyste pokračovali): _

    Ukončí se TERMINAL a půjde-li zavést tak poté zavede GUI uživatelské rozhraní.

Poté bude opět vše v pořádku.

17. SOUNDSERVER

17.1. Topologie

2019-07-15

SOUNDSERVER pracuje na pozadí systému jako linuxový daemon[144] (service, služba).

Tabulka 7. Logická topologie audio vrstev v LINUX
Vrstva Technologické prvky Praktická aplikace

4.

USER software

  • GUI: ARDOUR, PATCHAGE, HYDROGEN, QJACKCTL, AUDACIOUS, LMMS, komerční MIXBUS a REAPER…​

  • CLI: 'sox'

3.

SOUNDSERVER

  • JACK[REF], aRts, ESD (Enlightened Sound Daemon), NAS (Network Audio System), PulseAudio, sndio (OpenBSD audio and MIDI framework)

  • Servery pro streaming audia: Icecast, SHOUTcast

2.

SOUND SUBSYSTEM

  • LINUX DRIVERS (ovladače) - ALSA, OSS

  • LINUX KERNEL (jádro)

1.

Operační systém

  • LINUX

  • BSD

0.

Hardware

  • ANALOG

  • DIGITAL

PC, zvuková karta, mixážní pult, klávesy, MIDI controller, mikrofon, kytara…​

SOUNDSERVER:
  1. je podpůrnou vrstvou zajišťující přístup audioSW k ovladačům zvukové karty, tedy ke zvukovému subsystému.

    Linuxové distribuce v současné době instalují výhradně ovladače ALSA[143] (Advaced Linux Sound Architecture). ALSA jsou ve všech UNIX-LIKE systémech standardem. Jsou plnohodnotnou náhradou za starší, dnes už nepoužívané ovladače OSS (Open Sound System). OSS neuměl současně zpracovat audio data z více softwarových zdrojů a chyběla podpora pro integraci víc než jedné zvukové karty.

  2. zprostředkovává vzájemnou komunikaci audioSWSOUNDSERVERaudioSW s myšlenkou propojit jednotlivý software v jeden funkční modulární celek.

    INFO: Jde propojit KEYBORDS se SYNTHESISER na nějž lze aplikovat EFFECT a výstup odeslat v podobě digitálních dat do MIXCONSOLE (mixer). To celé lze nahrávat do jedné stopy v DAW[97] spolu s kytarou a do další stopy nahrávat ve smyčce loopované SAMPLER vzorky. A nahrávání se spustí tlačítkem [REC] na MIDI kontroléru nebo definovanou klávesou na MIDI klávesách.

Některé z aplikací pracující se zvukovými daty se připopují napřímo k ovladačům ALSA. Instalací speciálně navržených programových balíčků z repozitářů DEBIAN lze tyto aplikace k SOUNDSERVER také připojit a propojit i s jinými aplikacemi.

Ovládání a nastavení zvukového serveru se aplikuje příkazem v CLI nebo skrze GUI[60] rozhraní programů.

17.2. Pulseaudio & JACK

2019-11-14

Instalace dvou zvukových serverů není nemožná ale souběžný běh PULSEAUDIO[31] a/nebo jiného zvukového serveru spolu s realtime serverem JACK[145] je divoká kombinace. Zprovoznění není zcela triviální ale ani složité. Pro linuxové realtime audio a video je samostatný JACK server nejlepší volbou. Je zároveň řešením nejjednodušším. Bez zbytečného nastavování a nutnosti psát ač jednoduché přesto skripty a bez potřeby hledat mnohé informace na internetu.

Preferuje-li kdokoliv dva souběžně instalované zvukové servery může do začátku vyzkoušet jiné linuxové distribuce[REF]. Tyto distribuce podporují jak multimediální tvorbu tak současné browsdání po internetu a další činnosti spojené s běžnými uživatelskými potřebami. Jsou určené pro klasické desktopové využití se vším všudy a k tomuto účelu jsou i odladené. Zároveň se v nich lze podívat i na nastavení dvou serverů současně běžících na pozadí.

PULSEAUDIO server má vysokou latenci, tedy zpoždění, a v některých systémech může dosáhnout až 100ms. V počítačích pro zpracování audia v reálném čase jsou tak vysoké hodnoty na překážku.

Pro tvorbu jsou normální hodnoty zpoždění zhruba do 10ms. Čím jsou nižší tím líp.

Ve všeobecnosti se dá říci, že na jakýkoliv zvuk s rychlým náběhem jako bicí nebo zpěv, je potřeba minimální latence s maximem do 10ms. Delší, déle nabíhající doprovodní zvuky unesou i latenci 10-20ms. Budou-li latence vyšší bude už poznat opoždění zvukového výstupu v reproduktorech i když v domácím studiu lze na tento problém nahlížet s úsměvem a řešit ho kompromisem nebo s DIY (DoItYourself) přístupem. Latence nad 20ms už přestává být úsměvná a začíná být až nepříjemná a k tvorbě nepoužitelná. Z poslechu, při zpívání nebo hraní, lze cítit je-li latence ještě v unosné míře.

Je patrné, proč zpuštění webového videa se 100 milisekundovým zpožděním tolik nevadí. Je jedno zda se video spustí třeba i o půl sekundy později. Ale slyšet svůj hlas z reproduktorů s opožděním může být až matoucí.

INFO: Vývojáři RADHAT mají snahu vytvořit jiný, nový multimediální nízkolatenční nebo realtime server, který by sjednotil vše potřebné. Původní experimenty s propojením PULSEAUDIO a novým PULSEVIDEO serverem se časem proměnily ve vývoj PIPEWIRE[146]. Tato technologie však v současnosti není plně použitelná a JACK nejspíš zůstane velmi kvalitním linux sound serverem i do budoucna.

Velkým nedostatkem PULSEAUDIO serveru je i diskutabilní podpora MIDI[16].

17.3. JACK server

17.3.1. JACK verze

2019-11-21

Kromě LINUX distribucí je zvukový server JACK[145] portovaný i pro WINDOWS a MACOS a lze jej instalovat i do dalších POSIX[REF] operačních systémů.

TIP: JACK audioserver je neocenitelným pomocníkem i při vytváření zvuku ve video software a 3D modelářských aplikacích podporujících zvukový REALTIME výstup.

V současnosti má JACK server dvě verze: JACK1 a JACK2. Pro začátečníka nemusí být jednoduché rozhodnout se, kterou verzi instalovat. Tabulka s rozdíly ve verzích je na stránkách[147] vývojářů.

Ve zkratce:
  • JACK1 má výbornou nativní podporu MIDI rozhraní ale nemá podporu pro víceprocesorové počítače a není dostupný pro WINDOWS.

  • JACK2 byl původně vyvíjen pro multi-processor computery ale nemá zabudovanou přímou podporu ALSA MIDI. Nedostatek s MIDI není vážným problémem a plná funkčnost se vědomě řeší instalací a2jmidid (Alsa to Jack MIDI daemon) balíčku jenž tento nedostatek odstraňuje. JACK2 umí sdílet zvukovou kartu s PULSEAUDIO.

Zřejmě častější je instalace JACK2 ale vyšší číselné označení verze neznamená novější software. JACK1 a JACK2 jsou dvě v čase plnohodnotné a rovnocenné aplikace a obě jsou vyvýjené současně i když každá s jinou myšlenkou. Nedají se instalovat spolu. Každá z verzí má jak klady tak i zápory. Myslím, že časem se obě verze tohoto softwaru potkají v jednom produktu.

V dalším textu budu pracovat s nastaveními JACK2. JACK1 nastavení je analogií JACK2.

17.3.2. Instalace JACK

2019-12-05

Odinstalací PULSEAUDIO serveru není v systému žádný server, který by obsluhoval audiosoftware. V dalším proto bude nutné zprovoznit zvukové funkce instalací soundserveru JACK a několika důležitých aplikací, které práci se zvukem a nastavením zjednoduší.

  • "jack2" - zvukový server

  • "qjackctl"[148] - GUI rozhraní pro spouštění a nastavení JACK serveru.

    Bez QJACKCTL se JACK nastavuje v příkazové řádce a/nebo editací konfiguračního souboru "~/.jackdrc"[REF] v domovském adresáři. Instalací jack2 je v SYNAPTIC automaticky vybrán jako závislý balíček.

  • "a2jmidid" (alsa to jack midi daemon) - tento minimalistický balíček pomůže propojit jack2 a aplikace podporující pouze ALSA MIDI.

    JACK1 má podporu ALSA MIDI implementovanou a "a2jmidid" není potřeba instalovat.

  • "patchage"[149] - grafické rozhraní pro softwarové propojení audioSW.

  • "wine"[46] (Wine Is Not Emulator) - je aplikace, která umí spustit WINDOWS programy v LINUX. Malými i když ne zrovna programy jsou i VST[150] pluginy.

Instalovat lze:

  1. ve správci balíků SYNAPTIC[REF]. Před instalací obnovte informace o balících - možná jsou v repozitářích nové aktualizované verze.

  2. nebo v příkazové řádce příkazem 'apt-get'[REF] s integrovanou funkcí 'install'. Instalovat software může pouze správce[REF] systému.

    INFO: Nezalamujte bezhlavě kdekoliv uprostřed slova ale přehledně v mezerách. Zapište před zalomením mezeru, poté zpětné lomítko \, potvrďte [ENTER] a příkaz pište dál.
    xfce4-terminal
    $ apt-get clean                                // vyčístí staré info o balících
    $ apt-get update                               // aktualizuje databázi programů
    $ apt-get install jack2 qjackctl \             // instalace
    > a2jmidid patchage

    Příkaz lze samozřejmě zapsat do jednoho řádku[REF].

    xfce4-terminal
    $ apt-get clean && apt-get update && apt-get install jack2 qjackctl a2jmidid patchage
? V instalačním procesu se zobrazí okno, ve kterém je potřeba povolit JACK serveru REALTIME prioritu. Další aplikace se nainstalují bez dotazů.
Instalace JACK - Nastavení REALTIME priority
                      Nastavuje se jackd2

Pokud chcete spouštět jackd s realtimovými prioritami, potřebuje
uživatel který spouští jackd příslušná realtimová oprávnění.
Budete-li s tím souhlasit, dojde k vytvoření souboru
/etc/security/limits.d/audio.conf a přiřazení příslušných práv
(realtimové priority a memlock) pro skupinu audio.

Spuštění jackd s realtimovou prioritou minimalizuje reakce počítače,
ale může vést ke kompletnímu zatuhnutí systému způsobenému plným
obsazením fyzické paměti což je nepřípustné zejména ve
více-uživatelských prostředích.

Povolit realtimovou prioritu procesu?

                <Ano>                       <Ne>

Odsouhlaste volbu "Ano". Pro pohyb mezi položkami je klávesa [TAB].

Bez povolené REALTIME priority bude JACK pracovat také ale jako server nízkolatenční. Nebude systémem obsluhován okamžitě v reálném čase ale jako každá jiná aplikace.

Nastavit REALTIME prioritu později lze:

  1. skrze grafické rozhraní QJACKCTL[REF].

  2. v jeho konfiguračním souboru "~/.jackdrc"[REF].

17.3.3. Nastavení JACK

2019-12-05

Konfigurační soubor ".jackdrc" nemusí být systémem automaticky vytvořen.

? Je praktičtější nastavit audioserver přes rozhraní QJACKCTL[REF]. Jsou v něm možnosti pro výběr zvukovky a jiných nastavení. Odpadá pravděbodobnost překlepů, potřeba hledat v manuálech a automaticky vytvoří i soubor ".jackdrc".

V tom případě je potřeba soubor ".jackdrc" vytvořit a zapsat[REF] do něj řádek s nejvhodnějším optimálním nastavením.

"~/.jackdrc" - Příklad konfiguračního souboru JACK
/usr/bin/jackd -d alsa --device US2x2 --rate 48000 --period 128 -n 3

a uložit jako ".jackdrc" do domovské složky "~/" ($HOME). Název má na začátku tečku. Je to skrytý soubor. Přípustné hodnoty jednotlivých parametrů je nutné dohledat v manuálu ke zvukovce. Funkce jackd jsou popsány v manuálu[REF] příkazu 'man jackd'.

Kupříkladu, má-li jackd pracovat v reálném čase do souboru stačí za '/usr/bin/jackd' připsat " -R" a uložit. Byl-li běh soundserveru JACK v reálném čase odsouhlasen v instalaci[REF] není potřeba podporu reálného času zapisovat. Všechny tyto volby lze nastavit i v grafickém rozhraní GUI aplikace QJACKCTL[REF].

"~/.jackdrc" - Příklad konfiguračního souboru JACK
/usr/bin/jackd -R -d alsa --device US2x2 --rate 48000 --period 128 -n 3

K nahrání konfigurace je potřeba se odhlásit a přihlásit nebo znovu nahrát JACK daemona.

$ source $HOME/.jackdrc

17.4. JACK GUI

2019-11-21

  • QJACKCTL[148] je jednoduchá přehledná aplikace s grafickým rozhraním pro kontrolu, nastavení JACK daemona[144].

INFO: LINUX daemona si lze jednoduše představit jako službu nebo service na pozadí a v systému je velmi často od své aplikace rozeznatelný písmenkem "d" na konci názvu. Aplikace JACK má daemona s názvem jackd. Daemonem je i a2jmidid.
  • PATCHAGE[149] je modulární grafický nástroj pro softwarové propojení audio a MIDI softwaru. Spravuje JACK propojení a s nainstalovaným a2jmidid daemonem propojí i softwarové MIDI konektory audio aplikací.

  • CADENCE[151] jsou užitečné nástroje pro audio produkci, nastavuje JACK podobně jako QJACKCTL.

    V DEBIAN distribuci není v oficiálních repozitářích kvůli chybovosti. Kdo oželí některé nefunkčnosti a občasné pády musí si aplikaci stáhnout ze stránek výrobce a instalovat ji dodatečně, manuálně a neoficiální cestou v programu GDEBI[REF]. Zřejmě bude muset doinstalovat i další balíky, na kterých aplikace závisí.

    Aplikace funguje lépe v distribuci KX STUDIO[REF] protože software vyvíjí v dílně této distribuce. Patří v ní do hlavní skupiny audio aplikací.

  • PATCHMATRIX[152] je funkčností podobný PATCHAGE ale jeho ovládání je ve stylu matrix. Ne ve smyslu filmovém ale matematickém. Není součastí oficiálních DEBIAN repozitářů.

17.4.1. QjackCtl

2019-12-05

Aplikace QJACKCTL[148] je grafickým řešením pro spouštění, zastavení a spouštění audioserveru JACK. Nastaví se v ní také příkaz pro simultánní spuštění daemona a2jmidid.

Ikona pro spuštění QJACKCTL je v "MENU" → "MULTIMÉDIA" → "QjackCtl". Konfigurační soubory aplikace jsou v domovské složce "~/.config/rncbc.org/QjackCtl.conf".

Po otevření QJACKCTL se zobrazí uživatelské rozhraní s malým displayem a ikonami:

  1. Spustit (Start) - ikona spustí audioserver JACK a po jeho startu jsou k dispozici zvukové funkce.

    Zkuste server spustit. Může se stát, že se nespustí a v okně s hlášením se vypíše chyba protože ne všechno bylo nastaveno.

  2. Zastavit (Stop) - zastaví audioserver JACK.

    Když audioserver JACK běží ikona Zastavit jeho běh zastaví. V tuto chvíli lze zvuk nahrát nebo přehrát pouze prostřednictvím zabudovaných funkcí zvukových ovladačů ALSA arecord a aplay ('arecord soubor.wav', 'aplay soubor.wav').

  3. Hlášení (Messages) - v okně s hlášením jsou zaznamenané události serveru včetně chyb - logování, hlášení o běhu a stavu JACK serveru. V okně s dvěma založkami se najdou informace o zatížení systému, aktuálním nastavení…​ Z výpisu jde zjistit o jaký problém se jedná a chybu odstranit.

    Příklad "Hlášení" - vypsaná chyba při spouštění serveru
    19:42:30.191 Nastavit znovu statistiku.
    Cannot connect to server socket err = Adresář nebo soubor neexistuje
    Cannot connect to server request channel
    jack server is not running or cannot be started
    JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
    JackShmReadWritePtr::~JackShmReadWritePtr - Init no...
    ...
    control open "hw:0" (No such file or directory)
    Cannot initialize driver
    JackServer::Open failed with -1
    Failed to open server
    19:42:35.524 JACK byl zastaven
    19:42:39.992 Nepodařilo se připojit k serveru JACK
    ...
  4. Sezení (Patchbay) - v okně se ukládají nebo otvírají uložená sezení.

    Je podobné oknu Connect jen s tím rozdílem, že okno Connect ukazuje aktuální stav zapojení kdežto Patchbay slouží k uložení konkrétního hudebního projektu neboli sezení;

  5. Spojit (Connect) - v otevřeném okně je znázorněno zapojení aktivních audio klientů (aplikací, ovladačů ALSA).

    Tato spojení se lépe a přehledněji spravují v aplikaci PATCHAGE.

  6. Zapojovací deska (Status) - TODO;

  7. Ukončit (Quit) - ukončí aplikaci QJACKCTL.

  8. Nastavení[REF] (Setup) - v okně nastavení se nastavují parametry pro zvukový systém, volby a zobrazení aplikace;

  9. O…​ (About…​) - info o autorovi, verzi aplikace, odkaz na webové stránky vývojářů…​

Pod displayem jsou ikony pro "jack transport". Ikony slouží pro současné synchronizované spouštění, zastavení a přetáčení polohy všech aplikací připojených k audioserveru najednou. Podmínkou je, že každá z aplikací má ve svém nastavení zároveň povoleno dálkové JACK ovládání z prostředí okna QJACKCTL. Aplikaci bez povoleného "jack transport" lze spustit pouze z jejího okna bez synchronizace s jiným audiosoftwarem.

17.4.2. QjackCtl nastavení

2020-01-14

TIP: Jakékoliv nastavení zvukového serveru není potřeba měnit okamžitě čtením následujících řádků. Jsou pouze nastínením problému a úvodem pro pochopení audio funkcí systému. Nastavení lze měnit i po doladění systému a hardware kdy bude mnohem jednodušší audioserver nastavit.
  1. Záložka "Nastavení" → "Parametry"

    • Ovladač (DRIVER): 'alsa'

      Ovladač zvukové karty. Nejlepší a zřejmě jedinou volbou je defaultní linuxový zvukový systém ALSA[143] (Advanced Linux Sound Architecture). S firewire zvukovkou volte ovladač FIREWIRE.

    • ✓ Skutečný čas (REALTIME)

      Bez povolené realtime priority by byl audioserver v módu s nízkou latencí. Byl by obsluhován přednostně ale ne neprodleně.

    • Rozhraní (INTERFACE): '(default)'

      V nabídce se nastavují zvukové karty. Vyberte hardware, který bude použit pro práci se zvukem. JACK bude pracovat právě s vybranou kartou. Máte-li právě jednu instalovanou zvukovku (bez audia integrovaného[REF] na základní desce) je výběr zvukového hardware snadný. Stačí ponechat 'default' nastavení.

      ? Audio integrované na základní desce je zbytečným zatížením a je lepší je deaktivovat[REF] nemáte-li s ním nějaké úmysly nebo je-li integrované audio prozatím jediným řešením.
      INFO: S PCI kartou nezapomeňte na správné nastavení PCI LATENCY TIMER[REF] v BIOS, s kterým se dá docílit lepšího výkonu.
    • Vzorkovací kmitočet[153] (SAMPLE RATE): '48000'

      Obecný návod: samplovací frekvence by měla být minimálně dvojnásobkem frekvence nejvyššího zaznamenávaného tónu. Defaultní nastavení 48000Hz je většinově ideální. Lidské ucho umí zachytit frekvence zhruba od 16Hz do 20000Hz. Hodnoty CD:44100 a DVD:48000 jsou tedy nadlimitně postačující.

      20kHz x 2 = 40000Hz

      Čím jsou hodnoty vyšší tím vyšší jsou i nároky na počítač ale zároveň se snižuje zpoždění (latency). Hodnoty musí být podporovány zvukovou kartou. Nelze použít SAMPLE RATE 192000Hz na kartě, která tyto hodnoty neumí zpracovat. Zároveň - čím vyšší hodnota vzorkovacího kmitočtu je nastavena tím větší objem dat budou soubory obsahovat.

    • Snímky/Údobí (FRAMES/PERIOD): '1024'

      Čím nižší nastavení, tím nižší latence. Výchozí hodnotou je 1024. Běžné použití při tvorbě je od 64 do 256. Záleží na rychlosti hardware a celkovém doladění systému. Hodnotu snižujte až do doby než v přehrávaném zvuku nebude patrné praskání nebo lupání. S počítačem se nic nestane. Pouze bude deformovaný zvuk ve výstupu. Až se tak stane tak se v nastavení vraťte na předešlou hodnotu. Číslo zvyšujte do chvíle než přestane být patrný úbytek na kvalitě výsledného zvuku.

      Nastavení 16 nebo 32 má nejnižší zpoždění ale počítač nemusí mít bez akurátního nastavení[REF] nebo rychlého hardwaru dostatečný výkon. Začal bych na 128.

    • Údobí/Vyrovnávací paměť (PERIODS/BUFFER): '2'

      Hodnoty jsou dané. PCI kartám se nastaví hodnota '2', externí USB karty vyžadují nastavení '3'. Výběrem FIREWIRE ovladače se hodnota automaticky nastaví na '3'. Vyšší hodnoty implikují vyšší hodnoty latence.

    • Ovladač MIDI (MIDI DRIVER): 'žádný'

      Ovladač MIDI (RAW,SEQ) nebude nastaven žádný. Toto nastavení souvisí s volbou "Povolit podporu (MIDI) pro řadič (sekvencer) ALSA" na záložce "Různé".

    • Prodleva (LATENCY):

      Při nastavení parametrů je velmi důležitá informace v pravém dolním rohu - Prodleva. LATENCY (zpoždění) zvukového výstupu JACK. Je vyjádřením časového rozdílu mezi vstupem a výstupem audio signálu. Zpoždění by mělo být co nejnižší ale přizpůsobené hardwarovým možnostem computeru. Vysoké hodnoty[REF] LATENCY > 20ms nejsou pro tvorbu a zejména živé hraní vhodné. Příliš nízká prodleva zase konzumuje mnoho hardwarových prostředků a často jsou ve zvuku lupance a cvakání protože počítač nestíhá výpočty.

      INFO: Nezapomeňte se podívat i do BIOS nastavení. Na odezvu může mít velký vlyv i HYPER-THREADING[REF], správné nastavení APM[REF], zbytečně aktivovaná interní audiokarta[REF], nastavení latence PCI[REF] a další nastavení BIOS.

      LATENCY je nutné nastavit tak aby výkon hardwaru a poslouchatelnost nahrávky vzájemně korespondovali. Tato hodnota nejde měnit přímo. Její hodnota se mění podle hodnot v nastavení parametrů:

      • Vzorkovací kmitočet (SAMPLE RATE)

      • Snímky/Údobí (FRAMES/PERIOD)

      • Údobí/Vyrovnávací paměť (PERIODS/BUFFER)

  2. Záložka "Nastavení" → "Pokročilé" volby

    • Zpoždění spuštění: 2s → 5s

      Kliknutím na ikonu Spustit (Start) v rozhraní hlavního okna aplikace QJACKCTL se spustí audioserver JACK. Tato volba pouze prodlouží čas spouštění jackd daemona ze 2 na 5 sekund. Rozdíl není velký ale nahráním účtu s automatickým spuštěním[REF] QJACKCTL se malinko opozdí start audioserveru a systém dostane víc času na organizaci plochy a nahrání potřebného pro úspěšný start jackd.

  3. Záložka "Volby" → "Skriptování"

    V skriptovacím prostoru se zapisují příkazy nebo odkazy na vlastní skripty, které mají být provedeny při manipulaci se zvukovým daemonem.

    • Provést skript při spuštění: 'killall pulseaudio &'

      Tento zápis je příkladem. Do řádku tedy není potřeba cokoliv psát. Bez nainstalovaného PULSEAUDIO serveru nevykoná příkaz žádnou akci. Vlastně vykoná ale zbytečnou. S nainstalovaným PULSEAUDIO serverem by takto zapsaný příkaz ukončil jeho běh. Jeho konfigurační soubor by se však musel ještě upravit protože PULSEAUDIO je nastaven tak aby se po ukončení znovu automaticky spustil.

    • Provést skript po spuštění: '(sleep 5 ; a2jmidid -e) &'

      Utilita "sleep" odloží vykonání následujícího ";" nástroje "a2jmidid -e" o "5" sekund a oba procesy spustí jako samostatné procesy "&"[REF]. Je správné nechat spouštět utility pro rozšírení funkčnosti jackd daemona až nějakou chvilku po startu audioserveru. Praktické výhody utility a2jmidid se projeví při přepojování audio softwaru v GUI rozhraní PATCHAGE[REF].

    • Při zastavení: 'nějaký_příkaz'

      TIP: Při zastavení audioserveru může kupříkladu systém vypsat hlášení o zastavení audioserveru.
    • Po zastavení: 'nějaký_příkaz'

      V tomto řádku by s nainstalovaným PULSEAUDIO byl příkaz pro jeho opětovné spuštění. Servery mohou být dokonce spuštěny současně a PULSEAUDIO se připojí k JACK jako hlavnímu serveru. Pro používání dvou audioserverů JACK a PULSEAUDIO pracujících na pozadí systému je nutné ještě doinstalovat 2-3 PULSEAUDIO utility, které umožňují spolupráci mezi audioservery uskutečnit.

  4. Záložka "Zobrazit" - nastavení rozhraní (interface) QJACKCTL.

  5. Záložka "Různé"

    • Spustit zvukový server JACK okamžitě při spuštění aplikace

    • Nastavit jako dočasný server

    • Povolit ikonu v systémové části panelu - toto nastavení má nesprávný překlad a zatržená volba vyvolá opačnou akci.

    • Spustit program zmenšený do systémové části panelu

    • Povolit podporu (MIDI) pro řadič (sekvencer) ALSA

    • Povolit rozhraní D-Bus

    • Enable JACK D-Bus interface

V této fázi ještě nemusí spuštění JACK serveru fungovat. V dalším je potřeba provést diagnózu[REF] a vytvořit si obrázek o konfiguraci systému a jeho schopnosti zpracovávat audio signál.

17.4.3. Patchage

2019-12-09

TODO

18. Instalace RT-KERNEL

2020-01-14

Jest-li jste už v SYNAPTIC[REF] úspěšně instalovali jakýkoliv software tak instalace realtime jádra je už víceméně triviální záležitostí. Instalovat RT-KERNEL lze i v CLI[REF].

Je potřeba vyhledat obraz (image) jádra. SYNAPTIC vyhledá image jádra stačí stisknout kombinaci kláves [CTRL] a [f] a zapsat hledaný výraz "linux-image".

Jakýkoliv KERNEL má v názvu uvedeno označení architektury PC, pro kterou je vhodný. RT-KERNEL obsahuje i skupinu znaků "-rt-". Popis meta-package označuje automatickou instalaci nejvyšší verze bez potřeby hledání číselného označení ze strany uživatele. Podle architektury je obraz:

  • linux-image-rt-amd64 - 64-bitový;

  • linux-image-rt-686-pae - 32-bitový.

Výběrem vhodné verze operační systém nainstaluje a nastaví vše potřebné bez ptaní. Po RESTART bude mít DEBIAN realtime jádro. Aktualizace jádra probíhají automaticky spolu s upgrade[REF] dalšího software.

Nestává se to ale nebude-li něco po startu fungovat nebo nebude-li RT-KERNEL vůbec bootovat restartujte počítač. V GRUB nabídce vyberte RECOVERY MODE[REF]

> Debian GNU/Linux
> "Advanced options for Debian GNU/Linux"
  > "Debian GNU/Linux, with Linux x.x.x (recovery mode)"
              // kde x.x.x je číselné označení verze LINUX jádra

s nejvyšší verzi jádra. Tu verzi, která byla spouštěna ještě před instalací RT-KERNEL. Nevybírejte "rt" (realtime) verzi nově instalovaného ale nefunkčního jádra.

  • Po startu systému, přihlášením se k ROOT účtu odinstalujte[REF] poškozenou instalaci RT-KERNEL. Použijte příkaz s vnitřní funkcí purge 'apt-get purge verze_jádra', která odstraní i konfigurační soubor jádra nechcete-li si ho ponechat pro další rozbor problému. Po odinstalaci nefunkčního jádra bude systém automaticky bootovat s verzí posledního funkčního jádra.

  • Víte-li o nesprávném nastavení v konfiguračním souboru jádra[REF] - opravte ho.

  • Pokuste se o další instalaci RT-KERNEL ale NEINSTALUJTE opětovně linux-image s popisem meta-package, který automaticky instaluje nejnovější jádro. Leda, že ho chcete reinstalovat a opětovně vyzkoušet. Instalujte jádro s nižším číslem verze než je číslo verze nejvyšší, která je v seznamu nalezených RT-KERNEL. Možno se problém částečně vyřeší a potom zůstává pouze zjistit

    • zda je poškozený nejnovější image jádra;

    • zda chyba nebyla na straně uživatele nesprávným zapisem v konfiguračním souboru jádra;

    • nebo zda problém není v hardware, který některou z RT funkcí nepodporuje.

Do vyřešení problému neaktualizujte RT-KERNEL s nižším číslem na verzi novější ale nefunkční. Když tak vyčkejte na vydání další verze RT-KERNEL novější než verze nefukční. Až poté se s opatrností pokuste aktualizovat.

Každá rada dobrá. V takovém případě přichází nutnost trošku experimentovat buď s verzemi nebo hledat na internetu zda podobný problém nemá i někdo jiný. Nebude-li fungovat jakákoliv verze RT-KERNEL ale instalace generického KERNEL je funkční a bez problémů bude problém nejspíš v kombinaci hardwarerealtime.

19. RTCQS

19.1. Download

2019-12-09

Především - spěch není na místě. Není v moci koholiv postavit si počítač, nakonfigurovat ho, odladit potřebné, instalovat aplikace a vytvořit Opus v průbehu vlahého letního večera. Implementace změn po malých jednotlivých krocích dovoluje sledovat nechtěné chování systému přehledněji a ještě pochopit souvislosti a návaznosti mezi procesy.

Velkým pomocníkem při prvotním prozkoumání audio systému počítače, tedy jeho možností, nastavení a připravenosti zpracovávat a obsluhovat RT[44] audioprocesy je perl[154] skript "realTimeConfigQuickScan.pl" - RTCQS[155]. RTCQS nelze instalovat přes SYNAPTIC. Stáhne se a spustí příkazem v TERMINAL. Další nástroje (git, mercurial, perl/tk) lze instalovat i přes SYNAPTIC[REF].

Nejdřív je nutné přihlášení k TERMINAL s právy root 'su -'[REF]. Příkazem pro instalaci balíků 'apt-get'[156] s volbou 'install' se v DEBIAN instalují všechny příkazy a aplikace skrze CLI. Nainstalování 'git' příkazu je potřebné ke stažení skriptu RTCQS ze serveru GITHUB. Programové balíčky "mercurial" a "perl/tk" jsou podpůrnými balíčky.

xfce4-terminal
$ su -
$ apt-get install git mercurial perl-tk

Při jakémkoliv instalačním dotazu stačí dotaz potvrdit klávesou [ENTER]. Po úspěšném instalačním procesu již není doporučeno pokračovat v práci jako root a klávesovou zkratkou [CTRL]+[d] se práce v root účtu ukončí. TERMINAL se přepne do uživatelského účtu.

Je na volbě každého, do kterého adresáře bude stahovat. Cestu pro stažení skriptu zapište i v příkazovém řádku. Do pracovního adresáře se stažená složka se soubory skriptu uloží. V příkladu je použit adresář "~/Stažené". Tilda[REF] ~ je zástupním znakem domovského adresáře.

xfce4-terminal
$ cd ~/Stažené

Stažením skriptu RTCQS příkazem 'git' s jeho vnitřní funkcí 'clone' a zápisem adresy, ze které se bude stahovat

xfce4-terminal
$ git clone git://github.com/raboof/realtimeconfigquickscan.git

a následným přepnutím pracovního adresáře do složky se skriptem

xfce4-terminal
$ cd realtimeconfigquickscan

lze RTCQS konečně spustit.

xfce4-terminal - Příklad v jednom okně
$ su -                                          // ROOT
$ apt-get install git mercurial perl-tk         // instalace podpůrných nástrojů
                                                // [CTRL]+[d] - ROOT odhlášení
$ cd ~/Stažené                                  // kam se bude skript stahovat
$ git clone git://github.com/raboof/realtimeconfigquickscan.git
                                                // 'git' stažení
$ cd realtimeconfigquickscan                    // přepnutí do staženého adresáře
$ perl ./QuickScan.pl                           // 1. experimentální GUI verze
$ perl ./realTimeConfigQuickScan.pl             // 2. spuštění RTCQS v CLI

19.2. Výstup skriptu

2020-01-03

Spuštěný skript do výstupu vypíše standardně 15 parametrů souvisejících s audio nastavením počítače a jejich aktuální stav spolu s malou nápovědou jak případný nedostatek vyřešit. Je to první konkrétní obrázek o aktuálním stavu a připravenosti počítače.

xfce4-terminal
$ perl ./QuickScan.pl                           // 1. experimentální GUI verze
$ perl ./realTimeConfigQuickScan.pl             // 2. spuštění RTCQS v CLI

Ač je GUI verze značena jako experimentální - funguje a výstup je barevný. Po spuštění skriptu se v TERMINAL vypíše status. Stav, ve kterém se nachází počítač. Výsledek každé operace je ohodnocen buď 'good' nebo 'not good'. Jakákoliv chybová 'not good' zpráva se musí řešit aby byl computer řádně připraven na zpracování audio dat v reálném čase. Instalací DEBIAN RT-KERNEL[REF] budou některé z kontrol skriptu automaticky úspěšné.

INFO: Nápovědy na webech, vlákna ve fórech a webové adresy uvedené ve výstupu skriptu nemusí být k dnešnímu datu aktuální.
xfce4-terminal - Příklad výstupu RTCQS
$ perl ./realTimeConfigQuickScan.pl
== GUI-enabled checks ==
Checking if you are root... no - 'good'
Checking filesystem 'noatime' parameter... 4.9.0 kernel - 'good'
  (relatime is default since 2.6.30)
Checking CPU Governors
  CPU 0:'powersave' CPU 1:'powersave' CPU 2:'powersave' CPU 3:'powersave' - 'not good'
  Set CPU Governors to 'performance' with 'cpupower frequency-set -g performance'
    or 'cpufreq-set -c <cpunr> -g performance' (Debian/Ubuntu)
  See also: http://linuxmusicians.com/viewtopic.php?f=27&t=844
Checking swappiness... 60 - 'not good'
  ** vm.swappiness is larger than 10
  set it with '/sbin/sysctl -w vm.swappiness=10'
  See also: http://linuxmusicians.com/viewtopic.php?f=27&t=452&start=30#p8916
Checking for resource-intensive background processes... none found - 'good'
Checking sysctl inotify max_user_watches... < 524288 - 'not good'
  increase max_user_watches by adding 'fs.inotify.max_user_watches = 524288'
  to /etc/sysctl.conf and rebooting
  For more information
  see http://wiki.linuxaudio.org/wiki/system_configuration#sysctlconf
Checking access to the high precision event timer... not readable - 'not good'
  /dev/hpet found, but not readable.
  make /dev/hpet readable by the 'audio' group
  For more information
  see http://wiki.linuxaudio.org/wiki/system_configuration#hardware_timers
Checking access to the real-time clock... not readable - 'not good'
  /dev/rtc found, but not readable.
  make /dev/rtc readable by the 'audio' group
  For more information
  see http://wiki.linuxaudio.org/wiki/system_configuration#hardware_timers
Checking whether you're in the 'audio' group... no - 'not good'
  add yourself to the audio group with 'adduser $USER audio'
Checking for multiple 'audio' groups... no - 'good'
  chrt: failed to set pid 0's policy: Operation not permitted
Checking the ability to prioritize processes with chrt... no - 'not good'
  Could not assign a 80 rtprio SCHED_FIFO value. Set up limits.conf.
  For more information
  see http://wiki.linuxaudio.org/wiki/system_configuration#limitsconfaudioconf
Checking kernel support for high resolution timers... found - 'good'
Kernel with Real-Time Preemption... not found - 'not good'
  Kernel without real-time capabilities found
  For more information
  see http://wiki.linuxaudio.org/wiki/system_configuration#installing_a_real-time_kernel
Checking if kernel system timer is high-resolution... found - 'good'
Checking kernel support for tickless timer... found - 'good'
== Other checks ==
Checking filesystem types... ok.
** Set $SOUND_CARD_IRQ to the IRQ of your soundcard to enable more checks.
   Find your sound card's IRQ by looking at '/proc/interrupts' and lspci.

V začátku je pro správnou funkčnost nejdůležitější vyřešit správné nastavení audio group (skupiny audio). Další problémy stačí řešit postupně.

Ze začátku není hudební sezení (projekt) tak objemné a náročné na systémové prostředky. XRUNs a lupance tedy nemusí být v počátcích nutností a tak častá je-li počítač alespoň trochu hardwarově a výkonnostně vybaven. V průběhu seznamování s aplikacemi a se systémem lze pomalu jednotlivá chybová hlášení skriptu RTCQS odstraňovat a postupně nastavovat jejich správnou funkčnost.

Další nedostatky a nastavení jako jsou nepotřebné služby, nepotřebné KERNEL moduly[157] atd. se odladí v průběhu času. Uživatel porozumí hardwarovým a softwarovým provázanostem v jeho systému. A v případě i když dočasného ale zdárného odstranění problému zjistí, která jednotlivá komponenta, nastavení či jejich kombinace má přímý a okamžitý vliv na výsledný zvuk. Zjistí, kde má jeho systém nedostatky ve výkonu a které z nastavení problém alespoň částečně řeší. Ví, kterému z nastavení je potřeba věnovat zvýšenou pozornost. Poté si lze trpělivě pohrát s konkrétními hodnotami nastavení.

LINUX znamená vědět co, kde, kdy, proč, jak. V tom je jeho nejsilnější stránka a zároveň nepochopení a odmítání ze strany IT odborníků-klikačů. Porozumět digitálnímu systému je náročná cesta. Ale v čase je tato cesta prozíravější než cesta tupého kopírování bez rozmyslu a bez přísně logického uvažování a pochopení souvislostí. Z levného, bezpracného a mazaného přístupu k řešení jakéhokoliv problémů pramení neschopnost a neochota se cokoliv naučit. A toto není reklama - "Investuj do svých vědomostí a znalostí". Toto je holý fakt. IT firmy nehledají a neplatí upovídané Neználky ale specializované odborníky.

19.3. RTCQS output - zoom

19.3.1. Uživatelské spuštění

2019-12-11

xfce4-terminal - Výstup RTCQS - Kontrola uživatelského spuštění
Checking if you are root... yes - not good
You are running this script as root. Please run it as a regular user for the most reliable results.
...

RTCQS skript se spouští z uživatelského účtu. Je-li ve výstupu zpráva 'not good' odhlašte se ze správcovského účtu a skript spusťte jako user.

19.3.2. 'noatime' parametr

2019-12-10

Volba noatime[71] neaktualizuje přístupový čas k souboru kdykoliv je soubor načten.

xfce4-terminal - Výstup RTCQS - Kontrola 'noatime' parametru
...
Checking filesystem 'noatime' parameter... 4.19.0 kernel - good
(relatime is default since 2.6.30)
...

V instalaci[REF] byl tento atribut nastaven. Zkontrolujte si toto nastavení ještě jednou. Atribut se nastaví v souboru s tabulkou souborového systému "/etc/fstab"[REF].

19.3.3. CPU Governor

2019-12-11

Funkce CPU Governor je poměrem mezi výkonem a spotřebou energie procesoru. Anglicky se technologie dynamického škálování frekvence nazývá CPU throttling. Funkcí lze řídit i teplotu CPU.

xfce4-terminal - CPU Governor ve výstupu RTCQS
...
cat: /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor:
Adresář nebo soubor neexistuje
Checking CPU Governors... CPU 0: '' - not good
Set CPU Governors to 'performance' with
 'cpupower frequency-set -g performance' or
 'cpufreq-set -c <cpunr> -g performance' (Debian/Ubuntu)
See also: http://linuxmusicians.com/viewtopic.php?f=27&t=844
...

Funkce Power Management[REF] (Advanced Power Management) byly deaktivovány v BIOS. Proto toto nastavení jako jediné nemusí splňovat podmínku řádného nastavení. Neexistující nastavení CPU Governor tedy není na překážku a může zůstat bez povšimnutí v neošetřeném stavu 'not good'.

V noteboocích je všechno jinak a musí mít nastavenou hodnotu performance.

  • performance - nastaví CPU na maximální možnou frekvenci. Computer má neustále plný výkon.

  • powersave - udržuje procesor na nejnižší možné frekvenci. Počítač maximálně šetří energií.

  • userspace - kontrola frekvence na úrovni uživatele. Uživatel si sám spravuje nastavení.

  • ondemand - frekvence CPU je škálovaná jádrem okamžitě a skokově podle potřeb.

  • conservative - frekvence je škálovaná jádrem ale na rozdíl od ondemand režimu nezvyšuje frekvenci skokově ale postupně po krocích.

  • jackfreqd - specializovaný jackfreqd[158] škáluje v závislosti na DSP-load a ne CPU-load. Není součástí repozitáře DEBIAN a musí se instalovat manuálně. Na stránkách[158] vývojáře je instalační návod popsán.

DSP[159] (Digital Signal Processor) je v počítači pro tvorbu hudby velmi důležitou technologií. Analogový signál je zpracován digitální cestou a může být zpracováván i v reálném čase. V takovém případě může být vytížení procesoru velmi vysoké. Záleží na hardwarových možnostech, nastavení, odladění…​ Analogový signál (audio vstup např. ze zvukovky) je v reálném čase a na začátku procesu konvertován A/D (Analog to Digital) převodníkem do digitální podoby. Okamžitě je softwarem (např. efektově) algoritmicky zpracován a upraven.

vstupní analogový signál → A/D převodník → DSP → software → DSP → D/A převodník → výstupní analogový signál

Po digitální úpravě jsou data zpětně konvertovány D/A (Digital to Audio) převodníkem do analogu, odeslány (např. do zvukové karty) a výsledný analogový signál přehrán na jejím výstupu. Právě jackfreqd je programován aby vytížení procesoru reguloval dle DSP-load (DSP zatížení) a ne podle CPU-load (zatížení procesoru). Zapojení mnoho efektů paralelně nebo v sérii a navíc v reálném čase je pro počítač velmi zatěžující. V domácí produkci je výhodnější použít k propojení vícero slabších počítačů než používat jeden výkonný na vše. Situaci vyřeší i použití externího hardware[REF]. Při domácí tvorbě se však většinou tvoří po jednotlivých stopách a současné zpracování mnoha stop s DSP technologií v reálném čase je výjimečné. Vyzkoušejte - uvidíte.

TIP: Je-li v BIOS správně nastaven APM[REF] je vyhovující - a na desktopPC plně postačuje - žádný CPU governor nenastavovat. NOTEBOOK je v tomto ohledu v nevýhodě. O konfiguracích souvisejících především s NOTEBOOK se rozepisuji proto, že ne každý musí nutně použít hardware, který je doporučován. Nemusí mít třeba možnosti nebo ho k rozhodnutí přivedli jiné důvody. Zároveň je užitečné porozumět mechanizmům souvisejících s nastaveními hardware, LINUX RT-KERNEL, subsystému, software a logice provázanosti systémových procesů.

Pro zjištění relevantních informací a manipulaci se škálovacími funkcemi v DEBIAN jsou určeny:

  • starší nástroj cpufreqd v DEBIAN 9 "STRETCH";

  • a novější balík linux-cpupower z DEBIAN 10 "BUSTER".

TIP: Na noteboocích si můžete vytvořit jeden účet určený pouze pro hudební tvorbu. Ve spouštěcím skriptu tohoto účtu nastavte režim performance pro maximální výkon CPU. Další účet může být nastaven pro běžnou práci nebo přístup k internetu.

Okamžitý stav CPU Governor a informace o aktuálním nastavení se v příkazovém řádku podle instalované verze distribuce zjistí příkazy:

xfce4-terminal - Informace o nastavení CPU Governor
$ cpufreq-info                                  // DEBIAN 9 "STRETCH"
$ cpupower frequency-info                       // DEBIAN 10 "BUSTER"
analyzing CPU 0:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency:  Cannot determine or is not supported.
  hardware limits: 800 MHz - 3.20 GHz
  available cpufreq governors: performance powersave
  current policy: frequency should be within 800 MHz and 3.20 GHz.
                  The governor "powersave" may decide which speed to use
                  within this range.
  current CPU frequency: Unable to call hardware
  current CPU frequency: 1.74 GHz (asserted by call to kernel)
  boost state support:
    Supported: yes
    Active: yes

Ne všechny režimy musí být implementované. V řádku "available cpufreq governors" je vypsaná informace o podporovaných nastaveních. "Current policy" popisuje, ve kterém režimu CPU právě běží a vypíše použitý rozsah frekvencí.

Stávající frekvenci v příkazovém řádku vypíše příkaz:

xfce4-terminal - Aktuální stav frekvence procesoru
$ cat /proc/cpuinfo | grep MHz
cpu MHz         : 2793.065

Takto napsaný příkaz poskytne pouze statickou informaci právě obdrženou ze souboru "/proc/cpuinfo".

Pro změnu nastavení slouží příkaz:

xfce4-terminal - Nastavení CPU Governor
$ cpufreq-set -r -g performance                 // DEBIAN 9 - plný výkon
$ cpufreq-set -r -g powersave                   // úsporný režim
$ cpupower frequency-set -g performance         // DEBIAN 10 - plný výkon
$ cpupower frequency-set -g powersave           // úsporný režim
...

Nahlédněte do manuálu 'man cpufreq-set' v DEBIAN 9 nebo 'man cpupower-frequency-set' v DEBIAN 10.

S deaktivovanými technologiemi PCI power-management a/nebo PCIe power-management, "EIST"…​, "halt-states" v nastavení Advance Power Management[REF] by měl režim ondemand běžet bez způsobování XRUNS.

19.3.4. 'swappiness' - stránkování

2019-12-11

V instalaci při rozdělování harddisku byl SWAP[126] oddíl[REF] vytvořen v první oblasti. Využití virtuální paměti ocení především majitelé starších počítačů s nízkou kapacitou fyzické paměti RAM. Novější počítače swapovací prostor používají sporadicky a vytvoření swapovacího oddílu na harddisku je dáno zejména historickými důvody zachování zpětné kompatibility. Bez tohoto prostoru na harddisku a nedostatku fyzické paměti aplikace spadne s hlášením 'out of memory'.

SWAP rozšiřuje kapacitu fyzické paměti RAM. Při nedostatku paměti RAM se část dat přesune do SWAP prostoru na disku. Výhodou je, že paměť jak fyzická tak i virtuální jsou organizovány operačním systémem do jednoho celku. Nevýhodou je pomalé zpětné nahrávání dat z harddisku. Rychlost závisí na více faktorech ale nejdůležitějším je rychlost harddisku.

Stránkování, uváděné někdy jako swapování, má systém nastaven instalací ale jeho hodnoty se dají upravovat.

xfce4-terminal - Výstup RTCQS - Swappiness (stránkování)
...
Checking swappiness... 60 - not good
** vm.swappiness is larger than 10
set it with '/sbin/sysctl -w vm.swappiness=10'
See also: http://linuxmusicians.com/viewtopic.php?f=27&t=452&start=30#p8916
...

Aktuální hodnoty nastavení swappiness jsou v souboru "/proc/sys/vm/swappiness". Není akutní psát právě příkaz

xfce4-terminal
$ cat /proc/sys/vm/swappiness          // aktuálně zavedená hodnota
60

a na aktuální hodnotu "/proc/sys/vm/swappiness" se lze podívat i textovým editorem[REF] přes souborového správce[REF].

Default nastavení vm.swappiness=60[160] znamená, že swapovací prostor začne být systémem používán v okamžiku, kdy je fyzická paměť volná ze 60%. Aby se omezilo používání virtuální paměti a aplikace měli rychlejší odezvu je potřeba 'vm.swappiness' nastavit na hodnotu '10'. Swapovací prostor začne být používán až ve chvilce, kdy bude fyzická paměť RAM volná z 10%.

Jedním z následujících příkazů se nastaví hodnota '10' ale pouze dočasně do příštího restartu systému.

xfce4-terminal
$ sysctl -w vm.swappiness=10           // 1. dočasné nastavení hodnoty
$ echo 10 > /proc/sys/vm/swappiness    // 2. dočasné nastavení hodnoty
!! Nezapomínejte si zálohovat upravované soubory.

Pro trvalé nastavení hodnoty je zapotřebí editovat soubor "/etc/sysctl.conf". Zapsáním řádku

"/etc/sysctl.conf" - Vytvoření nové hodnoty pro 'vm.swappiness'
...
# Hodnota pro stránkování virtuální paměti SWAP
vm.swappiness=10
...

bude počítač po restartu pracovat s tímto nastavením. Okamžitá změna bez restartu se aplikuje příkazem 'sysctl -p'[161].

Vytvoření vlastního komentáře v souboru je doporučeno. Komentář zpřehledňuje kód a zároveň při hledání textu v souborech stačí hledat SWAP. Číslo může mít jakoukoliv hodnotu od 0-100 ale nejčastěji se používá:

  • '0' - swap je zakázán;

  • '1' - minimální stránkování;

  • '10' - doporučená hodnota pro zlepšení výkonu;

  • '60' - defaultní nastavení v instalaci DEBIAN

  • '100' - maximální stránkování.

19.3.5. Procesy na pozadí

2020-01-03

Na pozadí běžící procesy jsou jedním z mnoha ne-li největším problémem způsobujícím XRUNs. XRUN je podtečení nebo přetečení ALSA audio BUFFERu. Systém není dostatečně rychlý pro přenos nebo zpracování dat uložených v BUFFER kontejneru.

INFO: Jakákoliv nastavení jsou v kompetenci uživatele nebo-li správce. Pracuje-li počítač jak má a nejsou-li patrná jakákoliv zpoždění nebo nedostatky při nahrávání, přehrávání, zpracování zvukového signálu není v podstatě důvod cokoliv nastavovat. Proč opravovat nebo nastavovat cokoliv co funguje jak má?
xfce4-terminal - Výstup RTCQS - Procesy na pozadí
...
Checking for resource-intensive background processes... none found - good
...

Zatím jsem se nesetkal, že by tato kontrola vypsala negativní hlášení. Zřejmě to bude tím, že už v základech nastavení BIOS nejsou aktivované některé funkce[REF] a v systému není spuštěna funkce šifrování obsahu disků. Tyto technologie jsou mimořádně náročné na množství výpočetního času procesoru. Jsou-li aktivní, tak je určitě v MMX[REF] realtime systému deaktivuji hned jakmile je deaktivovat lze.

  • S virtualizací jiných operačních systému jsou jejich spuštěním v systému přidělovány prostředky nejen pro LINUX ale zároveň i prostředky pro další operační systém. V počítači je tak spuštěno víc operačních systémů a výpočetní čas, paměť, disk, grafika nebo periferie jsou pro zajištění správné funkčnosti všech systémů sdílené.

  • Šifrování disků je praktické ale jenom tam kde to je potřeba. Například čtení audio souborů v DAW[97] vyžaduje mnoho výpočtů pro převedení dat z podoby zašifrované do podoby systémem čitelné. To se týče i spouštění aplikací ze zašifrovaného disku atd. Nemyslím, že by šifrování bylo jakkoliv potřebné pro práci s audiodaty. Šifrování dat v audiosystému je jednou z největších chyb, které se může linuxový administrátor dopustit.

Mezi další jedlíky systémových prostředků aniž by je bylo vidět patří:

  • daemoni pro škálovací funkce procesoru. Na noteboocích zřejmě není jiná možnost než vhodně nastavit CPU GOVERNOR[REF];

  • nevhodně zvolení správci oken[REF] nebo nekteří display manageři[162] (GDM, KDM…​), kteří poskytují systémovou podporu okenním správcům. Display managerem pro XFCE je lightDM[88];

  • automaticky spouštěné služby[REF] na pozadí spravující spotřebu energie a spořiče;

  • povolená průhlednost oken a zbytečné efekty na pracovní ploše (Compiz, KWin, Marco, Enlightenment, Mutter);

  • WIFI služby skenují na pozadí bezdrátovou síť a mohou způsobovat při zpracování zvuku lupance. Je lepší při realtime tvorbě wifinu nepoužívat. Není-li zbytí nedá se nic dělat. Alespoň je známo kde by mohl být taky problém. WIFI je spravována NetworkManagerem s použitím wpa_supplicant služby[REF]. Některé notebooky jsou opatřeny i fyzickým hardwarovým vypínačem WIFI;

  • servis pro GNOME virtuální souborový systém GVFS[REF];

  • mnoho systémových prostředků lze uvolnit zavřením nepotřebných aplikací;

  • resamplováním vzorků "on-the-fly" s jinou samplovací frekvencí (vzorkovacím kmitočtem) než má JACK ve svém nastavení[REF] může být procesor velmi vytížen;

  • moduly[REF] v LINUX jádře, které poskytují podporu různému hardwaru ač hardware není uživatelsky vůbec využíván. Každý z modulů i ten nepotřebný si však v systému rezervuje prostředky;

  • konflikty v IRQ nastaveních[REF]. Zvuková karta by neměla sdílet prostředky IRQ s jiným zařízením.

19.3.6. 'max_user_watches'

2019-12-10

Subsystém linuxového jádra inotify[163] poskytuje notifikace o událostech v souborovém systému. Jeho funkcí je rozšíření možností souborových systémů. Zachycuje události na adresářích a souborech a tyto změny jsou předávány systému potažmo aplikacím. Sleduje následující události:

  • vytvoření, přesun, smazání

  • otevření, zavření

  • čtení, změnu

  • změnu atributů

Jeho praktickou stránkou je, že událostí na některém z adresářů nebo souborů lze automaticky provést předem definovanou akci i na uživatelské úrovni.

xfce4-terminal - Výstup RTCQS - 'max_user_watches'
...
Checking sysctl inotify max_user_watches... < 524288 - not good
increase max_user_watches by adding 'fs.inotify.max_user_watches = 524288' to /etc/sysctl.conf and rebooting
For more information, see http://wiki.linuxaudio.org/wiki/system_configuration#sysctlconf
...

Aktuální stav celého subsystému inotify je zachycen ve složce "/proc/sys/fs/inotify/". Nastavení položky 'max_user_watches' je v souboru "/proc/sys/fs/inotify/max_user_watches".

xfce4-terminal
$ cat /proc/sys/fs/inotify/max_user_watches
65536
!! Pište si poznámky, děláte-li v systému při plném vědomí a se vší zodpovědností nejisté ale nutné pokusy.

Pro hladší chod systému je vhodná úprava hodnot[164] 'fs.inotify.max_user_watches'. Toto číselné nastavení je vyjádřením maximálního množství souborů na kterých může systém s inotify monitorovat změny. Příliš nízké hodnoty mohou způsobit zlyhání inotify subsystému. Vysoké hodnoty ve zvýšené míře konzumují - a zbytečně - paměť RAM. Default hodnoty mohou zůstat klidně i beze změn. Jejich změnou se v kontextu audio výkonu nedocílí žádné významné změny. Jde jen o to aby měl systém dostatek volných prostředků pro DAW aplikace, které potřebují okamžitý přístup k mnoha souborům otevřeným současně. Zvýšením vstupních hodnot 'max_user_watches' bude mít sice systém větší spotřebu paměti RAM ale nemusí se následně věnovat nedůležitým ale vyžadovaným inotify akcím. Zaplní-li se paměť začně systém používat SWAP[REF] ale při nedostatku paměti alespoň nezatuhne. Bude-li s tímto nastavením docházet k zaplnění paměti je na čase paměť RAM fyzicky rozšířit eventuálně nastavit o málo nižší hodnotu ale s vědomím, že tomu tak je.

Doporučená je hodnota 'fs.inotify.max_user_watches=524288'. Číslo je násobkem 32768 (32K) a jakákoliv jiná hodnota podléhá tomuto faktu.

Hodnota se nastaví ve stejném souboru jako hodnota 'swappiness'[REF] - v souboru "/etc/sysctl.conf". Za řádkem se 'swappiness' dopište 'fs.inotify.max_user_watches=524288'.

! Pozor na překlepy.
"/etc/sysctl.conf" - Vytvoření nové hodnoty pro max_user_watches
...
# Hodnota pro stránkování virtuální paměti SWAP
vm.swappiness=10
# INOTIFY nastavení
fs.inotify.max_user_watches=524288
...

Buď po restartu nebo záhy zadáním příkazu 'sysctl -p' do CLI bude PC používat toto nastavení.

INFO: Ať jsou jakékoliv problémy změny se dají vrátit v RESCUE MODE[REF].

Počet momentálně otevřených souborů lze zjistit nástrojem 'lsof' (list of open files). Příkaz 'grep' vyhledá v jeho výstupu řádky s řetězcem "inotify" a příkaz 'wc -l' (word count -lines) spočítá množství řádků. Bez 'wc -l' vypíše příkaz všechny otevřené soubory s řetězcem "inotify". Jeden na každý řádek.

xfce4-terminal
$ lsof | grep -i inotify | wc -l
194

19.3.7. HPET timer

2019-12-17

Použití hardwarových časovačů[REF] (hardware timers)

  • HPET - High Precision Event Timer (zařízení "/dev/hpet")

  • RTC - Real Time Clock[REF] (zařízení "/dev/rtc")

v některých audio aplikacích, které se napřímo připojují ke zvukovému systému ALSA skrze[REF] SEQuencer nebo RAW MIDI může být nejednoznačné. Velmi často se jejich MIDI časování vylepší pouze softwarově za použití KERNEL modulu[REF] snd-hrtimer (High Resolution software-based timer). Hardwarový časovač je u nich k nepotřebě.

TIP: Hardwarová zařízení jsou v kořenovém adresáři "/dev". V této složce jsou informace jak o nainstalovaných harddiscích tak i optické mechanice a dalších hardwarových zařízeních a lze je prohlížet textovým editorem.

V jiných situacích je však použití hardwarových časovačů daleko lepším řešením. Některé ALSA MIDI sequencery nebo DAW software mohou profitovat právě z hardwarových časovačů a proto je dobré je nastavit.

Informace o dostupných a aktuálně zavedeném časovači jsou v adresáři "/sys/devices/system/clocksource".

xfce4-terminal
$ cat /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc hpet acpi_pm
$ cat /sys/devices/system/clocksource/clocksource0/current_clocksource
tsc
xfce4-terminal - Výstup RTCQS - Hardwarový časovač HPET
...
Checking access to the high precision event timer... not readable - not good
/dev/hpet found, but not readable.
make /dev/hpet readable by the 'audio' group
For more information, see http://wiki.linuxaudio.org/wiki/system_configuration#hardware_timers
...

Ve výstupu RTCQS zpráva 'not readable - not good' oznamuje, že audio skupina nemůže informace o zařízení "/dev/hpet" číst i když soubor existuje. Proto je potřebné nastavit přístupová práva skupiny audio pro čtení nastavení HPET. V tomto případě se nejedná o klasická přístupová práva[REF] ale o přímý přístup skupiny k nastavením hardwarových parametrů.

Změna přístupových práv k hardwarovým zařízením a nastavení nových hodnot není složité. Ale určitě je pracnější a časově náročnější.

Změna se v systému zaznamená v adresáři "/etc/udev/rules.d" vytvořením souboru s názvem "40-timer-permissions.rules". Operaci lze provést i ve správci souborů[REF] nebo otevřením[REF] textového editoru[REF] s ROOT právy a uložením editovaného souboru do lokace "/etc/udev/rules.d".

xfce4-terminal - Série příkazů pro editaci souboru "40-timer-permissions.rules"
$ su -                                          // ROOT přihlášení
$ cd /etc/udev/rules.d                          // přepnutí do pracovního adresáře
$ touch 40-timer-permissions.rules              // vytvoření souboru
$ mousepad 40-timer-permissions.rules &         // otevření v editoru Mousepad
INFO: Pravidla (rules) pro jednotlivá hardwarová zařízení jsou v kompetenci linuxového správce zařízení udev. Konkrétním nastavením HW zařízení lze manipulovat skrze systemd daemona a/nebo jeho jednotku (unit) "jméno_zařízení.device"[REF].
TIP: Systemd daemon je spravován a nastavován příkazem systemctl[REF], který spravuje také služby[REF].

Zapište do něj řádky (dvě rovnítka za sebou nejsou překlepem)

Soubor "/etc/udev/rules.d/40-timer-permissions.rules"
# přístupová práva skupiny audio k zařízení HPET
KERNEL=="hpet", GROUP="audio"

a po restartu bude HPET nastavení pro skupinu audio čitelné a zpráva 'not readable - not good' bude minulostí.

Tímto však nastavení HPET není u konce. Ač bude skript RTCQS spokojený s přístupovými právy, systémová default hodnota 'dev.hpet.max-user-freq=64' je pro použití s tvorbou v reálném čase nedostatečná.

xfce4-terminal - Zjištění systémové default hodnoty HPET
$ cat /proc/sys/dev/hpet/max-user-freq
64
! Pozor na překlepy.

Nová hodnota max-user-freq pro HPET se nastaví v souboru "/etc/sysctl.conf". V něm se nastavili i hodnoty pro swappiness a inotify.

"/etc/sysctl.conf" - Nastavení hodnoty max-user-freq pro HPET timer
...
# Hodnota pro stránkování virtuální paměti SWAP
vm.swappiness=10
# INOTIFY nastavení
fs.inotify.max_user_watches=524288
# Nastavení HPET ; možnosti: 1024, 2048, 3072, 4096, 5120, 6144, 7168, 8192 (násobky 1024)
dev.hpet.max-user-freq=3072
...

A nakonec kontrola po rebootu počítače nebo po zadání 'sysctl -p' do příkazového řádku:

xfce4-terminal - Zjištění aktuální hodnoty HPET po modifikaci
$ sysctl -p
$ cat /proc/sys/dev/hpet/max-user-freq
3072

19.3.8. Real Time Clock

2020-01-03

Běžný počítač má pro úkoly časování základní hardwarové časovače[REF] APIC a PIT. Dalšími jsou RTC, TSC…​ RTC čip udržuje aktualizované hodiny reálného času. Funkce tohoto hardwarového časovače není pro multimediální tvorbu využívána ale z historických důvodů je správné realizovat i toto nastavení už jen proto, že RTC je integrovanou součástí základní desky a dovoluje spouštět starší systémy na moderních strojích.

Je pravděpodobné, že RTC nebude pro zamýšlené účely využíváno ale systém si při bootu interpretuje konfigurační nastavení způsobem, který zaručí správnou funkčnost časování.

xfce4-terminal - Výstup RTCQS - Hardwarový časovač RTC
...
Checking access to the real-time clock... not readable - not good
/dev/rtc found, but not readable.
make /dev/rtc readable by the 'audio' group
For more information, see http://wiki.linuxaudio.org/wiki/system_configuration#hardware_timers
...

Nastavit správnou funkčnost časovače RTC je založen na stejném principu jako nastavení HPET[REF] a kroky se opakují. Jen se nenastavuje HPET ale RTC. RTC je (byl) rovněž hardwarový časovač[REF].

Zpráva 'not readable - not good' stejně jak u nastavení HPET[REF] oznamuje, že audio skupina nemá ke čtení informací o zařízení "/dev/rtc" přístupová práva. Nastavení práv ke čtení se změní zapsáním řádku "KERNEL=="rtc0", GROUP="audio"" do souboru "40-timer-permissions.rules".

!! Nezapomínejte si zálohovat upravované soubory.
Soubor "/etc/udev/rules.d/40-timer-permissions.rules"
# přístupová práva skupiny audio k zařízení HPET
KERNEL=="hpet", GROUP="audio"
# přístupová práva skupiny audio k zařízení RTC
KERNEL=="rtc0", GROUP="audio"

Po restartu budou informace o nastavení zařízení RTC přístupné i pro skupinu audio. Opětovným spuštěním RTCQS se varovná zpráva už nezobrazí. Tak jak u nastavení časovače HPET musí se i nastavení RTC hodnoty upravit.

xfce4-terminal - Systémová default hodnota RTC
$ cat /sys/class/rtc/rtc0/max_user_freq
64

Procedura přenastavení hodnoty u RTC je náročnější a obnáší vytvoření dvou nových souborů.

  1. Prvním se bude při startu PC aktivovat služba "rc-local.service".

  2. Služba bude následně iniciovat startup skript "rc.local", ve kterém bude zapsán automaticky spouštěný příkaz pro nastavení hodnoty RTC při spuštění počítače.

TIP: Možnosti nastavení a přizpůsobení linuxového systému jsou bohaté ale je potřeba vědět jak na to. Je to daň za možnosti LINUX. Zároveň se čitatel seznámí se základy skriptování.

Výhodou takto spouštěného skriptu je, že si do něj může uživatel napsat jakoukoliv posloupnost příkazů, které mají být pravidelně spouštěny při startu počítače. Může do něj integrovat svá vlastní nastavení atd. Je analogií k seznamu "Automatické spuštení aplikace"[REF]. Pouze s tím rozdílem, že takto vytvořený skript "rc.local" spouští úlohy pro celý počítač ještě před přihlášením a nejen v jednom konkrétním uživatelském účtu.

  1. Vytvořte ve složce "/etc/systemd/system" soubor s názvem "rc-local.service" a zapište do něj:

    xfce4-terminal - Vytvoření služby "/etc/systemd/system/rc-local.service"
    [Unit]
    Description=/etc/rc.local
    ConditionPathExists=/etc/rc.local
    
    [Service]
    Type=forking
    ExecStart=/etc/rc.local start
    TimeoutSec=0
    StandardOutput=tty
    RemainAfterExit=yes
    SysVStartPriority=99
    
    [Install]
    WantedBy=multi-user.target

    Při spuštění služby (ExecStart=) bude vykonána (start) série zapsaných příkazů (v "/etc/rc.local")[REF].

  2. Druhým souborem bude samotný skript "rc.local".

    Každý shell skript v LINUX začíná zakomentovaným řádkem (#!/bin/sh -e). Příkaz 'sh' z adresáře "/bin"[REF] a s přepínačem '-e' (exit) spustí sérii příkazů zapsaných ve skriptu a nevyskytne-li se chyba tak se '/bin/sh' ukončí '-e'.

    INFO: Termíny command-line, shell, příkazový řádek, prompt, CLI, console, term nebo TERMINAL jsou různá pojmenování pro totéž. Avšak pouze v praxi. V definicích výrazů jsou rozdíly ale v souvislostech tohoto textu jsou termíny zaměnitelné. Správné to není ale v praxi se kterýkoliv z výrazů chápe jako prostředí pro spouštění příkazů.
    xfce4-terminal - Vytvoření skriptu "rc.local"
    #!/bin/sh -e
    #
    # rc.local
    #
    # This script is executed at the end of each multiuser runlevel.
    # Make sure that the script will "exit 0" on success or any other
    # value on error.
    #
    # In order to enable or disable this script just change the execution
    # bits.
    #
    # By default this script does nothing.
    
    echo 3072 > /sys/class/rtc/rtc0/max_user_freq
    
    exit  0

    Všechny příkazy v skriptu a/nebo jejich posloupnosti musí být uvedeny před ukončujícím řádkem "exit 0".

    Pro funkčnost skriptu je nutné nastavit na souboru "rc.local" přístupová práva[REF].

    xfce4-terminal - Nastavení vlastností pro spouštění
    $ chmod a+x /etc/rc.local

    Povolení pro spouštění souboru je důležité jinak ho systém nebude považovat za spustitelný soubor a příkazy v něm zapsané neprovede.

Systém buď:

  • po restartu

  • nebo zadáním příkazu

    xfce4-terminal - Spuštění služby "rc-local.service"
    $ systemctl start /etc/systemd/system/rc-local.service

spustí službu[REF] "rc-local.service", která vyvoláním skriptu přenastaví hodnotu nastavení RTC.

xfce4-terminal - Kontrola nové aktuální hodnoty RTC
$ cat /sys/class/rtc/rtc0/max_user_freq
3072

Někdy je nastavení linuxového audia úmorné ale kdo se dočetl až sem už nejspíš porozuměl linuxové logice. Podobné kouzla s myší provést nelze. V příkazové řádce je vše velmi přehledné. Stejně tak i v konfiguračních souborech, které lze navíc editovat a upravit si tak nastavení konkrétního hardware, službu atd. V řádce se snadno učiní potřebná nastavení a není potřeba těžkopádný software, který není nezbytný a rozptyluje množstvím ikonek jejichž funkce se bez obrázků i špatně popisují. Spojení lehkého software do fukčního celku je daleko účinnější a pro počítač není tak zatěžující.

Je potřeba překonat počátečnou nedůvěru k TERMINAL a mít radost z učení se. To se v životě vždy hodí. A pochopením vztahu mezi hardware a software se potom i líp tvoří protože hudebník ví co a proč dělá, na co jeho počítač stačí, jak ho vylepšit, k čemu ta-která technologie slouží a jak to použít.

LINUX je nejrozšířenějším operačním systémem práve z těchto důvodů. A samozřejmě kvůli možnostem zabezpečení. Na desktopech a v noteboocích sice vládne jednoduchost ale mnoho telefonů, serverů a mnoho dalších zařízení je řízeno LINUX jádrem a vyvýjeno ať už komunitou nebo profesionálními týmy pro konkrétní účely.

19.3.9. Skupina 'audio'

2019-12-10

xfce4-terminal - Výstup RTCQS - Členství v AUDIO skupině
...
Checking whether you're in the 'audio' group... no - 'not good'
  add yourself to the audio group with 'adduser $USER audio'
...

Členství v skupině audio je nastaveno instalací DEBIAN. V souboru "/etc/group" vytvoří skupinu audio a přiřadí k ní členy. Každý z uvedených členů může přistupovat k audiu zařízením, přehrávat hudbu atd. Je-li vše v pořádku skript RTCQS napíše zprávu 'good' a není co nastavovat.

xfce4-terminal - Skupina audio v souboru "/etc/group"
...
audio:x:29:uživatel
...

Hodnoty jsou odděleny dvojtečkou 'skupina:heslo:GID:členové'. Heslo většinou není uvedeno a je nahrazeno znakem "x". GID (Group ID) je číslo skupiny. Členové nemusí být žádní, může být jen jeden nebo jich může být víc a v zápisu musí být odděleni čárkou.

Chybí-li uživatel ve skupině a RTCQS vypíše chybovou hlášku 'not good' musí správce uživatele do skupiny audio přidat jedním z následujících příkazů:

xfce4-terminal - Přidání uživatele do specifické skupiny audio
$ usermod -a -G audio uživatel       // 1.
$ adduser uživatel audio             // 2.

nebo musí soubor otevřít v textovém editoru, uživatele dopsat manuálně a změny v souboru uložit. Po zadání příkazu si nastavení zkontrolujte.

V souboru "/etc/security/limits.d/audio.conf"[REF] je pro skupinu audio nastavena hodnota pro realtime prioritu.

19.3.10. Multiple 'audio' group

2019-12-10

xfce4-terminal - Výstup RTCQS
...
Checking for multiple 'audio' groups... no - good
...

19.3.11. 'chrt' - RT priority

2019-12-10

Programy jsou na harddisku uloženy v podobě binárních dat v "/bin"[REF] adresářích. Adresáře "/bin" a "/sbin" v kořenovém adresáři "/" obsahují systémové programy. Další programy jsou zanořené v dalších "*/bin" podadresářích systému, např. v "/usr/bin", ve kterém jsou většinou ty uživatelské.

Spuštěním uloženého binárního souboru programu vzniká proces a systém pro jeho úspěšný a bezproblémový běh nastavuje mnoho atributů. Tyto atributy může systém za běhu dle potřeb měnit. A ke změnám těchto atributů za běhu programu může dojít i na žádost ze strany uživatele. Prostředníkem v komunikaci mezi přáními uživatele/správce nebo aplikacemi a systémem je příkaz 'chrt'.

xfce4-terminal - Výstup RTCQS - Příkaz 'chrt'
...
Checking the ability to prioritize processes with chrt... no - 'not good'
  Could not assign a 80 rtprio SCHED_FIFO value. Set up limits.conf.
  For more information
  see http://wiki.linuxaudio.org/wiki/system_configuration#limitsconfaudioconf
...

Tento příkaz uživatel při tvorbě nepoužije a když - ví proč. Je volán spuštěnými aplikacemi, které mají už v kódu implementován přiměřený a účelný způsob jak při zpracování audia co nejlépe a nejefektivněji s realtime nastaveními nakládat. Potřebná funkčnost příkazu se aktivuje automaticky instalací zvukového serveru JACK. JACK zároveň aktivuje i vhodné nastavení pam_limits (Pluggable Authentication Modules) což je modul, který spravuje systémové prostředky. PAM pro audio se nastavuje přiřazením hodnot v souboru "/etc/security/limits.d/audio.conf".

"/etc/security/limits.d/audio.conf" - Příklad s nastavením
#<domain> - jméno uživatele, skupiny
#<type>   - nemusí být nastaven žádný
          - 'soft' limits může být konfigurována i uživatelem ale
               pouze v povoleném rozsahu 'hard' limits
          - 'hard' limits je nastavena správcem a vykonávána linuxovým jádrem
#<item>   - core, data, fsize, memlock, nofile, rss, stack, cpu, nproc, as,
            maxlogins, maxsyslogins, priority, locks, sigpending, msgqueue,
            nice, rtprio, chroot
#<value>  - nastavení hodnoty <item>

# Více informací v souboru /etc/security/limits.conf

# Provided by the jackd package.
# Changes to this file will be preserved.
# If you want to enable/disable realtime permissions, run
#    dpkg-reconfigure -p high jackd

#<domain>  <type>  <item>     <value>
@audio     -       rtprio     95
@audio     -       memlock    unlimited
#@audio     -       nice       -19

Nastavení konfiguračního souboru jsou popsána v manuálu 'man limits.conf'. V "audio.conf" souboru je nastavena realtime priorita 'rtprio' pro skupinu audio a proto uživatel nemusí nástroje chrt, nice, renice znát a používat je manuálně. Vše je nastavováno automaticky systémem. Uživatel však musí být členem skupiny audio[REF] aby měl k realtime zpracování audia přístupová práva[REF].

Na rozdíl od starších utilit nice a renice[REF] nemanipuluje chrt pouze prioritou procesu ale i dalšími realtime nastaveními. Jsou seřazeny do skupin či tříd:

  • SCHED_IDLE: nejnižší priorita, proces nebude mít vliv na jiné spuštěné procesy

  • SCHED_BATCH: procesy s nižší prioritou a jsou spouštěny v delších časových úsecích po dávkách

  • SCHED_OTHER/SCHED_NORMAL: výchozí hodnota, s kterou proces běží v normálním režimu

  • SCHED_RR: procesy s realtime prioritou ale s časovým omezením

  • SCHED_FIFO: realtime priorita procesu bez omezení (First In, First Out)

V manuálu 'man chrt' jsou možnosti příkazu popsány podrobněji.

19.3.12. High resolution timers

2020-01-08

xfce4-terminal - Výstup RTCQS
...
Checking kernel support for high resolution timers... found - good
...

V dnešní době je HRTIMER podpora v linuxovém jádru běžná.

Nastavení je v konfiguračním souboru zavedeného jádra "/boot/config-$(uname -r)". Názvu souboru "config-$(uname -r)" lze porozumět jako výrazu složenému z:

  1. "config-" - což je počátek názvu každého označení verze konfiguračního souboru jádra a

  2. "$(uname -r)" - jenž je příkaz 'uname -r' asimilovaný do názvu souboru.

Správné číselné označení jádra lze najít právě použitím utility uname[REF].

xfce4-terminal - Příkaz 'uname' vypíše informace o systému
$ uname -a                           // vypíše všechny systémové informace
Linux studio 4.9.0-9-rt-amd64 #1 SMP PREEMPT RT Debian 4.9.168-1+deb9u3 (2019-06-16) x86_64 GNU/Linux
$ uname -r                           // s přepínačem ' -r' vypíše pouze číselné označení jádra
4.9.0-9-rt-amd64                     // výpis v 64-bitovém systému
4.9.0-9-rt-686-pae                   // a v 32-bitovém systému

Předchozí příklad naznačuje, že překlad "config-$(uname -r)" je roven výrazu "config-4.9.0-9-rt-amd64". To znamená, že v souboru "/boot/config-4.9.0-9-rt-amd64" je k nalezení řetězec udávající zda je v jádru zavedena podpora pro high resolution timers. Tento soubor obsahuje do deseti tisíc řádků s jednotlivými nastaveními procesoru.

Soubor "/boot/config-4.9.0-9-rt-amd64"
...
CONFIG_HIGH_RES_TIMERS=y
...

Takto zapsaný řetězec s nastavením je jediný správný. Hodnotu řetězce lze najít i skrze rouru[REF] příkazů:

xfce4-terminal -
$ cat /boot/config-$(uname -r) | grep CONFIG_HIGH_RES_TIMERS    // pipeline 'cat | grep'
CONFIG_HIGH_RES_TIMERS=y
! Buďte mimořádně opatrní při editaci konfiguračního souboru KERNEL. Nastavení jsou nastaveními funkcí procesoru.

Není-li v jádru podpora 'CONFIG_HIGH_RES_TIMERS=y' zavedena a RTCQS píše chybovou zprávu "not good" je nutné konfigurační soubor "/boot/config-$(uname -r)" editovat, uložit a počítač restartovat. Po restartu si správnost nastavení zkontrolujte.

Může dojít k chybě. V nepříjemné situaci problém opravte v RECOVERY MODE[REF].

19.3.13. RT preempt

2019-12-10

xfce4-terminal - Výstup RTCQS
...
Kernel with Real-Time Preemption... not found - not good
Kernel without real-time capabilities found
For more information, see http://wiki.linuxaudio.org/wiki/system_configuration#installing_a_real-time_kernel
...

19.3.14. High resolution KERNEL

2019-12-10

xfce4-terminal - Výstup RTCQS
...
Checking if kernel system timer is high-resolution... found - good
...

Tato kontrola skriptu RTCQS zjistí zda je vůbec hardwarový system timer (systémový časovač) schopný pracovat ve vysokém rozlišení a s vysokou přesností.

19.3.15. Tickless timer

2019-12-10

xfce4-terminal - Výstup RTCQS
...
Checking kernel support for tickless timer... found - good
...

19.4. FS types

2019-12-17

xfce4-terminal - Výstup RTCQS
...
Checking filesystem types... ok.
...

Kontrolou souborového systému (file system) skript RTCQS zjišťuje zda je souborový systém[REF] vhodný pro použití v audiosystému. V audiosystému se sezením (projektem) vytváří převážně jenom pár objemných souborů a ne mnoho malých. Nativní podporou objemných dat ze strany správně zvoleného souborového systému se načítání souborů z harddisku zjednoduší a zejména urychlí. Souborový systém ext4 je pro tyto účely vhodným řešením a proto byl už v instalaci[REF] operačního systému vybrán a nastaven.

Výkonově zlepšit vstupně/výstupní operace na SSD disku lze přidáním atributů[REF] v souboru "/etc/fstab"[REF]. Moderní distribuce mají tato nastavení již implementované. Dalším vylepšením charakteristik výkonů disků a nastavením souborových systémů se zabývají i odborné texty[165] na webu.

19.5. Soundcard IRQ

2019-12-10

xfce4-terminal - Výstup RTCQS
...
** Set $SOUND_CARD_IRQ to the IRQ of your soundcard to enable more checks.
   Find your sound card IRQ by looking at '/proc/interrupts' and lspci.

20. Hardware info

20.1. 'lshw' - seznam HW

2019-07-19

Malý nástroj lshw (list hardware) není standardně zahrnut do instalace proto je potřeba lshw doinstalovat. V SYNAPTIC[REF] vyhledejte lshw a lshw-gtk. Příkaz 'lshw' spustí textovou verzi, přidáním argumentu 'lshw -X' grafické prostředí programu. Příkaz extrahuje komplexní detailní informace o hardware. Měl by se spouštět s ROOT právy jinak vypíše částečné informace.

Generuje informace o přesné konfiguraci paměti, verzích procesoru, firmware, nastavení základní desky, rychlosti CPU a sběrnic, grafice, blokových zařízeních…​ Přikaz ve tvaru 'lshw -short' vypíše kompaktní seznam hardwaru.

xfce4-terminal
$ lshw -short
H/W path       Device      Class          Description
=====================================================
...
/0/4                       processor      Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz
/0/4/5                     memory         128KiB L1 cache
...
/0/100/1f.3                multimedia     Intel Corporation
...
/0/1           scsi0       storage
/0/1/0.0.0     /dev/sda    disk           1TB WDC WD10IECX-23U
...

Detailní info o konkrétním hardware lze zjistit příkazem 'lshw -class XYZ', kde XYZ je třídou (class) hardwaru ve sloupci "Class" příkazu 'lshw -short'. Výpis v předchozím příkladu neuvádí všechny třídy. Ale jednou z tříd je i multimedia, která detekuje hardwarová multimediální zařízení.

xfce4-terminal
$ lshw -class multimedia
  *-usb:1
       description: Video
       product: EasyCamera
       vendor: M160912b0376
       physical id: 4
       bus info: usb@1:4
       version: 0.08
       capabilities: usb-2.00
       configuration: driver=uvcvideo maxpower=500mA speed=480Mbit/s
  *-multimedia
       description: Audio device
       product: Intel Corporation
       vendor: Intel Corporation
       physical id: 1f.3
       bus info: pci@0000:00:2f.3
       version: 21
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi bus_master cap_list
       configuration: driver=snd_hda_intel latency=32
       resources: irq:131 memory:a4220000-a4223fff memory:a4210000-a421ffff..

20.2. 'hwinfo' - HW info

2019-07-19

Program hwinfo (hardware info) má velmi podobný typ výpisů jako příkaz lshw a rovněž není instalován. Zápisem 'hwinfo --short' zobrazí krátký přehled HW.

S hardware jednotkou ITEM

  • all, arch, bios, block, bluetooth, braille, bridge, camera, cdrom, chipcard, cpu, disk, dsl, dvb, fingerprint, floppy, framebuffer, gfxcard, hub, ide, isapnp, isdn, joystick, keyboard, memory, mmc-ctrl, modem, monitor, mouse, netcard, network, partition, pci, pcmcia, pcmcia-ctrl, pppoe, printer, redasd, reallyall, scanner, scsi, smp, sound, storage-ctrl, sys, tape, tv, uml, usb, usb-ctrl, vbe, wlan, xen, zip

uvedenou v argumentu 'lshw --ITEM' detekuje detailní informace ke konkrétnímu hardware.

xfce4-terminal
$ hwinfo --sound
07: PCI 1f.3: 0403 Audio device
  [Created at pci.378]
  Unique ID: mS1_.6rt2x8hejCE
  SysFS ID: /devices/pci0000:00/0000:00:1f.3
  SysFS BusID: 0000:00:1f.3
  Hardware Class: sound
  Model: "Intel Audio device"
  Vendor: pci 0x8086 "Intel Corporation"
  Device: pci 0x9d71
  SubVendor: pci 0x17aa "Acer"
  SubDevice: pci 0x383c
  Revision: 0x21
  Driver: "snd_hda_intel"
  Driver Modules: "snd_hda_intel"
  Memory Range: 0xa4220000-0xa4223fff (rw,non-prefetchable)
  Memory Range: 0xa4210000-0xa421ffff (rw,non-prefetchable)
  IRQ: 131 (1088 events)
  Module Alias: "pci:v00008086d00009D71sv000017AAsd0000382Cbc04sc03i00"
  Driver Info #0:
    Driver Status: snd_hda_intel is active
    Driver Activation Cmd: "modprobe snd_hda_intel"
  Driver Info #1:
    Driver Status: snd_soc_skl is active
    Driver Activation Cmd: "modprobe snd_soc_skl"
  Config Status: cfg=new, avail=yes, need=no, active=unknown

20.3. 'inxi' - stručný výstup

2019-08-05

Nevelký soubor se scriptem inxi, který v jednom zobrazí informace z více zdrojů a vygeneruje barevný formátovaný výstup srozumitelný i netechnicky nadaným. Také není zahrnut do standardní instalace DEBIAN.

xfce4-terminal
$ inxi -F -xxx
System:    Host: studio Kernel: 4.9.0-9-amd64 x86_64 (64 bit gcc: 6.3.0) Desktop: i3 4.13
           Distro: Debian GNU/Linux 9 (stretch)
Machine:   Device: laptop System: DELL product: 80AK v: DELL ideapad 515-15IYB serial: PF0MCYBE
           Mobo: DELL model: Torronto 5C1 v: SDK1J36519 WIN serial: PF0MCYBE
           UEFI [Legacy]: DELL v: 3JFD21YW date: 08/09/2017
Battery    BAT0: charge: 35.3 Wh 100.1% condition: 35.3/39.0 Wh (90%) model: CPT-COS 1 L36P2CB7 status: Full
CPU:       Dual core Intel Core i5-7200U (-HT-MCP-) cache: 3072 KB
           flags: (lm nx sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx) bmips: 10848
           clock speeds: max: 3100 MHz 1: 499 MHz 2: 499 MHz 3: 499 MHz 4: 499 MHz
Graphics:  Card-1: Intel Device 5916 bus-ID: 00:02.0
           Card-2: NVIDIA GM108M [GeForce 940MX] bus-ID: 03:00.0
           Display Server: X.org 1.19.2 drivers: modesetting,nouveau (unloaded: fbdev,vesa)
           tty size: 319x75 Advanced Data: N/A for root
Audio:     Card Intel Device 9d71 driver: snd_hda_intel bus-ID: 00:1f.3 Sound: ALSA v: k4.9.0-9-amd64
Network:   Card-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
           driver: r8169 v: 2.3LK-NAPI port: 5000 bus-ID: 01:00.0
           IF: eth0 state: down mac: c9:9c:76:8c:3f:fd
           Card-2: Realtek RTL9821AE 802.11ac PCIe Wireless Network Adapter
           driver: rtl9821ae port: 4000 bus-ID: 02:00.0
           IF: wlan0 state: up mac: 78:35:61:d9:f5:05
Drives:    HDD Total Size: 1000.2GB (16.9% used)
           ID-1: /dev/sda model: WDC_WD09JTBX size: 1000.2GB temp: 39C
Partition: ID-1: / size: 46G used: 1.5G (4%) fs: ext4 dev: /dev/sda2
           ID-2: /usr size: 83G used: 11G (14%) fs: ext4 dev: /dev/sda4
           ID-3: /home size: 230G used: 138G (64%) fs: ext4 dev: /dev/sda3
           ID-4: swap-1 size: 9.90GB used: 0.00GB (0%) fs: swap dev: /dev/sda5
Sensors:   System Temperatures: cpu: 46.0C mobo: N/A
           Fan Speeds (in rpm): cpu: N/A
Info:      Processes: 172 Uptime: 2:39 Memory: 1320.6/7888.3MB Init: systemd runlevel: 5 Gcc sys: 6.3.0
           Client: Shell (bash 4.4.121) inxi: 2.3.5

20.4. 'dmidecode' - DMI table

2019-07-19

Specifikace SMBIOS (System Management BIOS) definuje datovou strukturu a metody přístupu do BIOS. Umožňuje číst informace integrované v BIOS. Linuxový KERNEL obsahuje SMBIOS decoder a jeho prostřednictvím může ROOT prohlédnout konfiguraci a nalézt i případný zdroj problému. Právě utilita dmidecode je k inspekci BIOS určená. Detekuje informace o výrobci, modelu, verzi BIOS, AGP, PCI, ISA, soketech procesoru, paměťových slotech atd.

Decoder dmidecode (DMI decode) vypíše obsah tabulky DMI (Desktop Management Interface) implementované v BIOS.

xfce4-terminal
$ dmidecode | less              // dlouhý výpis skrze pipeline do 'less'
xfce4-terminal
$ dmidecode -t Processor        // <typ>
$ dmidecode -t 4                // <#> číselné označení typu

<typ> může být nahrazen číslem <#> typu:

  • 0-BIOS, 1-System, 2-Baseboard, 3-Chassis, 4-Processor, 5-Memory, 6-Cache, 7-Connector, 8-Slot

20.5. 'lspci' - seznam PCI

2019-07-19

Pro zobrazení informací o PCI sběrnici a zařízení k ní připojených je lspci (list PCI devices). Stejně jak další utility třeba lshw je i lspci spuštěn bez ROOT oprávnění skoupý na informace. Ve výchozím nastavení vypíše pouze jednoduchý seznam zařízení ale přidáním některého z argumentů '-v', '-vv', '-vvv' (verbose - užvaněný) doporučuji spustit utilitu přes pipeline ve tvaru 'lspci -vvv | less'. Příkaz 'less' vypíše informace do svého okna ve kterém se dá pracovat se stejnými klávesami[REF] jako v příkazu 'man'. K získání informací o každé sběrnici zvlášť a její latency (reakčním čase) je 'lspci -v'.

xfce4-terminal
$ lspci -v
00:00.0 Host bridge: Intel Corporation Device 5904 (rev 02)
        Subsystem: Lenovo Device 3805
        Flags: bus master, fast devsel, latency 0
        Capabilities: [e0] Vendor Specific Information: Len=10 <?>

00:02.0 VGA compatible controller: Intel Corporation Device 5916 (rev 02) (prog-if 00 [VGA controller])
        Subsystem: Lenovo Device 39f1
        Flags: bus master, fast devsel, latency 0, IRQ 131
        Memory at a2000000 (64-bit, non-prefetchable) [size=16M]
        Memory at b0000000 (64-bit, prefetchable) [size=256M]
        I/O ports at 6000 [size=64]
        [virtual] Expansion ROM at 000c0000 [disabled] [size=128K]
        Capabilities: [40] Vendor Specific Information: Len=0c <?>
        Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
        Capabilities: [ac] MSI: Enable+ Count=1/1 Maskable- 64bit-
        Capabilities: [d0] Power Management version 2
        Capabilities: [100] Process Address Space ID (PASID)
        Capabilities: [200] Address Translation Service (ATS)
        Capabilities: [300] Page Request Interface (PRI)
        Kernel driver in use: i915
        Kernel modules: i915

00:14.0 USB controller: Int...
xfce4-terminal
$ lspci -vvv | less
00:00.0 Host bridge: Intel Corporation Device 5904 (rev 02)
00:02.0 VGA compatible controller: Intel Corporation Device 5916 (rev 02)
00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21)
00:14.2 Signal processing controller: Intel Corporation Sunrise Point-LP Thermal subsystem (rev 21)
00:16.0 Communication controller: Intel Corporation Sunrise Point-LP CSME HECI #1 (rev 21)
00:17.0 SATA controller: Intel Corporation Sunrise Point-LP SATA Controller [AHCI mode] (rev 21)
00:1c.0 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #5 (rev f1)
00:1c.5 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #6 (rev f1)
00:1d.0 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #9 (rev f1)
00:1f.0 ISA bridge: Intel Corporation Device 9d58 (rev 21)
00:1f.2 Memory controller: Intel Corporation Sunrise Point-LP PMC (rev 21)
00:1f.3 Audio device: Intel Corporation Device 9d71 (rev 21)
00:1f.4 SMBus: Intel Corporation Sunrise Point-LP SMBus (rev 21)

20.6. 'lsmod' - moduly jádra

2019-07-19

V LINUX je pojmenování modul[157] použito pro ovladač zařízení. Moduly ve starších systémech mají koncovku "*.o" (object). V moderním LINUX je koncovka "*.ko" (kernel object).

Jednotlivý hardware, který je modulem obsluhován je v adresáři "/dev". Detaily o modulech (ovladačích) se získají z:

  • "/proc/modules"[REF] - informace o modulech právě zavedených a systémem okamžitě používaných. Vykresluje-li monitor grafiku tak jsou v paměti RAM nutně zavedeny a zároveň aktivně používány moduly pro vykreslování grafiky.

    Příkaz 'lsmod' (list modules) zobrazí výpis modulů nahraných v systému a jejich okamžitý stav. Tato utilita zobrazuje seznam (tabulku) právě nahraných ovladačů z adresáře "/proc/modules" a informace o nich. Manuál 'man lsmod'.

  • "/sys/module" - "/sys" je kromě "/proc" další linuxový virtuální souborový systém sysfs. Informace v "/sys/module" jsou seřazené do podadresářů. Složky obsahují informace o KERNEL modulech přímo zakompilovaných v jádru. Jsou součástí jádra a nelze je odinstalovat nebo jiné doinstalovat. Do jádra jsou zavedeny při kompilování jádra. Instalovat do jádra nové ovladače vyžaduje kompilaci KERNEL.

    Do RT-KERNEL[REF] na rozdíl od generického KERNEL jsou jednoznačně zakompilované součásti podporující běh systému v reálném čase. LINUX KERNEL si může uživatel sám zkompilovat přímo na míru hardware svého PC a vytvořit si vlastní verzi jádra. Zakompilováním pouze potřebných modulů lze zvýšit výkon computeru nebo rychlost bootování, snížit hardware odezvu (LATENCY) a minimalizovat spotřebu paměti RAM.

  • "/lib/module/$(uname -r)"[REF] - je to klasický adresář na disku a jsou v něm uloženy soubory s moduly *.ko, s konkrétním programovým kódem pro každý jednotlivý instalovaný modul. Každá verze jádra může zahrnovat jiné moduly.

    V adresáři jsou i informace o modulech právě nezavedených a neaktivních ale systémem zaveditelných třeba použitím příkazu 'modprobe'. Jsou v něm všechny instalované ovladače.

    Odinstalovat modul tedy lze i vymazáním jeho souborů. Kdyby však systém neobdržel relevantní informace o odinstalaci mohlo by takové rozhodnutí vést k nevypočitatelnému a chaotickému počínání systému.

  • "/etc/modprobe.d" - v adresáři "/etc" jsou systémové konfigurační soubory. Editací souborů v "/modprobe.d" adresáři je možné měnit systémová nastavení nahrávána při startu počítače a vlastnosti modulů.

TIP: V LINUX je cokoliv v adresářové struktuře souborem. Reálným (uloženým na disku) nebo virtuálním (nahraným v paměti). V principu s výjimkami procesů běžícího systému, binárních souborů…​ lze kterýkoliv soubor nahlížet nebo editovat textovým editorem. Včetně nastavení jádra, ovladačů, hardwarových zařízení etc…​

K nalezení informací o zvukových modulech slouží konkrétní příkaz ve spojení s příkazem 'grep'[REF] a hledaným řetězcem "snd".

FIXME

xfce4-terminal - Přehled aktivních modulů zavedených v RAM paměti
$ cat /proc/modules | grep 'snd'     // 1. výpis aktivních modulů nebo
$ lsmod | sort | grep 'snd'          // 2. taky výpis, příkaz 'sort' -> viz. 'man sort'
Module                  Size   Used by
snd                     77824  6 snd_hda_codec_generic,snd_hda_codec,snd_timer...
snd_hda_codec           114688 4 snd_hda_codec_generic,snd_hda_codec_realtek...
snd_hda_codec_generic   77824  1 snd_hda_codec_realtek
snd_hda_codec_hdmi      53248  1
snd_hda_codec_realtek   90112  1
snd_hda_core            65536  5 snd_hda_codec_generic,snd_hda_codec_hdmi...
snd_hda_intel           32768  0
snd_pcm                 98304  4 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec...
snd_timer               32768  1 snd_pcm
soundcore               16384  1 snd

Ve sloupci "Used by" je počet a jmenný výpis jiných modulů, se kterými je konkrétní modul uvedený ve sloupci "Module" v závislosti. Modul snd_hda_intel nemá žádné 0 závislosti a lze ho bez obav deaktivovat. Stejně tak snd_hda_codec_hdmi má pouze jednu 1 závislost a to na sobě samém. Není ale používán jiným modulem a jeho deaktivací se pouze vypne podpora (ovladač) HDMI[166] (High-Definition Multimedia Interface). Vypnutím modulu snd by se muselo deaktivovat dalších 6 modulů včetně softwarového časovače snd_timer a zvukový systém by úplně ztratil svoji funkčnost. Je-li na modulu závislý jiný modul systém na to upozorní.

Takto lze povypínat mnoho různých modulů nesouvisejících s tvorbou hudby. Tiskárny, kamery, nepotřebné porty atd. A následným povypínaním služeb[REF] souvisejících s těmito moduly jde ušetřit mnoho systémových prostředků:

  • uvolnit prostředky paměti RAM;

  • zlepšit propustnost PCI sběrnice[REF] a zlepšit přidělování cyklů;

  • snížit četnost výpočetních operací věnovaných častým přerušením IRQSoundcard IRQ;

  • uvolnit sběrnici pro potřeby hardware - audio karty.

Tyto uvolněné prostředky poslouží potřebám RT audio výpočtům. I ve výkonných computerech se dá poté spustit více audio-pluginů, otevřít a propojit více audioSW, nahrávat v DAW více AUDIO/MIDI stop současně. S menším zatížením systému klesnou i obavy z nečekaného zatuhnutí systému. Neměla by být ale ani profesionální studiová technika není bez chyb.

INFO: Bez znalosti příkazové řádky[REF] si uživatel s mnohými systémovými nastaveními LINUX neporadí. V repozitářích DEBIAN lze nalézt několik málo systémových GUI aplikací, přes které se dají systémové konfigurace spravovat. Možností nastavení je však tolik, že žádná z GUI aplikací nemá dostatek ikonek pro tak velké množství příkazů s přepínači a jejich kombinacemi. Příkazový řádek, tužka a notes jsou při získávání informací a nastavování mnohem rychlejší, přehlednější a jednodušší.
xfce4-terminal - Hledání instalovaných zvukových modulů
$ find /lib/modules/$(uname -r) | grep snd     // hledání zvukových modulů
/lib/modules/config-4.9.0-9-rt-amd64/kernel/sound/core/oss/snd-mixer-oss.ko
/lib/modules/config-4.9.0-9-rt-amd64/kernel/sound/core/oss/snd-pcm-oss.ko
/lib/modules/config-4.9.0-9-rt-amd64/kernel/sound/core/seq/oss/snd-seq-oss.ko
/lib/modules/config-4.9.0-9-rt-amd64/kernel/sound/core/seq/snd-seq-dummy.ko
/lib/modules/config-4.9.0-9-rt-amd64/kernel/sound/core/seq/snd-seq-midi-event.ko
/lib/modules/config-4.9.0-9-rt-amd64/kernel/sound/core/seq/snd-seq.ko
...
xfce4-terminal - Příklady příkazů
$ modinfo <název_modulu>                  // informace o konkrétním modulu v "/lib/modules"
$ systool -v -m <název_modulu>            // nastavené vlastnosti modulu
$ modprobe -c | less                      // detailní konfigurace všech modulů
$ modprobe -c | grep <název_modulu>       // informace o konfiguraci konkrétního modulu
$ modprobe -l                             // které moduly jsou zaveditelné do systému
$ modprobe -v <název_modulu>              // nahraje modul, upovídaný výstup ' -v' (verbose)
$ modprobe -r -v <název_modulu>           // deaktivuje modul, upovídaný výstup ' -v'
$ modprobe --show-depends <název_modulu>  // zobrazení závislostí na jiných modulech

TODO

20.7. 'hdparm' - HDD parametry

2019-08-04

Utilita hdparm (harddisk parameters) identifikuje parametry přímo z IDE/SATA disků. Tímto nástrojem lze harddisky i nastavovat a přesně vyladit parametry. DEFAULT nastavení se dá měnit v konfiguračním souboru "/etc/hdparm.conf". Zpráva o výrobci, hardwarových možnostech, podporovaných technologiích, rychlosti, geometrii zařízení je opravdu vyčerpávající. V dlouhém manuálu jsou detailně popsány funkční možnosti programu.

TIP: Chcete-li si textový výstup příkazu zapsat do souboru a data uložit použijte příkaz ve tvaru 'příkaz > /path/file'. V tomto případě třeba 'hdparm -I /dev/sda > /home/user/hdparm.info'. Poté lze zapsané informace číst v textovém editoru[REF].
? Při zadávání příkazů rozlišujte i mezi /dev/hda (starší IDE disky) a /dev/sda (novější SATA/PATA/SAS disky).
xfce4-terminal - Nezkrácený výpis
$ hdparm -I /dev/sda
/dev/sda:

ATA device, with non-removable media
  Model Number:       WDC WD10JBCX-24BC4T0
  Serial Number:      WD-WY4XB76FYYL1
  Firmware Revision:  01.01B01
  Transport:          Serial, SATA 1.0a, SATA II Extensions,
                      SATA Rev 2.5, SATA Rev 2.6, SATA Rev 3.0
Standards:
  Supported: 9 8 7 6 5
  Likely used: 9
Configuration:
  Logical    max  current
  cylinders  16383  16383
  heads    16  16
  sectors/track  63  63
  --
  CHS current addressable sectors:    16514064
  LBA    user addressable sectors:   268435455
  LBA48  user addressable sectors:  1953525168
  Logical  Sector size:                   512 bytes
  Physical Sector size:                  4096 bytes
  Logical Sector-0 offset:                  0 bytes
  device size with M = 1024*1024:      953869 MBytes
  device size with M = 1000*1000:     1000204 MBytes (1000 GB)
  cache/buffer size  = 16384 KBytes
  Nominal Media Rotation Rate: 5400
Capabilities:
  LBA, IORDY(can be disabled)
  Queue depth: 32
  Standby timer values: spec'd by Standard, no device specific minimum
  R/W multiple sector transfer: Max = 16  Current = 0
  Advanced power management level: 254
  DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 udma5 *udma6
       Cycle time: min=120ns recommended=120ns
  PIO: pio0 pio1 pio2 pio3 pio4
       Cycle time: no flow control=120ns  IORDY flow control=120ns
Commands/features:
  Enabled  Supported:
     *  SMART feature set
        Security Mode feature set
     *  Power Management feature set
     *  Write cache
     *  Look-ahead
     *  Host Protected Area feature set
     *  WRITE_BUFFER command
     *  READ_BUFFER command
     *  DOWNLOAD_MICROCODE
     *  Advanced Power Management feature set
        Power-Up In Standby feature set
        SET_MAX security extension
     *  48-bit Address feature set
     *  Device Configuration Overlay feature set
     *  Mandatory FLUSH_CACHE
     *  FLUSH_CACHE_EXT
     *  SMART error logging
     *  SMART self-test
     *  General Purpose Logging feature set
     *  64-bit World wide name
     *  IDLE_IMMEDIATE with UNLOAD
     *  WRITE_UNCORRECTABLE_EXT command
     *  {READ,WRITE}_DMA_EXT_GPL commands
     *  Segmented DOWNLOAD_MICROCODE
     *  Gen1 signaling speed (1.5Gb/s)
     *  Gen2 signaling speed (3.0Gb/s)
     *  Gen3 signaling speed (6.0Gb/s)
     *  Native Command Queueing (NCQ)
     *  Host-initiated interface power management
     *  Phy event counters
     *  Idle-Unload when NCQ is active
     *  NCQ priority information
     *  Host automatic Partial to Slumber transitions
     *  Device automatic Partial to Slumber transitions
     *  READ_LOG_DMA_EXT equivalent to READ_LOG_EXT
     *  DMA Setup Auto-Activate optimization
        Device-initiated interface power management
     *  Software settings preservation
     *  SMART Command Transport (SCT) feature set
     *  SCT Write Same (AC2)
     *  SCT Features Control (AC4)
     *  SCT Data Tables (AC5)
        unknown 206[12] (vendor specific)
        unknown 206[13] (vendor specific)
        unknown 206[14] (vendor specific)
Security:
  Master password revision code = 65534
    supported
  not  enabled
  not  locked
    frozen
  not  expired: security count
    supported: enhanced erase
  192min for SECURITY ERASE UNIT. 192min for ENHANCED SECURITY ERASE UNIT.
Logical Unit WWN Device Identifier: 50091ef6b18x2d72
  NAA    : 5
  IEEE OUI  : 0023fe
  Unique ID  : 6c18d2e42
Checksum: correct

20.8. 'smartctl' - S.M.A.R.T

2019-08-04

Nástroj není instalován. Instaluje se spolu s jinými nástroji v balíku smartmontools.

Technologie S.M.A.R.T. (Self-Monitoring, Analysis and Reporting Technology) je pro získání a monitorování informací o použití a zdraví harddisku. Mnoho informací je podobných s nástrojem hdparm[REF]. Statistiky pomáhají zjistit v jakém stavu zařízení aktuálně je. S narůstajícími problémy může být totiž chyba i v hardware.

INFO: Příkaz je funkční za předpokladu, že je S.M.A.R.T. technologie povolena i v BIOS a zároveň model harddisku technologii podporuje. Zjistěte si to příkazem 'hdparm -I /dev/sda | grep -i "smart"'[REF].
xfce4-terminal
$ smartctl -a /dev/sda
smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.9.0-9-amd64] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Western Digital Blue Mobile
Device Model:     WDC WD10JBCX-24UF5T0
Serial Number:    WD-WW4C576EFYWL1
LU WWN Device Id: 5 0128ee 6b2947dc1
Firmware Version: 01.01B01
User Capacity:    1,000,204,886,016 bytes [1.00 TB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    5400 rpm
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-2 (minor revision not indicated)
SATA Version is:  SATA 3.0, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Sun Aug  4 14:17:06 2019 CEST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
...
...
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0
  3 Spin_Up_Time            0x0027   185   183   021    Pre-fail  Always       -       1725
  4 Start_Stop_Count        0x0032   001   001   000    Old_age   Always       -       123249
  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0
  9 Power_On_Hours          0x0032   094   094   000    Old_age   Always       -       4845
 10 Spin_Retry_Count        0x0032   100   100   000    Old_age   Always       -       0
 11 Calibration_Retry_Count 0x0032   100   100   000    Old_age   Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       971
192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       20
193 Load_Cycle_Count        0x0032   128   128   000    Old_age   Always       -       218480
194 Temperature_Celsius     0x0022   114   105   000    Old_age   Always       -       33
196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0030   100   253   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0
200 Multi_Zone_Error_Rate   0x0008   100   253   000    Old_age   Offline      -       0
240 Head_Flying_Hours       0x0032   096   096   000    Old_age   Always       -       3354
...
...

V tabulce ke konci výpisu ve sloupci RAW_VALUE jsou uvedeny informace o používání harddisku.

  • Power_On_Hours - kolik hodin už harddisk běžel

  • Temperature_Celsius - teplota

  • Power_Cycle_Count - kolikkrát byl HDD zapnut

  • …​

Celkový a nejkratší možný obraz o stavu zařízení vypíše příkaz:

xfce4-terminal
$ smartctl -H /dev/sda | grep -i "result:"
SMART overall-health self-assessment test result: PASSED

Příkaz 'grep -i "result:"'[REF] extrahuje z výstupu příkazu 'smartctl -H /dev/sda' řádek, ve kterém se nachází hledaný výraz "result:". Zpráva s textem "result: FAILED!" upozorní na špatný stav harddisku.

20.9. 'lsusb' - seznam USB

2019-08-04

Tak jako předchozí příkazy i příkaz 'lsusb' (list USB devices) zobrazí informace o USB sběrnici a zařízeních k ní připojených.

xfce4-terminal
$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 0bda:0821 Realtek Semiconductor Corp.
Bus 001 Device 004: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
Bus 001 Device 003: ID 174f:2407 Syntek
Bus 001 Device 006: ID 058f:6387 Alcor Micro Corp. Flash Drive
Bus 001 Device 002: ID 0458:0186 KYE Systems Corp. (Mouse Systems)
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Přepínačem '-t' (tree) zobrazí stromovou strukturu hardwarového připojení.

xfce4-terminal
$ lsusb -t
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/12p, 480M
    |__ Port 1: Dev 2, If 1, Class=Human Interface Device, Driver=, 1.5M
    |__ Port 1: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
    |__ Port 4: Dev 3, If 1, Class=Video, Driver=uvcvideo, 480M
    |__ Port 4: Dev 3, If 0, Class=Video, Driver=uvcvideo, 480M
    |__ Port 5: Dev 4, If 0, Class=Vendor Specific Class, Driver=rtsx_usb, 480M
    |__ Port 7: Dev 5, If 0, Class=Wireless, Driver=btusb, 12M
    |__ Port 7: Dev 5, If 1, Class=Wireless, Driver=btusb, 12M

S uvedeným parametrem '-v' (verbose - ukecaný) doporučuji psát příkaz do CLI v kombinaci s nástrojem less[REF]. Do okna vypíše velmi detailní informace o Universal Serial Bus.

Tak jak lsusb zobrazí info o USB tak lsblk[REF] (list block devices) detekuje bloková zařízení PC.

xfce4-terminal - Rychlé info
$ lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0 55,9G  0 disk                 1
├─sda1   8:1    0  1,9G  0 part [SWAP]          2
├─sda2   8:2    0  6,5G  0 part /               2
└─sda3   8:4    0 47,6G  0 part /home           2
sdb      8:16   1 29,8G  0 disk                 1
└─sdb1   8:17   1 29,8G  0 part                 2
sr0     11:0    1 1024M  0 rom                  3
1 disk - harddisky, externí nebo USB disky.
2 part - oddíly na discích.
3 rom - CD/DVD
Aby byla mechanika zobrazena musí v ní být zasunuté médium.

21. Tuning

21.1. Procesy

2020-01-03

Možno malinko slov k procesům a k přidělování prostředků.

Každá z aplikací běží jako individuální proces. Operační systém jim přiděluje prostředky - vypočetní čas, zápis, čtení z disku, paměť, přístup k periferiím. Bylo by na škodu aby na pozadí systému přednostně běžel proces, který nesouvisí s tvorbou. Některé z aplikací se umí rozdělit do několika vláken (threads) a každé z vláken poté vyžaduje přidělení vlastních prostředků.

Ke startu systému, otevření sezení (projektu) a přehrání písničky počítač mimo jiné potřebuje:

  • Procesor

    Procesor je elektronický obvod. Vykonává aritmetické, logické, řídící úkony. Jeho funkce lze ovlivnit nastavením konfiguračních souborů KERNEL[20]. KERNEL je program, který mimo jiné spravuje běžící procesy, hardwarová zařízení, rozhoduje o přidělování přístupu k hardwaru (IRQ)[REF] na základě požadavků softwaru.

  • Paměť RAM

    Každá v systému spuštěná aplikace se nahraje do paměti RAM a to včetně dat, které jsou pro běh aplikace potřebné. DAW (Digital Audio Workstation) software do paměti nahrává i každou stopu bez ohledu na objem nahraných dat. MIDI stopa je víceméně textového charakteru ale je-li v ní soundfontbank, zvukové vzorky (samples) (.sf2, .sf3, .sfz, .gig …​) nahrává systém do paměti i tyto soubory a poté je potřeba počítat i s jejich velikostí. To samé platí i pro stopy s čistě zvukovým záznamem. Objem dat zvukového souboru může být obrovský. Sejde-li se v sezení (projektu) více takových stop může se potřeba paměti významně zvýšit.

  • Disk

    Data uložená na harddisku jsou pro uchování dat mezi jednotlivými starty počítače. Disk není v realtime zpracování audiosignálu prioritou. Avšak čím rychlejší harddisk tím rychlejší bootování, spuštění aplikace nebo uložení sezení. Rychlost disku je velmi podstatná pouze při nedostatku operační paměti protože systém poté podle potřeb přesouvá data do SWAP[REF] prostoru.

  • Periferie

    Hardwarové periferie, kterou je i zvukovka, klávesové nástroje…​ jsou cíle, které přijímají/odesílají informace z/do počítače. Buď analogově jako audiosignál jenž je určen k přímému přehrání v reproduktorech nebo digitálně prostřednictvím MIDI dat. MIDI[16] (Musical Instrument Digital Interface) je však pouze jedna z mnohých technologií.

Prioritu kritických systémových procesů není radno snižovat. Dostane-li zvukovka na hardwarové úrovni vyšší prioritu než klávesnice může být obtížné zastavit nahrávání klávesou. Nesprávným nastavením hardwarového přerušení (IRQ - Interrupt ReQuest) může počítač zatuhnout a nezbyde než počítač vypnout natvrdo a když tak nastavení opravit v RESCUE MODE[REF]. Požadavek hardwarového přerušení je signál na hardwarové úrovni vyslaný procesoru aby přerušil vykonávání jedné činnosti a zaměřil se na jinou, např. na klávesu právě stisknutou uživatelem. Nesprávně nastavená přerušení mohou v muzice způsobovat lupance. Tyto IRQ priority jsou nastavovány na harwarové úrovni.

Na sofwarové úrovni je přidělování prostředků aplikacím obdobné. Programům, které nesouvisí s tvorbou a/nebo s kritickými systémovými procesy, lze snížit prioritu. Nebudou systémem obsluhovány okamžitě. Procesy s nižší prioritou nebudou tak rychlé ale ani náročné a prostředky jim budou přiděleny dle potřeb až poté nebude-li systém prostředky akutně potřebovat pro procesy s vyšší prioritou.

INFO: Praktický příklad - nahrávání audiostopy bude systémem obsluhováno okamžitě (vysoká priorita) ale s vykreslováním grafického rozhraní aplikace systém počká (nízká priorita) do doby než nebude systém plně zaneprázdněn nahráváním. Náhravání je tedy rychlé a bez lupanců ale při kliknutí myší na ikonu může chvíli trvat než se PC rozhoupá.

V operačním systému LINUX slouží k určení softwarové priority kromě příkazu 'chrt'[REF] i starší nástroje nice a renice. Nejsou již často používané ale alespoň o nich vědět je užitečné. Nástroj nice je často vidět i v moderních správcích úloh[REF] ve sloupci označujícího prioritu procesu. Nástroj nice disponuje na rozdíl od nástroje chrt pouze nastavením 'SCHED_OTHER'[REF].

  • Příkazem 'nice -n # command' se spouštějí procesy se zadanou prioritou '#'. Hodnota '#' je z intervalu čísel <-20,19> včetně. Příkaz

    xfce4-terminal
    $ nice -n 19 process                 // nízká priorita   1.)
    $ nice -n -20 process                // vysoká priorita  2.)
    1. spustí 'process' s velmi nízkou prioritou '19'. Vyšší hodnota nice - z angličtiny hodný, milý - znižuje prioritu procesu. Proces je ohleduplnější k jiným procesům. Nastavení nice s kladnými hodnotami může provádět i uživatel;

    2. spustí proces s prioritou '-20'. Proces má velmi vysokou prioritu a je obsluhován přednostně. Takto vysoké priority mají kritické systémové procesy. Nastavení tak vysokých priorit audio aplikacím nejsou žádoucí protože by audio aplikace mohli být obsluhovány přednostně před potřebami systému. Takto nastavené priority by vedli k velmi častým pádům systému. Neutrální výchozí hodnotou, s kterou systém spouští aplikace bez uživatelského použití nástroje nice je 'nice -n 0 ...'. Nastavit spouštění aplikací se zápornými hodnotami je povoleno pouze správci ROOT.

  • Příkaz 'renice' je určen k přenastavení hodnoty nice v již spušteném procesu.

    xfce4-terminal
    $ renice -n 5 -p PID

    PID (číslo procesu) lze najít v některém se správci úloh[REF] (procesů).

Tak jako u nice i nastavení záporných hodnot u renice může provádět pouze správce.

TODO

xfce4-terminal
$ cat /proc

21.2. BOOT Latency

2019-12-09

Spuštěním počítače se aktivuje BIOS[REF], který inicializuje hardware. Další částí bootovacího mechanizmu je načtení informací z MBR tabulky o aktivním oddílu (příznak zavádění, boot flag).

V instalaci DEBIAN byl příznak zavádění nastaven při nastavování oddílů[REF] na harddisku.

Nastavení příznaku zavádění (boot flag) v instalaci
...
    b)
      ...
      "Příznak zavádění:"
              // klávesou [ENTER] bude aktivován příznak zavádění
              // Příznak zavádění pro BOOT systému bude pouze
              // v tomto kořenovém oddílu "/" harddisku.
      "Skončit s nastavováním oblasti"
...

Poté se inicializuje bootloader GRUB[REF] s nabídkou výběru operačních systémů. Výběrem operačního systému LINUX se aktivuje[167]

  1. KERNEL (linuxové jádro), který spustí

  2. proces init. Jako první spuštěný systémový proces běží až do vypnutí počítače jako daemon initd. Spouští všechny ostatní procesy včetně

  3. systemd[168]. Je to první kořenový proces spuštěný v uživatelském prostoru. To je dobré vědět protože získání informací z tohoto nástroje je hlavním vchodem do bootovacích statistik.

TIP: Systemd daemon je spravován a nastavován příkazem systemctl[REF], který spravuje také služby[REF].

Jednou z mnoha jeho funkcí je analýza a ladění bootovacího procesu. Konkrétní informace lze získat příkazem 'systemd-analyze' z rodiny systemd příkazů.

  • systemd-analyze time

    Příkaz se zadáním jeho vnitřní funkce ve tvaru 'systemd-analyze time' zobrazí statistiku o čase zavedení jádra (KERNEL), RAM disku (initrd) a uživatelského prostoru (USERSPACE). Časem pro USERSPACE se rozumí doba potřebná k vytvoření nezbytných systémových služeb ale už nezahrnuje dobu potřebnou k jejich plné inicializaci.

    xfce4-terminal
    $ systemd-analyze time
    Startup finished in 2.584s (kernel) + 19.176s (initrd) + 47.847s (userspace) = 1min 9.608s
    multi-user.target reached after 47.820s in userspace
  • systemd-analyze blame

    Příkaz 'systemd-analyze blame' vypíše informace o všech běžících službách. Ve výstupu jsou seřazené dle doby, kterou potřebují pro svoje nahrání. Místo pojmenování služby je v tomto případě přesnější pojmenování jednotky (item). Nejsou to jen služby ale i sockety, připojení, časovače atd.

    Tyto informace mohou být použity pro ladění startovací doby každého jednotlivého procesu inicializace. Výstup nemusí zobrazovat startovací doby nutně objektivně. Například doba inicializace některé z jednotek může být prodloužena čekáním na dokončení jiného procesu. Nepotřebné jednotky se mohou po úvaze zastavit nebo úplně zakázat.

    xfce4-terminal
    $ systemd-analyze blame
             32.875s pmlogger.service
             20.905s systemd-networkd-wait-online.service
             13.299s dev-vda1.device
             ...
                23ms sysroot.mount
                11ms initrd-udevadm-cleanup-db.service
                 3ms sys-kernel-config.mount

    Seznam běžících jednotek se vyvolá příkazem 'systemctl'[REF] bez parametrů, argumentů a přepínačů.

    TIP: Pro dlouhý výpis se vyplatí příkaz napsat ve tvaru 'systemctl | less'. Otevřené okno less[REF] se zavře klávesou [q].
    Hledání přesného řetězce, např. "target", ulehčí i doplnění příkazu o grep[REF] - 'systemctl | grep --color -i -n target | less'. V minulosti zapsané příkazy lze rychle vyhledat[REF].

    TODO ITEM?UNIT

    Tabulka 8. Přehled jednotek systemd
    UNIT[169] (jednotka) Popis

    služba (jméno_služby.service)

    Spravuje daemony služeb.

    socket (jméno_socketu.socket)

    Pracuje se sockety.

    zařízení (jméno_zařízení.device)

    Správcem hardwarových zařízení a zdrojem informací o nich je udev[170]. Zařízení (device) jsou v adresáři "/dev" a informace o nich získává udev z adresáře "/sys". Manuál 'man udev'.

    připojení (jméno.mount)

    Přípojné body v souborovém systému ; konfigurace je v "/etc/fstab".

    automatické připojení (jméno.automount)

    Přípojné body v okamžiku prvního pokusu o přístup.

    cíl (jméno.target)

    Logická skupina jednotek, která spustí všechny služby vyžadované některou z jednotek. Fiktivní příklad: vložení zvukovky do USB inicializuje skupinu "zvukovka.target", která spustí všechny služby vyžadované pro chod zvukovky.

    snímek (jméno.snapshot)

    Ukládá momentální stav jednotek. Některé z jednotek nepodporují hibernaci, hibernací se vypnou a po startu opět nahrají. Snapshot před hibernací uloží jejich aktuální stav a po startu ho vyvolá.

    odkládací paměť (jméno.swap)

    Informace o dostupných úložištích pro SWAP ; konfigurační soubor "/etc/fstab".

    časovač (jméno.timer)

    Jednotky spouštěné na základě časových událostí.

  • systemd-analyze plot > image.svg

    xfce4-terminal
    $ systemd-analyze plot > "/path/boot.svg"

    Znak '>' přesměruje[REF] výstup příkazu 'systemd-analyze plot' do souboru boot.svg. To znamená, že vytvoří a uloží soubor do formátu vektorové grafiky (.svg). Do statistiky lze poté nahlédnout prohlížečem obrázků s podporou vykreslení formátů svg. K tomuto účelu je vhodný GEEQIE[REF]. Příkaz bez zadání cesty uloží soubor do pracovního adresáře[REF].

Mnoho dalších funkcí a voleb je popsáno v manuálu k příkazu 'man systemd-analyze'.

21.3. PCI Latency

2019-07-19

TODO

xfce4-terminal
$ setpci -v -s 04:01.0 latency_timer=ff
pci_latency.sh - script pro automatizaci
#!/bin/sh

case $1 in
	start)
		setpci -v -s "*:*.*" latency_timer=b0
		# Update this one with the device you want to optimize
		setpci -v -s 04:01.0 latency_timer=ff
esac

exit 0

22. …​

22.1. …​

…​


1. PCI (Peripheral Component Interconnect) - sběrnice pro připojení periferních zařízení
https://cs.wikipedia.org/wiki/PCI(CS)
2. PCIe (PCI-Express) - někdy PCI-E
https://cs.wikipedia.org/wiki/PCI-Express(CS)
3. FIREWIRE (IEEE 1394,i.Link) - vysokorychlostní sériová sběrnice pro připojení průmyslových video systémů a profesionálních audio systémů
https://cs.wikipedia.org/wiki/FireWire(CS)
4. USB (Universal Serial Bus) - univerzální seriová sběrnice pro připojení externích zařízení
https://cs.wikipedia.org/wiki/Universal_Serial_Bus(CS)
5. LPT (Line Print Terminal) - rozhraní paralelního portu pro zařízení tiskáren
https://cs.wikipedia.org/wiki/Paraleln%C3%AD_port(CS)
6. FDD (Floppy Disk Drive) - disketová mechanika
https://cs.wikipedia.org/wiki/Disketov%C3%A1_mechanika(CS)
7. THUNDERBOLT - spojuje PCI-Express a DisplayPort do sériového datového rozhraní
https://cs.wikipedia.org/wiki/Thunderbolt(CS)
8. ARDUINO - jednodeskový počítač určen k výuce informatiky, k vytváření samostatných interaktivních zapojení atd.
https://cs.wikipedia.org/wiki/Arduino(CS)
9. CPU (Central Processing Unit)
https://cs.wikipedia.org/wiki/Centr%C3%A1ln%C3%AD_procesorov%C3%A1_jednotka(CS)
10. BIOS (Basic Input-Output System) - základní I/O (vstupně-výstupní) funkce implementované na základní desce a inicializované při startu počítače
https://cs.wikipedia.org/wiki/BIOS(CS)
11. RAM (Random-Access-Memory) - paměť
https://cs.wikipedia.org/wiki/RAM(CS)
12. POSIX (Portable Operating System Interface) - jednotné rozhraní, zajišťuje přenositelnost aplikací mezi různými hardwarovými platformami
https://cs.wikipedia.org/wiki/POSIX(CS)
13. hardware kompatibilita v DEBIAN
https://www.debian.org/releases/stable/amd64/ch03s03.html.cs#idm492(CS)
14. HDD (Hard Disk Drive) - pevný disk
https://cs.wikipedia.org/wiki/Pevn%C3%BD_disk(CS)
15. INTERFACE - rozhraní
https://cs.wikipedia.org/wiki/Rozhran%C3%AD_(informatika);(CS)
16. MIDI (Musical Instrument Digital Interface)
https://cs.wikipedia.org/wiki/Musical_Instrument_Digital_Interface(CS)
17. WIFI (Wireless Ethernet Compatibility Aliance) - bezdrátový přenos dat
https://cs.wikipedia.org/wiki/Wi-Fi(CS)
18. BLUETOOTH - digitální bezdrátová komunikace
https://cs.wikipedia.org/wiki/Bluetooth(CS)
19. Výrobce linuxových počítačů a systému system76
https://system76.com(EN)
20. linuxové jádro - Linux Kernel
https://cs.wikipedia.org/wiki/Linux_(j%C3%A1dro);(CS)
21. Pragmatická podpora LINUX od MS
https://www.zive.cz/clanky/windows-10-budou-mit-kompletni-linuxove-jadro-zatim-jen-pro-vyvojare/sc-3-a-198334/default.aspx(CS)
22. FFADO (Free FireWire Audio Drivers) - OPENSOURCE ovladače pro FIREWIRE rozhraní v LINUX. Počátky tohoto projektu jsou známé pod pojmenováním FreeBoB. Současná verze dovoluje připojení skrze JACK Audio Connection Kit
http://www.ffado.org/?q=devicesupport/list(EN)
23. ISA (Industry Standard Architecture) - 8/16bit sběrnice na základní desce
https://cs.wikipedia.org/wiki/ISA_(sb%C4%9Brnice);(CS)
24. MB (Motherboard) - základní deska
https://cs.wikipedia.org/wiki/Z%C3%A1kladn%C3%AD_deska(CS)
25. ISO obrazy DEBIAN LIVE edice
https://www.debian.org/CD/live(SK)
26. minimální hardwarové požadavky pro DEBIAN:
https://www.debian.org/releases/stable/amd64/ch03s04.cs.html(CS)
27. RASPBERRY PI - jednodeskový počítač
https://cs.wikipedia.org/wiki/Raspberry_Pi(CS)
28. POST (Power On Self Test) - diagnostický program zavedený při startu počítače
https://cs.wikipedia.org/wiki/Power_On_Self_Test(CS)
29. kontakt vyvedený ze součástky
https://cs.wikipedia.org/wiki/Pin(CS)
30. JUMPER - fyzická propojka kontaktů
https://cs.wikipedia.org/wiki/Jumper_(po%C4%8D%C3%ADta%C4%8D);(CS)
31. PULSEAUDIO - uživatelsky přívětivý linuxový zvukový server ale není určen pro studiové realtime zpracování audia
https://cs.wikipedia.org/wiki/PulseAudio(CS)
32. ARDOUR - je program určen ke zpracování a k míchání zvukových nahrávek a MIDI stop na počítači, v LINUX jsou jimi také ROSEGARDEN, komerční MIXBUS, ve WINDOWS a MACOS CUBASE, SONAR, PROTOOLS, LOGICPRO atd.
https://cs.wikipedia.org/wiki/Ardour(CS)
33. škálování frekvence CPU ("CPU frequency scaling", "CPU throttling")
https://wiki.debian.org/HowTo/CpuFrequencyScaling(EN)
https://wiki.archlinux.org/index.php/CPU_frequency_scaling_(%C4%8Cesky);(CS)
34. stavy C1-C3 - snižují frekvenci hodinového signálu CPU, C4-C6 - redukují jeho napětí, kapitálka "E" značí Extended, Enhanced
35. PCI Latency - problém s klikáním a praskáním
http://www.rainrecording.co.uk/pro/software/adjusting-pci-latency(EN)
36. HPET (High Precision Event Timer)
https://en.wikipedia.org/wiki/High_Precision_Event_Timer(EN)
https://www.techarp.com/bios-guide/hpet-mode(EN)
https://blog.fpmurphy.com/2009/07/linux-hpet-support.html(EN)
37. Hardwarové časovače
https://wiki.osdev.org/Timer_Interrupt_Sources(EN)
38. na počítač je možné paralelně instalovat více operačních systémů
https://cs.wikipedia.org/wiki/Multi-boot(CS)
39. UEFI (Unified Extensible Firmware Interface)
https://cs.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface(CS)
40. Operační systém MacOS
https://cs.wikipedia.org/wiki/MacOS(CS)
41. Systém BSD (Berkeley Software Development)
https://cs.wikipedia.org/wiki/BSD(CS)
42. Operační systém Microsoft Windows
https://cs.wikipedia.org/wiki/Microsoft_Windows(CS)
43. API (Application Programming Interface) - rozhraní pro programování aplikací
https://cs.wikipedia.org/wiki/API(CS)
44. RT (REALTIME) KERNEL - zpracování informací v okamžitém čase bez časových prodlev
https://cs.wikipedia.org/wiki/Opera%C4%8Dn%C3%AD_syst%C3%A9m_re%C3%A1ln%C3%A9ho_%C4%8Dasu(CS)
45. LINUX je pojmenování pro linuxové jádro (KERNEL), operační systém se jmenuje GNU/LINUX
https://cs.wikipedia.org/wiki/Linux(CS)
46. WINE (Wine Is Not an Emulator) - vrstva pro běh WINDOWS aplikací na POSIX compliant systémech, jako GNU/LINUX, MACOS, BSD
https://www.winehq.org(EN)
47. MACOS aplikace v Linux
https://www.darlinghq.org(EN)
48. MMX distribuce
https://wiki.linuxaudio.org/apps/categories/distributions(EN)
49. původ Debian, programové balíčky *.deb
http://www.bandshed.net/avlinux(EN)
https://kx.studio(EN)
http://ubuntustudio.org(EN)
50. původ RedHat, programové balíčky *.rpm
https://labs.fedoraproject.org/en/jam(EN)
51. Didjix distribuce - původ ArchLinux
http://easy.open.and.free.fr/didjix/index.html(EN)
• Audio Linux - původ ArchLinux - komerční, je také pro Raspberry PI
http://www.audio-linux.com(EN)
52. distribuce OpenArtist - základ DEBIAN
http://openartisthq.org(EN)
53. MMX distribuce TangoStudio
http://tangostudio.tuxfamily.org(EN)
54. ArchLinux WIKI
https://wiki.archlinux.org/index.php/Main_Page_(%C4%8Cesky);(CS)
55. Gentoo Linux
https://cs.wikipedia.org/wiki/Gentoo_Linux(CS)
56. distribuce DEBIAN
https://www.debian.org(CS)
57. FSF - Free Software Foundation
https://cs.wikipedia.org/wiki/Free_Software_Foundation(CS)
58. GNU - akronym "GNU’s Not Unix" - unix-like operační systém
https://www.gnu.org(EN)
59. repozitář je webové úložiště s aplikacemi.
1.) Zdroje pro DEBIAN:
https://wiki.debian.org/SourcesList(EN)
2.) Repozitáře třetích stran:
2.a - repozitáře KXStudio:
https://kx.studio/Repositories(EN)
2.b - aplikace WINEASIO a FSTHOST od vývojářů bývalé distribuce TangoStudio:
http://tangostudio.tuxfamily.org(EN)
2.c - ppa (Personal Package Archives) repozitáře pro UBUNTU:
https://launchpad.net/ubuntu/+ppas(EN)
60. GUI (Graphical User Interface) - grafická uživatelská nástavba s praktickým ovládáním plochy spravované okenním správcem
https://cs.wikipedia.org/wiki/Grafick%C3%A9_u%C5%BEivatelsk%C3%A9_rozhran%C3%AD(CS)
61. Instalační příručky:
32-bit (i386):
https://www.debian.org/releases/stable/i386/index.html.cs(CS)
64-bit (amd64)
https://www.debian.org/releases/stable/amd64/index.html.cs(CS)
62. DEBIAN ISO obrazy
https://www.debian.org/releases(CS)
63. Programy pro zápis ISO obrazu na flashdisk
https://fossbytes.com/top-5-bootable-usb-tools-for-windows-os(EN)
UNetbootin - WINDOWS, LINUX
https://unetbootin.github.io(EN)
Rufus - WINDOWS
https://rufus.ie/cs_CZ.html(CS)
64. ROOT - správce LINUX OS, kořenový adresář
https://cs.wikipedia.org/wiki/Adres%C3%A1%C5%99_(informatika)#Ko%C5%99enov%C3%BD_adres%C3%A1%C5%99(CS)
65. Diskový oddíl - partition
https://cs.wikipedia.org/wiki/Diskov%C3%BD_odd%C3%ADl(CS)
66. Linuxový souborový systém EXT4
https://cs.wikipedia.org/wiki/Ext4(CS)
67. NTFS - New Technology File System
https://cs.wikipedia.org/wiki/NTFS(CS)
68. FAT - File Allocation Table
https://cs.wikipedia.org/wiki/File_Allocation_Table(CS)
69. GUID Partition Table (GPT) je standard pro popis členění pevného disku na oddíly. Je náhradou za BIOS MBR tabulku.
https://cs.wikipedia.org/wiki/GUID_Partition_Table(CS)
70. MBR (Master Boot Record)
https://cs.wikipedia.org/wiki/Master_boot_record(CS)
71. noatime, nodiratime
https://wiki.archlinux.org/index.php/Professional_audio(EN)
72. XRUN - podtečení nebo přetečení ALSA audio BUFFERu, audiosoftware není dostatečně rychlý pro přenos nebo zpracování dat uložených v BUFFER kontejneru
73. pravidelné aktualizace systému - unattended-upgrades
https://wiki.debian.org/UnattendedUpgrades(EN)
74. GRUB
https://cs.wikipedia.org/wiki/GRUB(CS)
75. UTC - Koordinovaný světový čas (Universal Time Coordinated)
https://cs.wikipedia.org/wiki/Koordinovan%C3%BD_sv%C4%9Btov%C3%BD_%C4%8Das(CS)
76. XFCE
https://cs.wikipedia.org/wiki/Xfce(CS)
77. Window Manager (WM)
https://cs.wikipedia.org/wiki/Spr%C3%A1vce_oken(CS)
https://en.wikipedia.org/wiki/Comparison_of_X_window_managers(EN)
78. GNOME služby
https://gnomeshell.wordpress.com/2011/08/28/manage-the-startup-applications(EN)
79. skript
https://cs.wikipedia.org/wiki/Skript_(programov%C3%A1n%C3%AD);(CS)
80. DPMS - "Display Power Management Signaling"
https://wiki.archlinux.org/index.php/Xorg_(%C4%8Cesky);(CS)
81. Správce balíků Synaptic
https://cs.wikipedia.org/wiki/Synaptic(CS)
https://wiki.ubuntu.cz/instalace_program%C5%AF/synaptic(CS)
82. Xjadeo - video přehrávač
http://xjadeo.sourceforge.net/main.html(EN)
83. klávesové zkratky MIDNIGHT COMMANDER
https://cs.wikibooks.org/wiki/Midnight_Commander(CS)
84. syntaxe - zápis nebo všeobecný vzor zápisu
85. webbrowser "links"
https://cs.wikipedia.org/wiki/Links(CS)
86. webbrowser "elinks"
https://cs.wikipedia.org/wiki/ELinks(CS)
87. linuxové signály
https://cs.wikipedia.org/wiki/Sign%C3%A1l_(informatika);(CS)
88. LightDM (Light Display Manager)
https://github.com/CanonicalLtd/lightdm(EN)
89. Přístupová práva v UNIX-LIKE systémech
https://cs.wikipedia.org/wiki/P%C5%99%C3%ADstupov%C3%A1_pr%C3%A1va_v_Unixu(CS)
https://dougvitale.wordpress.com/2013/02/16/linux-file-permissions-and-chmod(EN)
90. Skupiny
https://cs.wikipedia.org/wiki/Skupina_(informatika);(CS)
91. DEBIAN dokumentace
https://wiki.debian.org/cs/FrontPage(CS)
92. UBUNTU wiki
https://wiki.ubuntu.cz(CS)
93. ARCHLINUX wiki
https://wiki.archlinux.org/index.php/Main_Page_(%C4%8Cesky);(CS)
94. servery s hudební tématikou
http://linuxmusicians.com(EN)
95. TLDP ("The Linux Documentation Project")
https://www.tldp.org/index.html(EN)
96. příkazový řádek, command-line
https://cs.wikipedia.org/wiki/P%C5%99%C3%ADkazov%C3%BD_%C5%99%C3%A1dek(CS)
https://www.root.cz/serialy/hratky-z-radky(CS)
https://www.commandlinefu.com(EN)
https://github.com/k4m4/terminals-are-sexy(EN)
97. DAW (Digital Audio Workstation)
https://en.wikipedia.org/wiki/Digital_soundserver_workstation(EN)
98. TERMINAL - hardwarové zařízení pro komunikaci s počítačem
https://cs.wikipedia.org/wiki/Termin%C3%A1l_(informatika);(CS)
99. CLI (Command-Line Interface) - rozhraní příkazové řádky - textové rozhraní, do kterého se zapisují příkazy pro TERMINAL
100. příkaz k manuuálovým stránkám 'man'
https://cs.wikibooks.org/wiki/Man(CS)
101. Interní proměnná
http://tldp.org/LDP/abs/html/internalvariables.html(EN)
102. Domovský adresář - home directory
https://cs.wikipedia.org/wiki/Dom%C3%A1c%C3%AD_adres%C3%A1%C5%99(CS)
103. pracovní adresář - working directory
https://cs.wikipedia.org/wiki/Pracovn%C3%AD_adres%C3%A1%C5%99(CS)
104. Rodičovský proces - Parent Process
https://cs.wikipedia.org/wiki/Rodi%C4%8Dovsk%C3%BD_proces(CS)
105. Chybové hlášení - STDERR
https://www.abclinuxu.cz/ucebnice/zaklady/prikazova-radka/standardni-vstup-a-vystup(CS)
106. Bash - Bourne Again Shell
https://cs.wikipedia.org/wiki/Bash(CS)
107. Příkaz 'alias'
https://cs.wikipedia.org/wiki/Alias_(Unix);(CS)
108. Pipeline - roura, pajpa pro presměřování příkazu
https://cs.wikipedia.org/wiki/Roura_(Unix);(CS)
109. Příkaz 'dmesg'
https://en.wikipedia.org/wiki/Dmesg(EN)
110. Redirecting - přesměrování příkazu
https://cs.wikipedia.org/wiki/P%C5%99esm%C4%9Brov%C3%A1n%C3%AD(CS)
111. Příkaz 'less'
https://cs.wikipedia.org/wiki/Less_(Unix);(CS)
112. Stránkovač - Pager
https://en.wikipedia.org/wiki/Terminal_pager(EN)
113. Příkaz 'grep' (search Globally for lines matching the Regular Expression, and Print them)
https://cs.wikipedia.org/wiki/Grep(CS)
114. regulární výrazy - REGEX
https://cs.wikipedia.org/wiki/Regul%C3%A1rn%C3%AD_v%C3%BDraz(CS)
115. Příkaz 'find'
https://cs.wikipedia.org/wiki/Find(CS)
116. Přístupová práva - příkaz 'chmod'
https://cs.wikipedia.org/wiki/Chmod(CS)
https://en.wikipedia.org/wiki/Chmod(EN)
117. Příkaz 'chown'
https://cs.wikipedia.org/wiki/Chown(CS)
118. FHS (Filesystem Hierarchy Standard) - hierarchie souborového systému
https://cs.wikibooks.org/wiki/Linux:Adres%C3%A1%C5%99ov%C3%A1_struktura(CS)
https://cs.wikipedia.org/wiki/Filesystem_Hierarchy_Standard(CS)
119. FSTAB (File Systems Table) - tabulka souborového systému
https://cs.wikipedia.org/wiki/Fstab(CS)
https://en.wikipedia.org/wiki/Fstab(EN)
120. Příkaz 'mount'
https://cs.wikipedia.org/wiki/Mount(CS)
121. GRSYNC - aplikace pro zálohování
https://en.wikipedia.org/wiki/Grsync(EN)
122. RAID pole (Redundant Array of Independent Disks) - metoda zabezpečení dat proti selhání disku
https://cs.wikipedia.org/wiki/RAID(CS)
123. 'dmesg' (display message)
https://en.wikipedia.org/wiki/Dmesg(EN)
124. adresář /proc
https://www.root.cz/serialy/co-pred-nami-taji-proc(CS)
125. 'cat' (concatenate)
https://cs.wikipedia.org/wiki/Cat(CS)
126. swapovací prostor
https://cs.wikipedia.org/wiki/Virtu%C3%A1ln%C3%AD_pam%C4%9B%C5%A5(CS)
127. testdisk - domovské stránky
https://www.cgsecurity.org/wiki/TestDisk(EN)
128. photorec - seznam obnovitelných formátů souborů
https://www.cgsecurity.org/wiki/File_Formats_Recovered_By_PhotoRec(EN)
129. ISO obraz
https://cs.wikipedia.org/wiki/ISO_obraz(CS)
130. WGET (www get) - stahovač souborů
https://cs.wikipedia.org/wiki/Wget(CS)
131. UltimateBootCD - LiveCD
https://www.ultimatebootcd.com
https://partedmagic.com(EN)
132. GParted LiveCD s českou příručkou
https://gparted.org/index.php(EN)
https://gparted.org/display-doc.php?name=help-manual&lang=cs(CS)
133. GParted - tabulka s podporou souborových systémů
https://cs.wikipedia.org/wiki/GParted#Podpora_souborov%C3%BDch_syst%C3%A9m%C5%AF(CS)
134. SystemRescueCD
http://www.system-rescue-cd.org(EN)
135. All in One – System Rescue Toolkit
https://paul.is-a-geek.org/aio-srt(EN)
136. Boot Repair
https://sourceforge.net/p/boot-repair/home/cs(CS)
• iso obrazy 32-bit/64-bit https://sourceforge.net/projects/boot-repair-cd/files(EN)
137. verze (releases) DEBIAN
https://www.debian.org/releases(CS)
138. GTK knihovny
https://cs.wikipedia.org/wiki/GTK(CS)
139. Flatpak
https://flatpak.org/setup/Debian(EN)
https://flathub.org/apps/category/AudioVideo(EN)
140. Parole - multimediální GStreamer přehrávač
141. Quodlibet - GStreamer přehrávač
https://cs.wikipedia.org/wiki/Quod_Libet(CS)
142. GStreamer
https://cs.wikipedia.org/wiki/GStreamer(CS)
143. ALSA (Advanced Linux Sound Architecture) - LINUX zvukové ovladače původem z Čech
https://www.perex.cz/perex
https://cs.wikipedia.org/wiki/Advanced_Linux_Sound_Architecture(CS)
https://www.alsa-project.org(EN)
144. daemon
https://cs.wikipedia.org/wiki/D%C3%A9mon_(software);(CS)
https://cs.wikipedia.org/wiki/Seznam_unixov%C3%BDch_d%C3%A9mon%C5%AF(CS)
145. nízkolatenční realtimový sounserver JACK (JACK Audio Connection Kit), běží na LINUX, MACOS, WINDOWS
http://jackaudio.org(EN)
https://en.wikipedia.org/wiki/JACK_Audio_Connection_Kit(EN)
nastavení JACK:
https://wiki.archLINUX.org/index.php/JACK_Audio_Connection_Kit(EN)
https://libremusicproduction.com/articles/demystifying-jack-%E2%80%93-beginners-guide-getting-started-jack(EN)
146. PipeWire
https://en.wikipedia.org/wiki/PipeWire(EN)
147. JACK verze
https://github.com/jackaudio/jackaudio.github.com/wiki/Q_difference_jack1_jack2(EN)
148. QjackCtl
https://qjackctl.sourceforge.io(EN)
149. Patchage
https://drobilla.net/software/patchage(EN)
150. VST (Virtual Studio Technology)
https://cs.wikipedia.org/wiki/Virtual_Studio_Technology(CS)
151. Cadence
https://kx.studio/Applications:Cadence(EN)^
152. PatchMatrix
https://git.open-music-kontrollers.ch/lad/patchmatrix/about(EN)
153. Sample rate (vzorkovací frekvence)
https://cs.wikipedia.org/wiki/Vzorkovac%C3%AD_frekvence(CS)
154. perl - programovací jazyk
155. RTCQS (realTimeConfigQuickScan.pl) - domovské stránky projektu s krátkou dokumentací
https://github.com/raboof/realtimeconfigquickscan(EN)
156. 'apt-get' - příkaz v DEBIAN slouží pro správu programových balíčků
https://linux.die.net/man/8/apt-get(EN)
157. moduly linuxového jádra
https://cs.wikipedia.org/wiki/Jadern%C3%BD_modul(CS)
158. jackfreqd
http://rg42.org/oss/jackfreqd/start(EN)
159. DSP - Digital Signal Processor
https://cs.wikipedia.org/wiki/Digit%C3%A1ln%C3%AD_sign%C3%A1lov%C3%BD_procesor(CS)
160. swappiness
https://www.mujdebian.cz/nastaveni-vyuziti-swapu(CS)
161. příkaz 'sysctl'
https://cs.wikipedia.org/wiki/Sysctl(CS)
162. Display manager (DM)
https://cs.wikipedia.org/wiki/X_display_manager(CS)
https://en.wikipedia.org/wiki/Comparison_of_X_Window_System_desktop_environments(EN)
163. inotify
https://cs.wikipedia.org/wiki/Inotify(CS)
164. inotify
https://wiki.linuxaudio.org/wiki/system_configuration#sysctlconf(EN)
165. SDD tuning
http://elinux.org/images/b/b6/EMMC-SSD_File_System_Tuning_Methodology_v1.0.pdf(EN)
166. HDMI (High-Definition Multimedia Interface)
https://cs.wikipedia.org/wiki/High-Definition_Multimedia_Interface(CS)
167. Linux BOOT
https://cs.wikipedia.org/wiki/Start_Linuxu(CS)
168. daemon systemd
https://cs.wikipedia.org/wiki/Systemd(CS)
169. Přehled jednotek systemd
http://www.abclinuxu.cz/clanky/systemd-principy(CS)
170. Správce zařízení 'udev'
http://www.abclinuxu.cz/clanky/piseme-pravidla-pro-udev(CS)