Директория /proc

Ядро Linux выполняет две основные задачи: контроль доступа к физическим устройствам компьютера и планирование когда и какие процессы могут взаимодействовать с этими устройствами. Директория /proc/ - содержит иерархию специальных файлов отображающих текущее состояние ядра системы, позволяя приложениям и пользователям взглянуть на «ядерное» отображение системы. С помощью /porc/ директории может быть получена детальная информация о состоянии аппаратных устройств в системе и запущенных процессах. Дополнительно, некоторые файлы в /proc/ могут быть доступны для записи пользователям и приложениям, позволяя производить изменения в конфигурации ядра. Виртуальные файлы В системе Linux все данные хранятся в файлах. Большая часть пользователей взаимодействует с двумя типами фалов: текстовыми и бинарными. Однако, директория /proc/ содержит другой тип файлов, называемый «виртуальными файлами», поэтому иногда /proc/ называют виртуальной файловой системой. Виртуальные файлы имеют специфические свойства. Многие из них имеют размер 0 байт, но при просмотре отображают большое количество информации. Многие из этих файлов имеют дату и время равные текущему, показывая, что они непрерывно обновляются. Виртуальные файлы, такие как /proc/interrupts, /proc/meminfo, /proc/mounts, и /proc/partitions отображают текущее состояние компонентов системы. Другие, такие как /proc/filesystems и /proc/sys/ отображают конфигурацию системы и интерфейсов. Для организации, файлы, содержащие информацию по определенной теме, сгруппированы по директориям и поддиректориям. К примеру директория /proc/ide содержит информацию обо всех IDE устройствах, а /proc/process директория содержит информацию обо всех процессах запущенных в системе. Чтение информации из /proc Используя утилиты cat, more, less можно просматривать файлы в директории /proc/ для получения текущей информации о системе. В качестве примера, для получения информации о процессоре, выполните cat /proc/cupinfo:

processor       : 0
vendor_id       : GenuineIntel
cpu family      : 15
model           : 6
model name      : Intel(R) Celeron(R) D CPU 3.46GHz
stepping        : 5
cpu MHz         : 3458.169
cache size      : 512 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 6
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc up pni monitor ds_cpl cid cx16 xtpr lahf_lm
bogomips        : 6920.74

При просмотре файлов в /proc следует учитывать, что некоторые из них хранят информацию в формате для специальных утилит и не могут быть прочитаны человеком. Некоторые файлы доступны для чтения только для суперпользователя. Изменение конфигурации с помощью /proc Большая часть файлов в /proc доступна для чтения. Некоторые файлы могут использоваться для изменения конфигурации ядра (обычно они находятся в /proc/sys). Для изменения записи хранящейся в файле используйте echo и символ “>” для перенаправления вывода в файл. К примеру:

echo www.example.com > /proc/sys/kernel/hostname

Некоторые файлы используются как переключатели: например файл /proc/sys/net/ipv4/ip_forward содержит переключатель включающий и выключающий форвардинг пакетов. Текущее состояние может быть прочитано с помощью cat а изменено с помощью echo. Более удобным средством изменения параметров ядра является использование утилиты sysctl.

Размещено: 09.10.2007 14:18 Всего комментариев: 0
Автор: zeus Блог: zeus's blog
Тэги: proc , основы , файловая система

Комментарии:

Нет комментариев.

Пожалуйста войдите или зарегистрируйтесь чтобы оставлять комментарии.