ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)
Четверг, 30 января, 2025

Понимание файловой системы Linux /proc: руководство для начинающих

Понимание файловой системы Linux /proc: руководство для начинающих

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

 

Что такое файловая система /proc?

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

Файловая система /proc полезна для:

 

Изучение файлов и каталогов в /proc

Каталог /proc содержит различные файлы и подкаталоги. Некоторые из наиболее важных из них:

 

Файлы системной информации

Файл Описание
/proc/cpuinfo Подробная информация о процессоре (модель, ядра, скорость)
/proc/meminfo Использование памяти (общее, свободное, буферы)
/proc/stat Системная статистика (процессор, прерывания, переключения контекста)
/proc/uptime Время безотказной работы системы и простоя
/proc/loadavg Средняя загрузка процессора составляет 1, 5 и 15 минут
/proc/version Версия ядра и сведения о сборке
/proc/cmdline Параметры ядра, передаваемые во время загрузки

 

Файловые системы и хранилище

Файл Описание
/proc/mounts Перечисляет смонтированные файловые системы и их типы
/proc/filesystems Показывает поддерживаемые типы файловых систем
/proc/swaps Информация об активных пространствах подкачки
/proc/diskstats Статистика дискового ввода-вывода (чтение, запись, время)

 

Сетевая информация

Файл Описание
/proc/net/dev Статистика сетевого интерфейса (RX/ TX пакеты, байты, ошибки)
/proc/net/tcp Список активных TCP-соединений (адреса, порты, очереди)
/proc/net/route Отображает таблицу маршрутизации IPv4 ядра
/proc/net/sockstat Статистика сокетов (выделенные, потерянные сокеты)
/proc/sys/net/ipv4/conf/eth0/ Настройки IPv4 для eth0 сетевого интерфейса

 

Информация, относящаяся к конкретному процессу

У каждого запущенного процесса в Linux есть каталог /proc с именем, соответствующим идентификатору процесса (PID). Например, у процесса с PID 1234 будет каталог /proc/1234/ со следующим содержимым:

Файл Описание
/proc/[PID]/cmdline Аргументы командной строки, используемые процессом
/proc/[PID]/status Сведения о процессе (состояние, память, потоки)
/proc/[PID]/io Статистика ввода-вывода процесса
/proc/[PID]/fd/ Откройте файловые дескрипторы, используемые процессом
/proc/[PID]/net/ Детали процесса, связанные с сетью

 

Как использовать команды /proc в Linux

Вы можете использовать базовые команды Linux для изучения /proc файловой системы:

1. Просмотр информации о процессоре:

cat /proc/cpuinfo

2. Проверьте доступную память:

cat /proc/meminfo

3. Контролируйте время безотказной работы системы:

cat /proc/uptime

4. Список смонтированных файловых систем:

cat /proc/mounts

5. Отображение запущенных процессов:

ls /proc | grep "^[0-9]"

Linux /proc Таблица с описанием файловой системы

Вот удобная шпаргалка с кратким описанием ключевых файлов и каталогов в файловой системе /proc:

Файл/Каталог Описание
cat /proc/cpuinfo Сведения о процессоре (модель, ядра, скорость).
cat /proc/meminfo Использование памяти (общее, свободное, используемое).
cat /proc/uptime Время безотказной работы системы и простоя.
cat /proc/loadavg Средняя загрузка системы за 1, 5 и 15 минут.
cat /proc/version Версия ядра и информация о сборке.
cat /proc/cmdline Параметры ядра, передаваемые во время загрузки.
cat /proc/mounts Список смонтированных файловых систем.
cat /proc/swaps Информация об активных пространствах подкачки.
cat /proc/net/dev Статистика сетевого интерфейса.
cat /proc/net/tcp Активные TCP-соединения.
cat /proc/net/route Таблица маршрутизации IPv4 ядра.
ls /proc/[PID] Перечислите информацию о процессе
cat /proc/PID/cmdline Аргументы командной строки для конкретного процесса.
cat /proc/PID/status Подробное состояние процесса.
cat /proc/PID/io Статистика ввода-вывода для процесса.
ls /proc/PID/fd/ Файловые дескрипторы, открытые процессом.
ls /proc/sys/ Настройки ядра, которые могут быть изменены во время выполнения.
cat /proc/stat Просмотр системной статистики

 

Распечатайте этот контрольный лист и держите его рядом со своим столом.

 

Заключение

Файловая система /proc — важный инструмент для пользователей Linux, системных администраторов и разработчиков. Понимая её структуру и ключевые файлы, вы сможете отслеживать производительность системы, устранять неполадки и получать важную системную информацию в режиме реального времени.

Начните изучение /proc сегодня, чтобы узнать, как работает ваша система Linux изнутри!

Exit mobile version