Блог ИТ склеротика. Немного об использовании /proc

Страницы

Расширенный поиск в статьях блога

27 февраля 2012 г.

Немного об использовании /proc


Файловая система /proc — это специальная ФС, присутствующая во многих современных UNIX-системах и содержащая массу полезной информации в текстовом виде, хотя и не всегда понятном рядовым пользователям. Важно помнить, что эта ФС не является физической и файлы, расположенные на ней, не совсем файлы в традиционном понимании. Вернее было бы называть их псевдофайлами, поскольку существуют они только в оперативной памяти компьютера и не хранятся на диске. В этой статье автор приводит небольшой список наиболее часто используемых пользователями файлов файловой системы /proc с описанием хранящегося в них содержимого.


/proc/[pid]

Внутри каталога /proc вы обнаружите множество каталогов, имена которых состоят из цифр. Имя каждого такого каталога соответствует PID (идентификатору процесса) работающего в системе процесса.
  • /proc/[pid]/cmdline. В этом файле хранится командная строка, которой был запущен данный процесс;
  • /proc/[pid]/cwd. Этот файл представляет собой символическую ссылку на текущий рабочий каталог процесса;
  • /proc/[pid]/exe представляет собой символическую ссылку на исполняемый файл, который инициировал запуск процесса;
  • /proc/[pid]/status содержит информацию о состоянии процесса, его имени, родительском процессе, а также различную статистическую информацию, например об используемой памяти.

/proc/cmdline

В этом файле содержатся все аргументы, переданные ядру в момент старта системы.

/proc/cpuinfo

Здесь вы можете получить подробную информацию о процессорах, работающих в вашей системе: производитель, имя, рабочую частоту, поддерживаемые технологии, размер кэша и т. п.

/proc/filesystems

Этот файл содержит перечень всех поддерживаемых ядром типов файловых систем. Строки, начинающиеся с 'nodev', указывают на то, что ФС не является «физической». Например, такими системами являются сетевые  файловых системы, вроде NFS, или, например, псевдо-ФС, например /proc.

/proc/loadavg

Хранит информацию о загрузке системы. Первые три поля хранят ту же информацию, которую вы получаете о средней загрузке системы при помощи команды uptime.
Четвёртое поле состоит из двух значений, разделённых слэшем. Первая часть значения поля показывает количество выполняющихся в данный момент процессов/потоков. Это значение не может быть больше количества присутствующих в вашей системе CPU. Вторая часть поля отображает количество процессов присутствующих в системе.
Значение пятого поля содержит ID последнего запущенного в системе процесса. Обратите внимание, что если вы просматриваете содержимое /proc/loadavg при помощи, например,cat, то вы увидите значение PID именно программы cat.

/proc/meminfo

В этом файле хранится информация об использовании памяти системой. Именно отсюда программа free берёт информацию для вывода.

/proc/net

В этом каталоге хранится информация, касающаяся работы сетевых устройств и протоколов:
  • /proc/net/arp содержит ARP-таблицу;
  • /proc/net/dev для каждого сетевого интерфейса хранит статистические данные, такие как количество принятых/переданных пакетов, ошибок и т. п.;
  • /proc/net/route содержит таблицу маршрутизации в шестнадцатиричном виде;
  • /proc/net/wireless хранит статистические данные о работе беспроводных интерфейсов.

/proc/swaps

В этом файле вы найдёте информацию обо всех используемых в системе разделах/файлах подкачки, их приоритетах, объёме и используемом пространстве.

/proc/sys/kernel/hostname

Этот файл содержит хостнейм вашей системы. Вы можете изменить его, просто записав в этот файл другое значение при помощи echo.

/proc/sys/kernel/threads-max

Из этого файла вы можете узнать, какое максимальное количество процессов к одновременному существованию допускается в вашей системе. Сравните это значение со значением четвёртого поля из файла /proc/loadavg.

/proc/sys/vm/swappiness

Как это уже освещалось в одной из статей, значение в этом файле регулирует поведение системы относительно частоты сброса данных из оперативной памяти в своп. Чем выше это значение — тем активнее система будет свопиться.

/proc/uptime

Значение из этого файла состоит из двух полей. Значение из первого поля в секундах отражает продолжительность работы системы с момента её запуска, а значение второго — длительность простоя системы. При помощи, например, следующей команды вы можете узнать в процентном выражении, сколько времени простаивает ваша система:
$ echo `cut -d ' ' -f 2 /proc/uptime` / `cut -d ' ' -f 1 /proc/uptime` '* 100' | bc -l

/proc/vmstat

Содержит информацию об использовании виртуальной памяти.

/proc/sys/net/ipv4/conf/default/forwarding

Значением в этом файле включается/отключается форвардинг пакетов между сетевыми интерфейсами. Если вы собираетесь использовать вашу систему в качестве маршрутизатора, то при загрузке компьютера в этот файл должна помещаться единица. В противном случае (что есть по умолчанию) там должен быть ноль.
Источник petur.eu

.

Счетчик тИЦ и PR Яндекс.Метрика Msn bot last visit powered by MyPagerank.NetYahoo bot last visit powered by MyPagerank.Net ping fast  my blog, website, or RSS feed for Free