TGViewer
BashTex | Linux BashTex | Linux @bash_tex · 2.51K subscribers
Post #234 1.41K
Уведомление о подключении внешнего устройства

Хочешь получать уведомления, когда кто-то подключает флешку к серверу или рабочей станции? Это возможно с помощью udev и небольшого скрипта.

Когда в Linux подключается новое устройство, ядро отправляет событие в подсистему udev. Мы можем отследить это событие и выполнить любую команду - например, отправить уведомление в телеграмм или записать в лог.

1️⃣ udev-правило. Создаём правило:


sudo nano /etc/udev/rules.d/99-usb-notify.rules


Пример:


ACTION=="add", SUBSYSTEM=="block", KERNEL=="sd[a-z][0-9]", RUN+="/usr/local/bin/usb-notify.sh"


Это правило сработает при подключении новых разделов (например, /dev/sdb1).

2️⃣ Скрипт уведомления. Создай файл:


sudo nano /usr/local/bin/usb-notify.sh



#!/bin/bash

DEVICE="$DEVNAME"
TIME=$(date "+%Y-%m-%d %H:%M:%S")

echo "[$TIME] Подключено устройство: $DEVICE" >> /var/log/usb-connect.log

# Telegram (опционально)
TOKEN="your_bot_token"
CHAT_ID="your_chat_id"
TEXT="USB подключено: $DEVICE в $TIME"
curl -s -X POST https://api.telegram.org/bot$TOKEN/sendMessage \
-d chat_id="$CHAT_ID" -d text="$TEXT" > /dev/null


Не забудь:


chmod +x /usr/local/bin/usb-notify.sh


3️⃣ Применение


sudo udevadm control --reload
sudo udevadm trigger


Проверь, подключив USB-накопитель. Устройство должно появиться, и ты получишь сообщение или запись в лог.

🌟 Советы

1. Используй SUBSYSTEM=="usb" и ENV{ID_USB_DRIVER}=="usb-storage" для более узкой фильтрации.
2. Чтобы поймать все события - смотри udevadm monitor.
3. Уведомления можно расширить: звуковое оповещение, email, системное всплывающее сообщение.

Это будет полезно на серверах, где подключение внешних накопителей должно отслеживаться.

BashTex 📱 #bash #utils
  • 👍 19
  • 🔥 1
More from @bash_tex
  1. Oct 13, 2026openat2(): как Linux защищает от выхода за пределы каталога Допустим, приложение должно чи…
  2. Oct 12, 2026xargs против while read: где быстрее и безопаснее Обе конструкции позволяют обработать спи…
  3. Oct 9, 2026BashTex 📱 #мем
  4. Oct 8, 2026Bridge FDB - как Linux bridge узнаёт, где находится MAC Linux bridge не знает заранее, за…
  5. Oct 7, 2026/dev/tcp - сетевое соединение средствами Bash В Bash есть малоизвестная возможность работа…
  6. Oct 6, 2026Ephemeral ports - почему заканчиваются исходящие TCP-порты Когда приложение устанавливает…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →