我正在尝试设置 Raspberry Pi 来运行 BitTorrent Sync,以将我的文件备份到外部硬盘驱动器,但遇到了一些令人沮丧的问题。
首先,我需要将 USB 硬盘设置为在启动时自动挂载,因为我住的地方经常断电。因此,我添加了一行到/etc/fstab
/dev/sda1 /media/josiah vfat defaults 0 0
我重新启动,它安装了驱动器,但 btsync 无法写入它。因此,我读了一下,发现你必须指定用户选项,所以我尝试了这个;
/dev/sda1 /media/josiah vfat defaults,user 0 0
这似乎也不起作用,所以我尝试手动指定所有默认值
/dev/sda1 /media/josiah vfat rw,auto,user,async,suid,dev,exec 0 0
我以为它正在工作,但随后 btsync 再次开始抱怨它无法写入驱动器,当我尝试以普通用户身份卸载它时,它说只有超级用户才能卸载该驱动器。
这让我很困惑,因为我认为这个user
选项就是用来做这个的。我遗漏了什么或做错了什么?
答案1
您可以在挂载分区后执行 chmod,但这不会在重启后持久保留。
您应该尝试这个 fstab 行:
/dev/sda1 /media/josiah vfat user,umask=0000 0 0
或者这个安装选项:
mount -t vfat -ouser,umask=0000 /dev/sda1 /media/josiah
这将使已挂载的分区可供全世界读取和写入。
如果您需要不太宽松的设置,您应该创建一个新组并按如下方式挂载:
mount -t vfat -ouser,gid=1010,umask=0007 /dev/sda1 /media/josiah
它假定新组的 gid 是 1010。所有需要访问挂载点的用户都需要添加到新组。
答案2
编辑挂载目录的权限。
就您而言,chmod 777 /media/josiah
这应该能起到很好的作用。
答案3
“用户”选项仅允许用户安装设备,与文件的访问权限无关。
与 gnp 答案一样,请参阅“uid”/“gid”和“umask”选项。
答案4
FWIW:“当我尝试以普通用户身份卸载它时,它说只有超级用户才能卸载该驱动器。这让我很困惑,因为我认为这就是用户选项的用途。”
用户选项意味着只有挂载文件系统的用户才能再次卸载它。就你的情况而言,驱动器似乎是在启动时挂载的,在你登录之前——这意味着它是超级用户挂载的。如果任何用户都应该能够卸载它,那么使用用户代替用户在 fstab 行中。有关更多详细信息,请参阅 man mount 和/或 man fstab。
(问题本身的解决方案已经解释过了——要使驱动器所有用户都可写,请在 fstab 中使用 umask/dmask/fmask 选项,最终结合 uid/gid 选项。同样,man mount 和/或 man fstab 会有所帮助。vfat 上的 Chmod 确实是不可能的,因为 fat 文件系统根本不知道访问权限。)