====== Hardware - přidání a odebírání ======
Toto téma je velmi široké, protože různé druhy [[:hardware:start|hardware]] se zprovoznňují odlišným způsobem. Proto zde toto téma probereme jen obecně. Pro obecný popis o přidávání jaderných modulů (s ovladači) do systému [[:system:prikazovy_radek:kernel_upravy |Jádro a jeho úpravy]].
[[wp>cs:Ovladač_zařízení|Ovladače]] jsou v linuxu součástí [[wp>cs:kernel|jádra (kernelu)]] a jsou spoušteny v kernel space. Mohou být zkompilovány jako nedílná součást jádra, nebo jako jaderný modul, který systém načte v případě potřeby.
Pokud do systému přidáte nový hardware, je nezbytné zjistit, jaký ovladač potřebuje. Něco může zodpovědět příkaz
[[:konzole|{{:wiki:icons:konzole.png?40 |Konzole}}]]
# dmesg
který vypíše odezvu systému na poslední hardwarovou událost. Pokud tedy připojíte k počítači kupříkladu usb flash pamět, ve výpisu se to projeví. Z výpisu zjistíte, jak systém zařízení detekoval, kam ho připojil atd. Příklad je např. zde: [[:hardware:webcam|Nastavení webové kamery]].
Pokud není systém schopen přiřadit zařízení příslušný ovladač, je zapotřebí propátrat internet a potřebnou informaci najít. Dále se dá zjistit, zda je uvedený soubor součástí některého [[:software:instalace:rpm|RPM balíčku]] v [[:zdroje|repozitářích]] Mageii:
[[:konzole|{{:wiki:icons:konzole.png?40 |Konzole}}]]
# urpmf --files jmeno_souboru
Parametr ''jméno_souboru'' použijte přesně. V odpovědi se vypíšou balíčky soubor obsahující. Máte-li štěstí, je součástí některého distribučního jádra (balíčky se slovem ''kernel'' v názvu).
===== Zavedení ovladače do systému =====
Není-li potřebný ovladač aktivní, je zapotřebí ho do systému zavést:
[[:konzole|{{:wiki:icons:konzole.png?40 |Konzole}}]]
# modprobe nazev_ovladace
Zda se podařilo úspěšně zavést správný ovladač lze zjistit z reakce hardwarového zařízení. Lze také použít příkaz
[[:konzole|{{:wiki:icons:konzole.png?40 |Konzole}}]]
# lsmod
který vypíše do paměti systému načtené moduly (ovladače). Je-li mezi nimi i ten váš, zadali jste příkaz správně.
Systém by nyní měl zařízení správně detekovat a zprovoznit. Použijte k tomu vhodnou aplikaci, která dané zařízení využívá. Pokud zařízení nefunguje, použili jste špatný ovladač (někdy stačí, když se použije nesprávná verze).
Pokud soubor s ovladačem není součástí jádra, které používáte, nainstalujte si to [[:system:prikazovy_radek:kernel_upravy#vymena_jadra|jádro]], kde je ve výpisu obsažen.
Není-li obsažen v žádném balíčku z [[:zdroje|repozitářů]], budete si muset ovladač sami zkompilovat - více viz soubory ''README'', které jsou běžnou součástí zdrojových souborů ovladačů. Nelze být více konkrétní, protože ovladače mohou být napsány v různých programovacích jazycích a způsob kompilace se pak liší.
Po (úspěšné) kompilaci opět nastoupí příkaz ''modprobe''.
===== Získávání informací: užitečné příkazy =====
příkazy ''ls*'' vypisují informace o hardware příslušné skupiny: \\
* ''lspci'' a ''lspcidrake'' - zařízení na sběrnici PCI
* ''lscpu'' - informace o procesoru
* ''lsusb'' - zařízení USB
* ''lsmod'' - načtené moduly (ovladače)
* ''lsattr'' - vypisuje atributy souborů
Další velmi užitečné výstupy poskytne příkaz ''hwinfo'' ze stejnojmenného balíčku, lze nainstalovat příkazem
[[:konzole|{{:wiki:icons:konzole.png?40 |Konzole}}]]
# urpmi hwinfo
Obsahuje jednoduchou nápovědu (''hwinfo %%--%%help''), takže použití příkazu zvládne každý.
===== Získávání informací: užitečné adresáře =====
Další info k problematickému hardware můžete získat ze speciálního adresáře ''/proc/'' a ''/dev''. Zde se v příslušných podadresářích nacházejí soubory zařízení, které reprezentují jednotlivé hardwarové komponenty. Obvykle se pro výpis informací používá příkaz
[[:konzole|{{:wiki:icons:konzole.png?40 |Konzole}}]]
cat /proc/[podadresar/]soubor
Například info o procesoru:
[[:konzole|{{:wiki:icons:konzole.png?40 |Konzole}}]]
cat /proc/cpuinfo
vypíše informace o procesoru.
Podadresáře jsou logicky pojmenovány. Pokud obsahují jen čísla, jde o čísla běžících procesů (proto se i adresář jmenuje ''/proc'').
Pokud si uvědomíte, že v linuxu je "vše soubor", pak i připojená zařízení jsou "soubor", a to spuštěný, tedy dala by se použít parafráze "vše co pracuje je proces".
* v souboru ''/proc/devices'' naleznete seznam ovladačů, které vaše jádro obsahuje
* ''/proc/filesystems'' seznam jádru známých souborových systémů
* ''/proc/interrupts'' používaná přerušení,
* ''/proc/ioports'' používané vstupní a výstupní porty
* ''/proc/kcore'' obsahuje obraz paměti
* ''/proc/kmsg'' hlášení jádra (odtud je bere i ''syslog'')
* ''/proc/meminfo'' využití paměti
* ''/proc/modules'' zavedené moduly jádra
* ''/proc/version'' - verzi jádra
* atd.
Programy jako ''cpuinfo'', ''free'' a mnohé další berou informace právě odtud.
Ze souborů v adresáři ''/dev/'' mnoho informací nezískáte (nejde o textové soubory), ale procházením jmen souborů se můžete lecos dozvědět.
* například v podadresáři ''/dev/cpu'' máte tolik podadresářů, kolik máte procesorů/jader
* v ''/dev/disk/'' jsou podadresáře a soubory týkající se vašich disků a diskových oddílů atd