ディスクマウントの Udev ルールが機能しません。

ディスクマウントの Udev ルールが機能しません。

/etc/udev/rules.d/81-external-disk.rulesには次のものがあります。

ENV{ID_FS_UUID}=="6826692e-79f4-4423-8467-cef4d5e840c5", RUN{program}+="/bin/mount -o nofail,x-systemd.device-timeout=1 -t ext4 -U 6826692e-79f4-4423-8467-cef4d5e840c5 /backup/external"

実行後:

udevadm control --reload ; udevadm trigger /dev/sdb1

何もしません。ただし、/bin/touch /tmp/xyz などのマウントコマンドを変更すると機能します。

バージョン:

[root@helsinki rules.d]# rpm -qa | grep udev
libgudev1-219-19.el7_2.12.x86_64
python-pyudev-0.15-7.el7_2.1.noarch
[root@helsinki rules.d]# rpm -qa | grep systemd
systemd-libs-219-19.el7_2.12.x86_64
systemd-219-19.el7_2.12.x86_64
systemd-sysv-219-19.el7_2.12.x86_64
[root@helsinki rules.d]# cat /etc/redhat-release 
CentOS Linux release 7.2.1511 (Core) 

ベストアンサー1

Ubuntu 18.04でも同じ問題が発生し、根本原因は同じです。この問題を解決するために上書きファイルを作成しますsystemd-udevd

sudo systemctl edit systemd-udevd

そして、以下を挿入してください:

[Service]
MountFlags=shared

(Ubuntu 20.04ではにMountFlags=shared置き換えてくださいPrivateMounts=no。)

ファイルを保存し、次を実行します。

sudo systemctl daemon-reload
sudo service systemd-udevd --full-restart

おすすめ記事