Главная > Управление процессами > fuser

fuser: Поиск процессов, использующих файл или сокет

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

Обзор

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

Основные функции

  • Идентификация процессов, использующих файлы/каталоги
  • Идентификация процессов, использующих сетевые порты (TCP/UDP)
  • Предоставление функции принудительного завершения идентифицированных процессов
  • Проверка использующих процессов перед размонтированием

Основные опции

Основные опции команды fuser помогают настраивать различные способы идентификации и управления процессами.

Базовое поведение

Формат вывода

Сгенерированная команда:

Комбинируйте команды.

Описание:

`fuser` Запускает команду.

Комбинируйте эти опции, чтобы виртуально выполнять команды с помощью ИИ.

Примеры использования

Различные примеры использования команды fuser позволяют эффективно управлять процессами, использующими файлы и сетевые ресурсы.

Поиск процессов, использующих определенный файл

fuser /var/log/syslog

Находит PID процессов, использующих файл `/var/log/syslog`.

Поиск процессов, использующих точку монтирования

fuser -m /mnt/usb_drive

Находит все процессы, использующие точку монтирования `/mnt/usb_drive`.

Поиск процессов, использующих определенный TCP-порт

fuser -n tcp 80

Находит PID процессов, использующих TCP-порт 80 (HTTP).

Подробный вывод с информацией о пользователе

fuser -uv /home/user/document.txt

Подробно выводит PID и имя пользователя процессов, использующих файл `/home/user/document.txt`.

Принудительное завершение процессов, использующих файл

sudo fuser -k /tmp/locked_file.txt

Принудительно завершает все процессы, использующие файл `/tmp/locked_file.txt`. (Внимание: использование для важных процессов может привести к нестабильности системы)

Завершение процессов, использующих определенный UDP-порт

sudo fuser -k -n udp 53

Принудительно завершает процессы, использующие UDP-порт 53 (DNS).

Установка

fuser обычно предустановлен в большинстве дистрибутивов Linux как часть пакета `psmisc`. Если fuser отсутствует в вашей системе, вы можете установить его с помощью следующих команд.

Debian/Ubuntu

sudo apt update && sudo apt install psmisc

Установка с помощью пакетного менеджера apt.

CentOS/RHEL/Fedora

sudo yum install psmisc
# или
sudo dnf install psmisc

Установка с помощью пакетного менеджера yum или dnf.

Советы и предостережения

Полезные советы и предостережения при использовании команды fuser.

Осторожность при использовании fuser -k

Опция `-k` принудительно завершает процессы, поэтому ее использование для важных системных процессов может привести к нестабильности системы или потере данных. Перед использованием необходимо тщательно проверить, какие процессы будут завершены.

  • Рекомендация: Сначала выполните `fuser` без опции `-k`, чтобы проверить, какие процессы будут затронуты, и только затем, при необходимости, используйте опцию `-k`.

Сравнение с lsof

fuser и lsof используются для поиска процессов, использующих открытые файлы и сокеты, но их назначение и формат вывода различаются.

  • fuser: Специализируется на быстром поиске PID процессов, использующих определенный файл/сокет.
  • lsof: Предоставляет гораздо более подробную информацию об открытых файлах и имеет различные опции фильтрации и вывода.

Проблемы с правами доступа

Для проверки или завершения системных файлов, процессов других пользователей или определенных сетевых портов может потребоваться привилегия `sudo`.

  • Права доступа: В большинстве случаев рекомендуется запускать `fuser` с использованием `sudo`.

Те же команды в категории