Kromě /proc jádro také exportuje informace do jiného virtuálního souborového systému zvaného sysfs. sysfs používají programy jako udev pro přístup k informacím o zařízení a ovladačích zařízení. Vytvoření sysfs pomohlo vyčistit systém souborů proc, protože většina informací o hardwaru byla přesunuta z proc do sysfs.
Souborový systém sysfs je připojen na /sys. Zobrazí se adresáře nejvyšší úrovně. Následuje stručný popis některých z těchto adresářů:
/sys/block
Tento adresář obsahuje položky pro každé blokové zařízení v systému. Symbolické odkazy ukazují na fyzické zařízení, ke kterému je zařízení mapováno ve stromu fyzických zařízení. Například atributy pro sda disky jsou umístěny v následujícím adresáři:
# ls -l /sys/block/sda/ total 0 -r--r--r-- 1 root root 4096 Mar 24 13:03 alignment_offset lrwxrwxrwx 1 root root 0 Mar 24 13:04 bdi -> ../../../../../../../../virtual/bdi/8:0 -r--r--r-- 1 root root 4096 Mar 24 13:03 capability -r--r--r-- 1 root root 4096 Mar 24 13:03 dev lrwxrwxrwx 1 root root 0 Mar 24 13:04 device -> ../../../0:0:0:0 -r--r--r-- 1 root root 4096 Mar 24 13:03 discard_alignment -r--r--r-- 1 root root 4096 Mar 24 13:03 events -r--r--r-- 1 root root 4096 Mar 24 13:03 events_async -rw-r--r-- 1 root root 4096 Mar 24 13:03 events_poll_msecs -r--r--r-- 1 root root 4096 Mar 24 13:03 ext_range drwxr-xr-x 2 root root 0 Mar 24 13:04 holders -r--r--r-- 1 root root 4096 Mar 24 13:03 inflight drwxr-xr-x 2 root root 0 Mar 24 13:04 integrity drwxr-xr-x 2 root root 0 Mar 24 13:04 power drwxr-xr-x 3 root root 0 Mar 24 13:04 queue -r--r--r-- 1 root root 4096 Mar 24 13:03 range -r--r--r-- 1 root root 4096 Mar 24 13:03 removable -r--r--r-- 1 root root 4096 Mar 24 13:03 ro -r--r--r-- 1 root root 4096 Mar 24 13:03 size drwxr-xr-x 2 root root 0 Mar 24 13:04 slaves -r--r--r-- 1 root root 4096 Mar 24 13:03 stat lrwxrwxrwx 1 root root 0 Mar 24 13:04 subsystem -> ../../../../../../../../../class/block -rw-r--r-- 1 root root 4096 Mar 24 13:03 uevent
/sys/bus
Tento adresář obsahuje podadresáře pro každý typ fyzické sběrnice podporovaný v jádře. Každý typ sběrnice má dva podadresáře:devices a řidiče . Adresář zařízení obsahuje seznam zařízení nalezených na tomto typu sběrnice. Adresář driverů obsahuje adresáře pro každý ovladač zařízení registrovaný s typem sběrnice. Parametry ovladače lze prohlížet a manipulovat s nimi. Chcete-li například zobrazit seznam ovladačů pro virtuální zařízení, zadejte:
# ls -lR /sys/bus/xen/drivers /sys/bus/xen/drivers: total 0 drwxr-xr-x. 2 root root 0 Mar 24 13:37 vbd drwxr-xr-x. 2 root root 0 Mar 24 13:37 vif /sys/bus/xen/drivers/vbd: total 0 --w-------. 1 root root 4096 Mar 24 13:40 bind lrwxrwxrwx. 1 root root 0 Mar 24 13:40 module -> ../../../../module/xen_blkfront --w-------. 1 root root 4096 Mar 24 13:37 uevent --w-------. 1 root root 4096 Mar 24 13:40 unbind lrwxrwxrwx. 1 root root 0 Mar 24 13:40 vbd-51792 -> ../../../../devices/vbd-51792 lrwxrwxrwx. 1 root root 0 Mar 24 13:40 vbd-768 -> ../../../../devices/vbd-768 /sys/bus/xen/drivers/vif: total 0 --w-------. 1 root root 4096 Mar 24 13:40 bind lrwxrwxrwx. 1 root root 0 Mar 24 13:40 module -> ../../../../module/xen_netfront --w-------. 1 root root 4096 Mar 24 13:37 uevent --w-------. 1 root root 4096 Mar 24 13:40 unbind lrwxrwxrwx. 1 root root 0 Mar 24 13:40 vif-0 -> ../../../../devices/vif-0
/sys/class
Tento adresář obsahuje všechny třídy zařízení registrované v jádře. Třídy zařízení popisují funkční typ zařízení. Příklady zahrnují vstupní zařízení, síťová zařízení a bloková zařízení.
/sys/devices
Tento adresář obsahuje globální hierarchii zařízení všech zařízení v systému. Tento adresář také obsahuje adresář platformy a systémový adresář. Adresář platformy obsahuje periferní zařízení specifická pro konkrétní platformu, jako jsou řadiče zařízení. Systémový adresář obsahuje neperiferní zařízení, jako jsou CPU a APIC.
/sys/firmware
Tento adresář obsahuje podadresáře s objekty a atributy firmwaru.
/sys/module
Tento adresář obsahuje podadresáře pro každý modul, který je načten do jádra, například:
# ls /sys/module/xen* /sys/module/xen_blkfront: coresize drivers holders initsize initstate notes parameters refcnt rhelversion sections srcversion taint uevent /sys/module/xen_netfront: coresize drivers holders initsize initstate notes parameters refcnt rhelversion sections srcversion taint uevent
/sys/power
Z tohoto adresáře lze ovládat stav napájení systému. Atribut disku řídí způsob, jakým se systém ukládá na disk. Atribut stavu umožňuje procesu vstoupit do stavu nízké spotřeby.
Nástroj sysctl
Obslužný program sysctl lze také použít k zobrazení nebo úpravě hodnot do zapisovatelných souborů v adresáři /proc/sys. Chcete-li zobrazit aktuální nastavení jádra, zadejte:
# sysctl -a abi.vsyscall32 = 1 crypto.fips_enabled = 0 debug.exception-trace = 1 ...
Jedná se o stejnou informaci, jakou byste viděli, kdyby byl každý ze souborů zobrazen samostatně, například:
# cat /proc/sys/abi/vsyscall32 1
Příkaz echo lze použít k přiřazení hodnot zapisovatelným souborům v /proc/sys:
# echo 1 > /proc/sys/net/ipv4/ip_forward
Následuje ekvivalentní příkaz sysctl, který okamžitě zobrazí výsledek změny:
# sysctl -w net.ipv4.ip_forward=1 net.ipv4.ip_forward = 1
Změny provedené pomocí echo i sysctl se při restartu systému ztratí. Chcete-li zachovat vlastní nastavení, přidejte je do /etc/sysctl.conf soubor. Hodnoty přidané do tohoto souboru se projeví při každém spuštění systému.
Porozumění systému souborů /proc