systemd-udev-triggerユニットファイルを見ると、systemd-udev-triggerサービスを開始するには/ sys rwが必要であることがわかります。 /usr/bin/udevadm Trigger --type=subsystems コマンドを確認しました。 --action =Add; /usr/bin/udevadm トリガー --type=devices --action=add には /sys rw も必要です。
#systemctl cat systemd-udev-trigger
# /usr/lib/systemd/system/systemd-udev-trigger.service
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
[Unit]
Description=udev Coldplug all Devices
Documentation=man:udev(7) man:systemd-udevd.service(8)
DefaultDependencies=no
Wants=systemd-udevd.service
After=systemd-udevd-kernel.socket systemd-udevd-control.socket systemd-hwdb-update.service
Before=sysinit.target
ConditionPathIsReadWrite=/sys
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/bin/udevadm trigger --type=subsystems --action=add ; /usr/bin/udevadm trigger --type=devices --action=add
ベストアンサー1
要点udevadm trigger
は、存在するすべてのデバイスに対してイベントを送信するようにカーネルに指示することです。これはそれに書き込むことによってこれを行います/sys/devices/*/*/uevent
。これを行うには、sysfsを読み書きでマウントする必要があります/sys
。