我有NTFS-3G安装并使用这个 udev 规则自动安装外部驱动器。当我尝试以非root身份卸载它时,它说:
umount: /media/umm is not in the fstab (and you are not root)
该设备安装为:
/dev/sdc1 fuseblk 150G 143G 6.6G 96% /media/umm
并且是该组的一部分users
。我chkdsk
在 Windows 机器上做了一个以确保没有文件系统错误。
有任何想法吗?
(就我个人而言,我不想使用 ntfs,但我需要它与所有非 UNIX 系统共享并允许文件 > 4GB)。
答案1
系统就是这样设计的。
由于文件系统是由 root 挂载的,并且未在/etc/fstab
该user
选项中列出,因此只有 root 可以卸载它。你无法改变这种行为。
你什么能要做的就是修改您的脚本以将其安装在您作为用户拥有的位置。您还需要使块设备可供您读取/写入。
那将改变这一点:
ACTION=="add", RUN+="/bin/mkdir -p /media/%E{dir_name}", RUN+="/bin/mount -o $env{mount_options} /dev/%k /media/%E{dir_name}"
对此:
ACTION=="add", RUN+="/bin/chown invert:invert /dev/%k", RUN+="sudo -u invert /bin/mkdir -p /home/invert/media/%E{dir_name}", RUN+="sudo -u invert /bin/mount -o $env{mount_options} /dev/%k /home/invert/media/%E{dir_name}"
不鼓励为用户提供对块设备的直接读/写访问权限,但如果这只是您的工作站,则安全性的降低可能可以忽略不计。
答案2
如果您正在使用ubuntu
,我认为使用disk utility
(实际上由RedHat
) 就可以了