Not-Root-User

以非 root 身份解除安裝外部 ntfs 驅動器

  • July 28, 2012

我安裝了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 的文件)。

這就是系統的設計方式。

由於文件系統是由 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}"

不鼓勵使用者直接讀/寫訪問塊設備,但如果這只是您的工作站,那麼安全性的降低可能可以忽略不計。

引用自:https://unix.stackexchange.com/questions/44142