Как надежно контролировать монтирование / размонтирование дисков в Linux? - PullRequest
4 голосов
/ 08 января 2012

Я нашел несколько подобных вопросов здесь, но ни один из них не работает сейчас.

Мониторинг (inotify) /etc/mtab не работает, потому что теперь он соответствует /proc/mounts. Мониторинг с помощью udisks не позволяет обнаружить подключенные / смонтированные диски вручную. Сокеты Netlink также не работают (без действий монтирования / размонтирования).

Так, каков на самом деле рабочий способ мониторинга монтирования и монтирования?

P.S. Меня не волнуют монтируемые в пространстве имен, просто глобальные.

Ответы [ 2 ]

3 голосов
/ 08 января 2012

Я считаю, что udev , вероятно, должен использоваться для мониторинга монтировок.

2 голосов
/ 28 сентября 2016

Вы можете отслеживать / proc / mounts без опроса.Поместите его в список исключений, чтобы выбрать, а затем каждый раз искать в начале файла.Вот небольшая демонстрация в Python, но она должна быть легко переведена на C:

f = open("/proc/mounts")
while True:
    r,w,x = select.select([],[],[f])
    f.seek(0)
    print f.read()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...