Мониторинг изменений файлов и каталогов крайне важен для устранения неполадок, аудита системы, обнаружения несанкционированного доступа и так далее. Для отслеживания каких-либо правок в системе Linux была есть утилита fswatch
.
В этой статье мы покажем Вам установку инструмента fswatch
и примеры его использования.
Содержание:
Что такое fswatch в Linux
Утилита fswatch
— это инструмент командной строки в Linux, который позволяет отслеживать изменения в файлах и каталогах в режиме реального времени. Он использует механизм событий файловой системы для мониторинга таких действий с файлами / директориями как:
- создание;
- удаление;
- модификация и изменение.
Общий синтаксис команд утилиты fswatch
имеет следующий вид:
Где:
[option]
— опции, которые изменяют настройки мониторинга;[path]
— путь к файлу / каталогу, модификации в котором пользователь хочет отслеживать.
Есть два способа установить инструмент мониторинга: с помощью менеджера пакетов или официального GitHub-репозитория.
Установка с помощью менеджера пакетов
Начнем с первого способа. Чтобы установить утилиту в своем дистрибутиве Linux, выполните следующие команды.
Для Debian / Ubuntu:
Читайте также: Команда vtop для мониторинга процессов и памяти Linux.
Для Fedora / RHEL / CentOS:
Установка с помощью GitHub репозитория
Если Вы хотите использовать для установки fswatch
репозиторий Github, для начала установите инструменты разработки.
Для Debian / Ubuntu:
Для Fedora / RHEL / CentOS:
Затем скачайте последнюю версию архива fswatch
с помощью команды wget
и установите его, как показано ниже:
В дистрибутивах Debian / Ubuntu Вы можете получить такую ошибку при выполнении команды:
Чтобы ее исправить, введите следующую команду:
Использование fswatch в Linux
Инструмент fswatch
имеет два варианта мониторинга системы. Чтобы узнать какие именно, напишите с командой опцию -M
или --list-monitors
:
По умолчанию используется способ мониторинга inotify_monitor
. Так как он является основным в дистрибутивах Linux, начиная с ядра 2.6.13. А poll_monitor
был добавлен в качестве резервного в случаях, когда главный способ мониторинга не может быть использован.
Чтобы fswatch
работал в режиме реального времени, нужно установить время, через которое он будет сообщать о произошедших изменениях. Для этого используется параметр -l
или -latency
. По умолчанию время обновления составляет 1 секунду, однако, Вы можете задать другое значение. Например:
В этом случае мы установили время обновления в 4 секунды. И смогли отследить, какие изменения произошли в текущей папке.
Чтобы посмотреть вносит ли кто-то правки в файл, введите путь к нему в качестве аргумента команды fswatch
:
Читайте также: whowatch — мониторинг пользователей и процессов Linux в режиме реального времени.
Вы можете вести историю событий в файле / каталоге, установив временную отметку. Это возможно благодаря опции -t
или --timestamp
. К примеру:
Часто для написания скриптов или программной обработки вывода нужно отображать номера событий вместо их названий. Чтобы показать на экране терминала числовое значение события, используйте опцию -n
или --numeric
:
Для получения дополнительной информации об fswatch
посетите его официальный репозиторий или man
-страницу:
Выводы
Утилита fswatch
— это универсальный инструмент для мониторинга изменений и модификаций файлов / каталогов в 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.