В Linux всё — это файл: обычные файлы, сокеты, устройства, каталоги, процессы. "lsof" расшифровывается как List Open Files — "список открытых файлов".
Соответвенно, команда
lsof позволяет просматривать информацию об открытых файлах и связанных с ними процессах:Эта утилита вам пригодится, если вы сталкиваетесь с ошибками доступа к файлам, например, при монтировании, удалении или использовании разделов.
lsof [опции]
lsof -i :80
Покажет процесс (PID), который слушает порт 80.
lsof /path/to/file
Если файл нельзя удалить или смонтировать диск — это поможет выяснить, кто его использует.
lsof -i
Выведет список всех TCP/UDP подключений (локальные и удалённые адреса, PID, программа).
lsof +L1
Полезно, если диск "заполнен", но место не освобождается — это покажет процессы, держащие "удалённые" файлы открытыми.
lsof -p 1234
Покажет, какие файлы, сокеты и устройства открыты у процесса с PID 1234.
lsof +D /var/log/
Полезно при попытке размонтировать диск или директорию — можно увидеть, кто удерживает файлы внутри.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥5
fd — это современная, быстрая и удобная альтернатива стандартной команде find. Она делает то же самое — ищет файлы и каталоги, — но проще в использовании, работает быстрее и выдает чистый, цветной, читаемый вывод.В большинстве дистрибутивов Linux
fd доступна в официальных репозиториях:sudo apt install fd-find # Для Debian/Ubuntu
sudo dnf install fd-find # Для Fedora
sudo pacman -S fd # Для Arch Linux
fd [паттерн] [директория]
fd filename
Найдёт все файлы, имя которых содержит “filename”.
fd 'pattern'
Поддерживаются регулярные выражения для шаблонов.
fd filename /path/to/dir
fd 'filename'
fd ищет только в текстовых файлах, игнорируя двоичные.
• Только файлы:
fd -t f• Только директории:
fd -t dfd -l
Показывает подробные пути к найденным объектам.
fd -s filename
Найти все файлы с расширением .rs в текущем каталоге и его подкаталогах:
fd '\.rs$'
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🆒1