这确实很奇怪,但我找不到问题所在。在 Ubuntu 14.06 中,所有操作都以相同的方式和相同的文件正常工作。在 Ubuntu 16.04 中无法通过 udev 规则挂载 ntfs 文件系统。系统尝试挂载后的输出为:
d????????? ? ? ? ? ? Media/
但如果我使用 udev 规则,则任何时候都会发生这种情况。如果我手动或通过脚本和 cron 作业挂载文件系统,它将起作用。对我来说,这与权限有关,但即使知道 ubuntu 14.04 一切正常,我也不确定在哪里搜索。
内核版本为:4.4.0-31 udev 规则为:
KERNEL=="sd?1", SUBSYSTEMS=="usb", ATTRS{serial}=="222228251A0D", SYMLINK+="mediacenter", ACTION=="add", RUN+="/home/user/mount_filesystem.sh"
执行的简单脚本文件是:
#!/bin/bash
mount UUID=0B1EA330201EA249 /media/Media
sleep 5
service minidlna restart
现在我的问题是:
如果它与 Ubuntu 14.04 完美兼容或者我手动或每分钟通过 cron 启动脚本,我的问题在哪里。
答案1
首先,纠正规则部分顺序 MATCH 然后 ACTION
KERNEL=="sd?1", SUBSYSTEMS=="usb", ATTRS{serial}=="222228251A0D", SYMLINK+="mediacenter", ACTION=="add", RUN+="/home/user/mount_filesystem.sh"
到
KERNEL=="sd?1", SUBSYSTEMS=="usb", ATTRS{serial}=="222228251A0D", ACTION=="add", SYMLINK+="mediacenter", RUN+="/home/user/mount_filesystem.sh"