abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 09:00 | Nová verze

Byla vydána nová verze linuxové distribuce BunsenLabs Linux s předkonfigurovaným správcem oken Openbox. Její název je Lithium a založena je na Debianu 10 Buster. Přehled novinek v poznámkách k vydání. BunsenLabs Linux je nástupcem dnes již nevyvíjené linuxové distribuce CrunchBang (zkráceně #!).

Ladislav Hagara | Komentářů: 0
dnes 08:00 | Nová verze

Po 9 týdnech vývoje od vydání Linuxu 5.7 oznámil Linus Torvalds vydání Linuxu 5.8 (LKML). Přehled nových vlastností a vylepšení na stránce Linux Kernel Newbies.

Ladislav Hagara | Komentářů: 0
dnes 07:00 | Komunita

Omar Roth, hlavní vývojář Invidious, alternativního webového frontendu k YouTube, oznámil, že kvůli přehlcení a nedostatku motivace projekt opouští a zřejmě skončí také oficiální instance invidio.us (k 1. září, resp. API k 1. říjnu); stále poběží další instance nebo je možné nasadit vlastní.

Fluttershy, yay! | Komentářů: 0
včera 14:22 | Zajímavý projekt

Byly vyhlášeny výsledky soutěže JS1024 2020 aneb zajímavé programy napsané v JavaScriptu o velikosti maximálně 1 024 bajtů. Více o vítězném pianu na stránkách autora.

Ladislav Hagara | Komentářů: 0
včera 01:11 | Zajímavý software

Felix Rieseberg na Twitteru oznámil, že po Windows 95 dostal do Electronu také počítač Macintosh Quadra 900 s operačním systémem Mac OS 8 a celou řadou aplikací. Zdrojové kódy, jakož i připravené balíčky, jsou k dispozici na GitHubu pod názvem macintosh.js.

Ladislav Hagara | Komentářů: 0
1.8. 23:11 | Nová verze

Projekt Debian aktualizoval obrazy stabilní větve „Buster“ (10.5). Součástí jsou opravy především zavaděče systému GRUB2 týkající se zranitelnosti „BootHole“.

Fluttershy, yay! | Komentářů: 0
31.7. 22:44 | Zajímavý projekt

V akci Humble Double Fine 20th Anniversary Bundle je možné zakoupit balík vesměs multiplatformních her od studia Double Fine, a to ve formě klíčů pro Steam nebo v některých případech i přímo ke stažení; za cenu aspoň 0,87-8 eur, kterou jde rozdělit mezi vydavatele, zprostředkovatele a charitu. Akce končí 13. srpna.

Fluttershy, yay! | Komentářů: 0
31.7. 17:22 | Nová verze

Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 96 (pdf), HackSpace 33 (pdf) a Wireframe 40 (pdf).

Ladislav Hagara | Komentářů: 1
31.7. 12:55 | Komunita

Je poslední pátek v červenci, a proto všem systémovým administrátorům vše nejlepší k dnešnímu Dni systémových administrátorů (System Administrator Appreciation Day).

Ladislav Hagara | Komentářů: 6
31.7. 01:11 | Nová verze

Po téměř pěti měsících vývoje od vydání verze 245 byla vydána nová verze 246 správce systému a služeb systemd (GitHub, NEWS).

Ladislav Hagara | Komentářů: 34
Dokážete si představit, že by váš hlavní počítač (desktop, notebook) byl v současné době založen na architektuře jiné než x86 (x86_64)? Například ARM, POWER, RISC-V,…
 (12%)
 (9%)
 (56%)
 (18%)
 (5%)
Celkem 77 hlasů
 Komentářů: 6, poslední včera 03:02
Rozcestník

Sysfs - brána do jadra

12. 7. 2005 | Matej Gagyi | Systém | 8123×

Sysfs je virtuálny súborový systém podobný procfs. Nájdete ho v adresári /sys. Pomocou neho môžete kontrolovať hárdvér na svojom počítači. Dnes si porozprávame o jeho charakteristikách a uvedieme niekoľko príkladov použitia.

Úvod

Ak používate jadro rady 2.6, mohli ste si vo svojom koreňovom adresári všimnúť adresár /sys. Je to prípojný bod pre nový virtuálny súborový systém Linuxu - Sysfs.

Sysfs, ako každý virtuálny súborový systém, sa nachádza len v pamäti a na vašom pevnom disku nezaberá žiadne miesto. Jeho obsah presne reprezentuje vnútorný model zariadení v jádre Linuxu.

Skoro všetky informácie o vašom hardvéri a ovládačoch sú v jeho štruktúre logicky usporiadané a niektoré i nastaviteľné, podobne ako je tomu pri Procfs.

Charakteristika Sysfs

Začiatky Sysfs

Sysfs bol vyvinutý špeciálne pre Linux a na iných unixových systémoch sa s ním asi nikdy nestretnete. Prvýkrát bol zaradený do jadra experimentálnej rady 2.5 a predpokladá sa, že v jadre zostane veľmi dlho, nakoľko rieši mnoho problémov.

Hlavnou príčinou jeho vzniku bola potreba exportovať štruktúrované informácie z jadra do užívateľského prostredia. V článku DevFS vs. udev píšem o najvýznamnejšom využití Sysfs (využíva ho utilita udev).

Štruktúra Sysfs

Ak sa pozriete do vnútra adresára /sys, zistíte, že jeho štruktúra je veľmi hlboká a stále nachádzate ďalšie podadresáre. Často na konci celej štruktúry narazíte na symbolické linky do iných vetiev tohto stromu. Môžeme teda povedať, že nieje užívateľsky príjemná, ale rýchlo si na ňu zvyknete.

Sysfs nieje určené pre priame prezeranie užívateľom. Pomôže mu však, ak si vie napísať aspoň malý skript, ktorý za neho informácie zo štruktúry Sysfs vytiahne. To však nieje pre užívateľa veľmi atraktívne až do chvíle, kým nezačne riešiť nejaký hardvérový problém.

Sysfs presne zodpovedá rozloženiu premenných v jadre. Každý adresár predstavuje samostatný subsystém alebo modul. Súbory obsahujú skoro vždy len jednu informáciu a ich názov túto informáciu presne vystihuje.

Sysfs ako nástroj

Konkrétnu informáciu môžete z adresára /sys dostať jednoduchým výpisom súboru.

$ cat /sys/block/fd0/removable
1
$ cat /sys/block/hda/removable
0

Dozvedeli sme sa, že disketová jednotka fd0 používa vymeniteľné média, zatiaľčo disk hda je pevne zabudovaný.

Nastaviť nejaký parameter jadra za chodu je rovnako jednoduché. Musíte však mať patričné práva na zápis, takže musíte byť prihlásený ako root.

# cat /sys/block/hda/queue/scheduler
noop [anticipatory] deadline cfq
# echo "cfq" > /sys/block/hda/queue/scheduler
# cat /sys/block/hda/queue/scheduler
noop anticipatory deadline [cfq]

Nastavili sme plánovač fronty príkazov pre pevný disk hda. Plánovač CFQ je vhodný hlavne pre desktop, takže sme trochu zvýšili pružnosť, s akou sa čítanie a zápis na disk budú prevádzať. Niekedy je to o poznanie lepšie.

Nastaviteľné parametre jadra spoznáte podľa toho, že daný súbor má priradené práva na zápis. POZOR! Nieje dobré zisťovať, na čo slúži daný parameter tým, že do neho začnete zapisovať rôzne hodnoty.

$ find /sys -perm +222 ! -type d ! -type l | sort

Ak sa o jednotlivých parametroch jadra chcete niečo dozvedieť, skúste si názov súboru (aj s cestou) vygooglit, alebo sa pohrabte v dokumentácii k zdrojovým kódom jadra. Pokiaľ si nieste istý, čo robíte, nič nenastavujte!

Jednoduché príklady

Abyste sa mali od čoho odraziť, uvediem niekoľko ukážok zaujímavých súborov v Sysfs a dodám aj popis.

/sys/block/*/queue/scheduler
/sys/block/*/queue/io_sched/*
V súbore scheduler si môžete nastaviť alebo vypnúť plánovač fronty úloh pre vaše diskové zariadenia. Plánovač usporiadava jednotlivé diskové operácie tak, aby ich bolo možné vykonať čo najrýchlejšie a aby aby jednotlivé aplikácie, ktoré pristupujú na disk, dostali svoje údaje čím skôr.
noop
Táto voľba vypne plánovanie. Ak nemáte spustených niekoľko procesov, ktoré pristupujú na disk, nespozorujete spomalenie.
anticipatory
Je rýchly plánovač vhodný pre väčšinu prostredí.
deadline
Ak máte na počítači spustenú databázu, ktorá je stále vyťažená, mal by vám pomôcť mierne zvýšiť jej výkon.
cfq
Rozdeluje čas prístupu na disk rovnomerne medzi všetky procesy. Jednotlivé požiadavky sa začnú vykonávať skôr, ale dokončujú rovnakou rýchlosťou.
/sys/class/*/dev
Tento súbor, ak existuje pre dané zariadenie, obsahuje majoritné a minoritné číslo zariadenia. Je to užitočné, pokiaľ používate statický /dev a potrebujete vytvoriť zariadenie ručne.
/sys/class/*/*
Toto sú adresáre pre všetky zariadenia na počítači, aj tie virtuálne, ktoré sú vytvorené modulmi ako fuse, alebo virtuálne terminály.
/sys/bus/*
Tieto adresáre reprezentujú jednotlivé typy zberníc vo vašom počítači (PCI, IDE, USB, ...). Ich podadresáre obsahujú zariadenia pripojené na nich a tak ďalej.

Toto sú naozaj len ilustračné ukážky zo štruktúry Sysfs. Nič užitočné som neuviedol, ale zatiaľ som pomocou Sysfs riešil len problémy typu: "Rozpoznalo mi tú zvukovku? Netreba len nastaviť hlasitosť?" A Sysfs ma ušetril hľadania spôsobu, ako to zistiť.

Druhýkrát som sa so Sysfs stretol, keď som potreboval nechať zaspať počítač a nevedel som, ako to rýchlo urobiť. Podarilo sa mi to príkazom echo "standby" > /sys/power/state, ale lepšie je stiahnuť si programy, ktoré sú na takéto úkony určené.

Administrácia

Sysfs nieje určený práve na administráciu systému, ale skôr ako zdroj informácií. Väčšie administračné schopnosti ponúka Procfs. Sysfs ponúka len tie administračné funkcie, ktoré sú silne späté s hardvérom a ovládačmi.

Na internete nájdete mnoho príkladov užitočného použitia Sysfs. Skúste si vyhliadnúť nejaký súbor v štruktúre /sys a vložte jeho celú cestu do Googla.

Mne sa takýmto spôsobom podarilo nájsť niekoľko užitočných návodov. Lenže ako som povedal, tento článok nepíšem ako 'návod', ale 'úvod'.

Záverom

Jedným z veľkých úspechov linuxových programátorov je nepochybne aj Sysfs. Nieje to síce vlastnosť, pre ktorú by masy obyčajných používateľov prechádzali pod Linux, ale tým, čo tak už učinili, prináša nové možnosti.

Často sa môžete stretnúť s tvrdením, že Sysfs má úplne nahradiť Procfs - a to nieje pravda. Vývojári Linuxu a rôznych nástrojov potrebovali štruktúrované informácie o hardvéri, ktoré by boli ľahko spracovateľné programami, a to im Sysfs ponúka.

Dúfam, že v článku ste si našli odpovede na niektoré otázky, alebo som vám aspoň ukázal spôsob, ako sa k nim dostanete. V každom prípade, adresár /sys už má vo vašom systéme jasné miesto.

       

Hodnocení: 100 %

        špatnédobré        

Nástroje: Tisk bez diskuse

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Vložit další komentář

12.7.2005 00:57 Käyttäjä 11133 | skóre: 58 | blog: Ajattelee menneisyyttä
Rozbalit Rozbalit vše Hmm vcelku dobré
Jo vcelku dobré seznámení s sysfs alespoň už vím proč byl navržen. BTW: mám první komentář :-)
MaT avatar 12.7.2005 02:16 MaT | skóre: 28
Rozbalit Rozbalit vše Pochvala
Tak tak, taky se mi líbí takovéhle články, které člověku trošku rozšíří obzory... Ale to, že se dá celá cesta předhodit panu Googlovi by možná stačilo napsat jen jednou. :-)
Open source software for open minded people. :-)
12.7.2005 07:22 Smazáno | skóre: 21 | blog: tezkorict
Rozbalit Rozbalit vše Tož nebylo to zlé.
Jako úvod. Ale ta o tom procu se mi líbila víc. Třeba to ale taky někam donde. :)
12.7.2005 08:22 Robert Krátký | skóre: 94 | blog: Robertův bloček
Rozbalit Rozbalit vše Re: Tož nebylo to zlé.
O /proc je hned příští článek :-)
Yin avatar 12.7.2005 13:45 Yin | skóre: 39 | blog: Yinotopia | Slovesnko, Košice
Rozbalit Rozbalit vše Re: Tož nebylo to zlé.
Ale je skoro rovnaký ako tento :(
Nikdy nie je tak zle, aby to jeden poharik nemohol ešte zhorsiť.
12.7.2005 14:30 1 | blog: 1
Rozbalit Rozbalit vše Jasně, typický nástroj
Typický nástroj pro šílence :-). Ne - linuxové "registry" jsou fajn, škoda že nejsou k dispozici free ucelené nástroje (typu Novell eNterprise Linux Services), které by na tyto kvalitní informační a admin zdroje (spíš ten /proc apod.) navazovaly ucelenou formou v nějakém GUI - třeba s možností navázat regulární výrazy, kde je to potřeba, využívat šablony nastavení a tak.
Problém nevidím, že tady ty nástroje nejsou TEĎ. Ale že nevím o něčem smysluplném co by alespoň vznikalo. Viz na jiné úrovni v článku zmíněný Yum vs. např. YaST.
1
12.7.2005 14:33 1 | blog: 1
Rozbalit Rozbalit vše Re: Jasně, typický nástroj
V tomhle aktuálním článku.
1
Yin avatar 13.7.2005 20:48 Yin | skóre: 39 | blog: Yinotopia | Slovesnko, Košice
Rozbalit Rozbalit vše Re: Jasně, typický nástroj
(ak som ťa správne pochopil): skripty...
Nikdy nie je tak zle, aby to jeden poharik nemohol ešte zhorsiť.
14.7.2005 11:41 1 | blog: 1
Rozbalit Rozbalit vše Re: Jasně, typický nástroj
Jasně - koherentní, drtivou většinu obvyklých věcí pokrývající sada skriptů s rozhraním, které má tak pěkné "stromečky" funkcí jako YaST. Včetně úpravy konfiguráků. Mě spíš zaujalo to, jak na roztříštěné zdroje informací o systému a konfiguračních utilit navázat něco co těm zdrojům (/sys /proc /blabla, /devfs ..) dá jednu a přívětivou tvář. Protože pořád řešit - "jo před půlrokem jsem to uměl... no musím se to naučit vlastně znovu. Navíc se změnila struktura v jádře, tohle se jmenuje jinak ..." je na nic.
1
27.7.2006 18:09 Drašar | skóre: 27 | Velký Týnec
Rozbalit Rozbalit vše Re: Sysfs - brána do jadra
Zdravim. Nevite nekdo, jestli existuje pro sysfs neco obdobnyho jako sysctl pro procfs? Resp. jak nejak elegantne nastavovat hodnoty v /sys po spusteni systemu? Dik.
Patička

Založit nové vláknoNahoru

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.