Одним из ключевых компонентов Linux для получения информации о ресурсах является файловая система /proc. По сути это виртуальное представление внутренних структур данных ядра и ОС. В отличие от традиционных файловых систем, сохраняющих информацию на жестком диске, /proc находится исключительно в оперативной памяти. Каждая запись в этой виртуальной файловой системе описывает определенный компонент Linux, например, процессы, аппаратные устройства, параметры ядра и так далее, организованные в иерархическую структуру каталогов и файлов.
В этой статье мы расскажем, как использовать файловую систему /proc для мониторинга ОС Linux.
Содержание:
- Просмотр содержимого каталога /proc
- Получение информации о процессах
- Анализ данных ОС и аппаратных ресурсов
- Получение информации о ядре Linux
- Выводы
Просмотр содержимого каталога /proc
Файловая система /proc хранится в одноименном каталоге. В нем Вы сможете найти файлы и папки, которые содержат данные о:
- процессах;
- центральном процессоре;
- других файловых системах;
- устройствах;
- ОЗУ и так далее.
Вывести на экран содержимое каталога /proc можно с помощью команды ls:
Получение информации о процессах
В директории /proc находятся каталоги, названия которых состоят только из чисел — PID процессов. При переходе в эти папки, можно ознакомится с детальной информацией о каждом процессе. Например, чтобы получить данные о процессе с уникальным идентификатором 219, откройте папку 219 и выполните команду ls:
Читайте также: Команда procinfo — примеры использования в Linux.
Как показано на скриншоте выше, в каждой директории, описывающей процесс, есть множество других папок и файлов. Допустим, Вы хотите узнать, какой последний системный вызов выполнил процесс. Для этого просмотрите файл syscall:
Также Вы можете вывести на экран удобочитаемую информацию о состоянии процесса. Чтобы это сделать, откройте файл status:
Анализ данных ОС и аппаратных ресурсов
Файл /proc/cpuinfo предоставляет подробную информацию о процессоре (процессорах) в операционной системе Linux. Из этого текстового документа можно получить данные о:
- модели процессора;
- производителе;
- количестве ядер;
- тактовой частоте и так далее.
Из файла /proc/meminfo Вы можете получить статистику об использовании ОЗУ, включая общую и свободную память, буферы, кэш, файл подкачки, грязные и чистые страницы памяти и много другое:
Читайте также: Как очистить кэш в Linux.
Если Вам нужно узнать, какие символьные и блочные устройства в данный момент загружены и доступны в ОС, выведите на экран содержимое файла /proc/devices:
В файле /proc/vmstat хранится детальная информация о виртуальной памяти:
Получение информации о ядре Linux
Каталог /proc/sys/ содержит различные папки с данными о параметрах ядра Linux. Вот некоторые из них:
/proc/sys/kernel/— отображает параметры, связанные с общим поведением / настройками ядра;/proc/sys/vm/— описывает параметры виртуальной памяти;/proc/sys/net/— содержит параметры, связанные с сетью;/proc/sys/fs/— содержит параметры файловой системы;/proc/sys/dev/— отображает параметры, относящиеся к конкретным устройствам.
Например, откроем содержимое папки /proc/sys/kernel/. Файлы из этой директории позволяют узнать следующее:
- тип операционной системы;
- имя хоста;
- доменное имя;
- версию выпуска ОС;
- общий объем страниц памяти, доступный для использования в рамках всей ОС, и многое другое.
Читайте также: Команда sysctl в Linux с примерами.
Также можно ознакомиться с каталогом /proc/sys/net/, чтобы получить информацию о:
- параметрах IPv4— и IPv6-адресов;
- сокетах TCP;
- максимальном количестве сетевых соединений;
- объеме буферной памяти, разрешенной для одного сокета и так далее.
Выводы
Мы показали базовые примеры использования файловой системы /proc для поиска и анализа информации о процессах, операционной системе и ядре Linux. Надеемся, что эта статья была полезной для Вас!
Спасибо за время, уделенное прочтению статьи!
Если возникли вопросы — задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности, курсы DevNet / DevOps (программируемые системы) от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).
Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!
- Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
- Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
- Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
- Проведем вечерние онлайн-лекции на нашей платформе.
- Согласуем с вами удобное время для практик.
- Если хотите индивидуальный график — обсудим и реализуем.
- Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
- Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
- отредактировать или создать с нуля резюме;
- подготовиться к техническим интервью;
- подготовиться к конкурсу на понравившуюся вакансию;
- устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.

































