如何授予传输权限以在 Raspbian Raspberry Pi 媒体服务器上的外部硬盘上写入?

如何授予传输权限以在 Raspbian Raspberry Pi 媒体服务器上的外部硬盘上写入?

我已经在我的 Raspberry Pi 上安装了 Transmission,并启用了 Raspbian。想要将种子下载(当然是合法的)到外部硬盘驱动器。许可被拒绝。 root 是驱动器的所有者和组

我尝试按照此处和其他论坛的许多不同说明更改驱动器上的权限,但无法成功。发现一些信息表明无法更改带有 exFAT 的磁盘上的权限。

我可以采取什么解决方法?

我的主要用户是“pi”,我认为这就是 Transmission 使用的用户。

磁盘中磁盘的屏幕截图

编辑:将内容添加到 fstab

proc            /proc           proc    defaults          0 0
PARTUUID=50913804-01  /boot/firmware  vfat    defaults    0 2
PARTUUID=50913804-02  /               ext4    defaults,noatime  0 1
# a swapfile is not a swap partition, no line here
# use  dphys-swapfile swap[on|off]  for that
UUID=67E3-17ED /mnt/67E3-17ED auto defaults,nofail 0 0
UUID=652F-FA93 /mnt/652F-FA93 auto defaults,nofail 0 0  

/etc/fstab 打印屏幕

编辑2:lsblk --fs

lsblk --fs 打印屏幕

$ lsblk --fs
NAME FSTYPE FSVER LABEL UUID                                 FSAVAIL FSUSE% MOUNTPOINTS  
sda                                                                         
├─sda1       vfat   FAT32 EFI   67E3-17ED            196,9M     0% /mnt/67E3-17ED
└─sda2      exfat  1.0   8TB   652F-FA93              5,8T    20% /mnt/652F-FA93
mmcblk0              
├─mmcblk0p1  vfat   FAT32 bootfs D3E6-3F09                             436,8M    14% /boot/firmware
└─mmcblk0p2  ext4   1.0   rootfs cb6f0e18-5add-4177-ab98-e9f0235e06b3   42,7G    58% / 

编辑3:更改fstab

pi@raspberrypi:~ $ lsblk --fs 
NAME FSTYPE FSVER LABEL UUID                                 FSAVAIL FSUSE% MOUNTPOINTS
sda                                                                         
|-sda1
|    vfat   FAT32 EFI   67E3-17ED                             196,9M     0% /mnt/67E3-17ED
`-sda2
     exfat  1.0   8TB   652F-FA93                               5,8T    20% /mnt/652F-FA93
mmcblk0
                                                                            
|-mmcblk0p1
|    vfat   FAT32 bootfs
|                       D3E6-3F09                             436,8M    14% /boot/firmware
`-mmcblk0p2
     ext4   1.0   rootfs
                        cb6f0e18-5add-4177-ab98-e9f0235e06b3   48,4G    54% /
pi@raspberrypi:~ $ ls -la /mnt
totalt 265
drwxr-xr-x  4 root root   4096 21 okt 16.28 .
drwxr-xr-x 18 root root   4096 10 okt 06.06 ..
drwxr-xr-x  4 root root 262144  7 nov 10.27 652F-FA93
drwxr-xr-x  2 root root    512  1 jan  1970 67E3-17ED

先谢谢您的帮助!

答案1

1. 您应该确认您已经安装了处理所需的软件包外加法文件系统:

$ sudo apt update 
...
$ sudo apt install exfat-fuse exfat-utils

如果它们已经安装,apt install则会通知您这一点,并且不执行任何进一步操作。

2. 这是应该进行的更改大概写入您的/etc/fstab文件:

从:
UUID=67E3-17ED /mnt/67E3-17ED auto defaults,nofail 0 0
UUID=652F-FA93 /mnt/652F-FA93 auto defaults,nofail 0 0
到:
UUID=67E3-17ED /mnt/67E3-17ED auto defaults,nofail 0 0
UUID=652F-FA93 /mnt/652F-FA93 auto uid=pi,gid=pi,defaults,nofail 0 0

我说大概因为我认为您不打算将任何种子下载到您的 EFI (FAT) 分区,因此没有必要进行任何更改。事实上,您可能根本不需要在文件中包含 FAT 分区/etc/fstab。但是,如果我错了,您可以对 FAT 分区进行与 EXFAT 分区相同的处理。

如果您只对修复权限感兴趣,则无需阅读本答案的其余部分。我包含其余部分只是为了提供一些将来可能有用的背景(如果您的未来包括编辑/etc/fstab文件之类的事情:)


造成这个现象的原因权限混乱当使用 EXFAT 时基本的:EXFAT 文件系统没有所有者/权限元数据。所有者/权限数据在安装文件系统时设置,并且无法更改(除非重新安装文件系统)。这就是为什么您会时不时地看到一些问题,询问EXFAT 分区上的操作失败的chown原因。chmod

我们已经看到了所有权EXFAT 分区的大小是在安装时使用uid=gid=参数设置的。权限也可能会更改;umask和参数是dmaskfmask用于此目的

所有(或大部分)内容都包含在系统手册中:man mount.exfat-fuse。这里的挑战是知道手册的名称! :) 这提出了关于制定条目的最后几点/etc/fstab

  1. auto我觉得在第三个字段(fs_vfstype)中使用参数/etc/fstab是一个错误......如果您正在使用/编辑,/etc/fstab您至少应该知道您要安装什么文件系统类型!

  2. 同样,我感觉同样重新使用了defaults第四个字段(fs_mntops)中的参数。

  3. 我不喜欢使用 UUID 来识别要安装的卷; UUID 实际上是随机数,以及为什么使用随机数来标识要安装的卷/etc/fstab? ...下周你会记得吗?我更喜欢标签用于识别安装座。对于 EXFAT 分区,创建标签的命令是:

sudo exfatlabel /dev/sda2 "TORRENT_STORE"

因此,我对您的条目的最终建议更改/etc/fstab是这样的:

LABEL=TORRENT_STORE /mnt/652F-FA93 exfat uid=pi,gid=pi,rw,user,nofail 0 0

答案2

显然,内核和fuse exfat驱动程序都使用/来设置临时所有权和//uidgid设置umask挂载内容(包括挂载的“根”)的临时权限。fmaskdmask

所以你有两个选择。如果您不需要挂载可由pi.您可以使用uid=pi。 (您也可以添加gid=pi以使其像您通常的情况一样HOME。显然,这允许您将其pi作为补充组添加到需要对挂载具有写访问权限的其他用户。)

当然,单独的所有权并不一定意味着您需要的权限,但显然是默认的,fmask并授予文件和目录的dmask所有者。 (但不是默认rwx给出的所有者组;因此对于上述目标而言,单独“无用”。)r-xgid=pi

如果您希望更改临时权限而不是所有权,您可以使用类似 的内容fmask=0111,dmask=0000,它为所有用户提供rw-文件和rwx目录的权限。 (您甚至可以只设置umask=0,这会将 和fmask都设置dmask0,即 ,0000除非您也明确使用任何选项。)

相关内容