udevadmトリガーに/ sys rwが必要なのはなぜですか?

udevadmトリガーに/ sys rwが必要なのはなぜですか?

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

おすすめ記事