ИМЯ
sysfs - файловая система для экспортируемых объектов ядраОПИСАНИЕ
Файловая система sysfs — это псевдофайловая система, предоставляющая интерфейс к структурам данных ядра (точнее, файлы и каталоги в sysfs позволяют видеть структуры kobject, определённые внутри ядра). Файлы в sysfs показывают информацию об устройствах, модулях ядра, файловых системах и других компонентах ядра. Обычно, файловая система sysfs монтируется в /sys. Это выполняется системой автоматически, но также можно монтировать её вручную с помощью команды:mount -t sysfs sysfs /sys
Многие из файлов файловой системы sysfs доступны только для чтения, но есть и доступные на запись, через которые можно изменять переменные ядра. В целях сокращения избыточности для связи элементов в дереве файловой системы широко применяются символьные ссылки.
Файлы и каталоги
В следующем списке описаны некоторые файлы и каталоги в иерархии /sys.- /sys/block
- В этом подкаталоге содержится по одной символьной ссылке на каждое блочное устройство, обнаруженное в системе. Символьные ссылки указывают на соответствующие каталоги в /sys/devices.
- /sys/bus
- В этом каталоге содержится по одному подкаталогу на каждый тип шины ядра. Внутри каждого каталога есть два подкаталога:
- devices
- Этот подкаталог содержит символьные ссылки на элементы в /sys/devices, которые соответствуют устройствам, обнаруженным на этой шине.
- drivers
- Этот подкаталог содержит по одному подкаталогу на каждый драйвер устройства, загруженный для этой шины.
- /sys/class
- Этот подкаталог содержит по одному слою дополнительных подкаталогов на каждый класс устройств, зарегистрированных в системе (например, терминалы, сетевые устройства, блочные устройства, графические устройства, звуковые устройства и т. д.). Внутри каждого из этих подкаталогов находятся символьные ссылки на каждое из устройств этого класса. Данные символьные ссылки указывают на элементы в каталоге /sys/devices.
- /sys/class/net
- Каждый элемент этого каталога представляет собой символьную ссылку на одно из реальных или виртуальных сетевых устройств, видимых в сетевом пространстве имён процесса, обратившегося к каталогу. Эти символьные ссылки указывают на элементы в каталоге /sys/devices.
- /sys/dev
- Этот каталог содержит два подкаталога — block/ и char/, соответствующие блочным и символьным устройствам в системе. Внутри каждого подкаталога находятся символьные ссылки с именами в виде основной-ID: дополнительный-ID, где значения ID соответствуют основному и дополнительному идентификаторами определённого устройства. Каждая символьная ссылка указывает на каталог sysfs для устройства. Таким образом, символьные ссылки в /sys/dev предоставляют простой способ просмотра интерфейса sysfs по идентификаторам устройств, возвращаемых вызовом stat(2) (или подобным).
- Пример сеанса оболочки с выводом /sys/dev:
-
$ stat -c "%t %T" /dev/null 1 3 $ readlink /sys/dev/char/1\:3 ../../devices/virtual/mem/null $ ls -Fd /sys/devices/virtual/mem/null /sys/devices/virtual/mem/null/ $ ls -d1 /sys/devices/virtual/mem/null/* /sys/devices/virtual/mem/null/dev /sys/devices/virtual/mem/null/power/ /sys/devices/virtual/mem/null/subsystem@ /sys/devices/virtual/mem/null/uevent
- /sys/devices
- В данном каталоге содержится представление в виде файловой системы для дерева устройств ядра, которое является иерархией структур device внутри ядра.
- /sys/firmware
- В этом подкаталоге содержатся интерфейсы для просмотра и изменения объектов и атрибутов микропрограмм.
- /sys/fs
- В этом каталоге содержатся подкаталоги для некоторых файловых систем. Здесь файловая система будет иметь подкаталог только, если она явно создаст подкаталог.
- /sys/fs/cgroup
- Обычно, этот каталог используется как точка монтирования файловой системы tmpfs(5), содержащей точки монтирования для файловых систем cgroups(7).
- /sys/fs/smackfs
- В каталоге содержатся файлы настройки SMACK LSM. Смотрите файл исходного кода ядра Documentation/admin-guide/LSM/Smack.rst.
- /sys/hypervisor
- [Будет описано]
- /sys/kernel
- В этом подкаталоге содержатся различные файлы и подкаталоги, предоставляющие информацию о работающем ядре.
- /sys/kernel/cgroup/
- Файлы этого каталога описаны в cgroups(7).
- /sys/kernel/debug/tracing
- Точка монтирования файловой системы tracefs, используемая свойством ядра ftrace (информацию по ftrace смотрите в файле исходного кода ядра Documentation/trace/ftrace.txt).
- /sys/kernel/mm
- В этом подкаталоге содержатся различные файлы и подкаталоги, предоставляющие информацию о подсистеме ядра управления памятью.
- /sys/kernel/mm/hugepages
- Этот подкаталог содержит по одному подкаталогу на каждый размер огромных страниц ядра, поддерживаемых системой. В имени подкаталога показан размер огромной страницы (например, hugepages-2048kB). Внутри каждого подкаталога содержится набор файлов, которые могут быть использованы для просмотра и (в некоторых случаях) изменения настроек, относящихся к размеру огромных страниц. Дополнительную информацию смотрите в файле исходного кода ядра Documentation/admin-guide/mm/hugetlbpage.rst.
- /sys/module
- Этот подкаталог содержит по одному подкаталогу на каждый модуль, загруженный в ядро. Подкаталоги называются по имени модулей. В каждом подкаталоге могут быть следующие файлы:
- coresize
- [Будет описано]
- initsize
- [Будет описано]
- initstate
- [Будет описано]
- refcnt
- [Будет описано]
- srcversion
- [Будет описано]
- taint
- [Будет описано]
- uevent
- [Будет описано]
- version
- [Будет описано]
- В каждом подкаталоге могут быть следующие подкаталоги:
- drivers
- [Будет описано]
- holders
- [Будет описано]
- notes
- [Будет описано]
- parameters
- Этот каталог содержит по одному файлу на каждый параметр модуля; в каждом файле хранится значение соответствующего параметра. Некоторые файлы доступны на запись.
- sections
- В этих подкаталогах содержатся файла с информацией о разделах модуля. Эта информацию, в основном, используется для отладки.
- [Будет описано]
- /sys/power
- [Будет описано]
ВЕРСИИ
Файловая система sysfs впервые появилась в Linux 2.6.0.СТАНДАРТЫ
Файловая система sysfs есть только в Linux.ЗАМЕЧАНИЯ
Данная справочная страница неполна, в ней могут быть неточности и является одной из страниц, которую требуется обновлять очень часто.СМ. ТАКЖЕ
proc(5), udev(7) P. Mochel. (2005). Файловая система sysfs. Представлен на симпозиуме Linux в Оттаве в 2005 году. Файл исходного кода ядра Documentation/filesystems/sysfs.txt и другие различные файлы в Documentation/ABI и Documentation/*/sysfs.txtПЕРЕВОД
Русский перевод этой страницы руководства был сделан Alexander Golubev <[email protected]>, Azamat Hackimov <[email protected]>, Hotellook, Nikita <[email protected]>, Spiros Georgaras <[email protected]>, Vladislav <[email protected]>, Yuri Kozlov <[email protected]> и Иван Павлов <[email protected]> Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ. Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на [email protected]30 октября 2022 г. | Linux man-pages 6.03 |