Для написания правил нужно видеть события udev.
Я пытался установить udev_log = "debug"
в /etc/udev/udev.conf
.
Я пытался отредактировать / usr / share / initramfs-tools / scripts / init-top / udev
, чтобы установить там log_level = debug
. Также параметр - debug
:
...
log_level=debug
SYSTEMD_LOG_LEVEL=$log_level /lib/systemd/systemd-udevd --daemon --debug --resolve-names=never 2>/dev/.udev.debug
...
И каждый раз перестраивает initramfs:
update-initramfs -k all -u
После перезагрузки в файл ничего не записывается, journalctl -u systemd-udevd
не делает показать события.
В настоящее время я использую дополнительную службу для просмотра событий:
[Unit]
Description=udev Monitoring
DefaultDependencies=no
Wants=systemd-udevd.service
After=systemd-udevd-control.socket systemd-udevd-kernel.socket
Before=sysinit.target systemd-udev-trigger.service
[Service]
Type=simple
ExecStart=/bin/sh -c "/sbin/udevadm monitor --udev --env > /dev/udev_monitor.log"
[Install]
WantedBy=sysinit.target
Есть ли способ попроще?
Я только что столкнулся с этим, и вам также нужно установить SYSTEMD_LOG_TARGET=console при перенаправлении stderr udevd. Я думал, что схожу с ума!
У меня это сработало, используя Ubuntu 18.04 в VirtualBox.
тихую заставку
для загрузки в текстовом режиме. udev.log-priority = debug
. Затем Ctrl + X для загрузки. Вы можете видеть сообщения udev при загрузке или после использования:
journalctl -u systemd-udevd
Для постоянных настроек вы можете установить udev.log-priority = debug
в GRUB_CMDLINE_LINUX
Источник: - archlinux - Отладочные данные Udev