Что происходит, когда Карта памяти включается?

Как Micheal, на который уже указывают, можно использовать who узнать, кто вошел в систему. Однако, если у них есть несколько процессов, существует более удобный способ, чем уничтожение каждого процесса индивидуально: можно использовать killall -u username уничтожить все процессы тем пользователем.

21
09.03.2019, 16:57
2 ответа

Этим вручают udev в современных системах Linux. udev демон, запущенный с системы, будет искать в /etc/udev/rules.d и /lib/udev/rules.d и выполнит соответствие правилам для событий ядра. Вставка Карты памяти инициирует событие, udev будет искать правило соответствия и выполнит его.

Сами правила определят то, что делает Ваша система. В последние годы, udev связался с HAL, который предупредил бы приложения через DBUS. Этот подход является теперь устаревшим в пользу объединенного udev решение, которое я предполагаю, включит udevd передача через dbus непосредственно, или через dbus-отправляют.

Можно контролировать операции udev через udevadm monitor.

6
27.01.2020, 19:43

Я еще не абсолютно уверен относительно этого, поэтому возьмите его с мелкой частицей соли и большего количества исследования.

Это запускается с подсистемы замены в горячем режиме ядра. После того, как устройство является установкой, это любой вызовы независимо от того, что программа пространства пользователя является установкой для обработки событий замены в горячем режиме (если Вы были установлены echo hotplug_handler > /proc/sys/kernel/hotplug) или отправляет пакет данных по kobject_uevent netlink сокет. Когда ядро запускает обработчик замен в горячем режиме, оно настраивает некоторые переменные среды. Когда ядро отправляет datapacket, оно включает key=value пар. Если Вы хотите, можно установить сценарий, который просто регистрирует среду и настраивает ее как обработчик (не в производственной системе, конечно - тестовая установка).

Обычно, udev является установкой как обработчиком, и это будет иметь несколько установок правил о том, как обработать события. Оттуда, это может запустить другие программы, которые делают другие вещи (как проблема dbus сообщения). Эти правила udev очень зависят от конкретного распределения интереса.

Существует большая информация в этом потоке, где кто-то пытается записать, что некоторая документация - отмечает, что первое сообщение не точно; продолжайте читать.

2
27.01.2020, 19:43
  • 1
    Когда-то давно это было точно, но не в течение долгого времени теперь: современный udev прислушивается к uevents на сокете netlink. (Старый путь имел проблемы сериализации/параллелизма.) –  ephemient 11.01.2011, 02:06
  • 2
    Так как я плохо знаком с этой частью Linux (udev, замена в горячем режиме), я хотел бы иметь идею о каждой строке, которую Вы описали здесь. Так могли Вы уточнять запуски с подсистемой замены в горячем режиме ядра. –  Sen 11.01.2011, 06:59
  • 3
    @ephemient: Спасибо за ответ. Вы могли объяснить последовательность событий. –  Sen 11.01.2011, 07:00

Теги

Похожие вопросы