我正在为我的 ubuntu 服务器 ( 20.04 LTS
) 上已安装的 NAS 上的文件权限而苦苦挣扎。
NAS 驱动器是使用 cifs 安装的,并且/etc/fstab
:
sudo nano /etc/fstab:
//PiNAS/PiNASdrive /media/PiNAS cifs vers=3.0,credentials=/home/USERNAME/.secrets/.smbdPiNAScredentials,nodev,nosuid,uid=1000,gid=1000 0 0
权限是:
stat /media/PiNAS/:
File: /media/PiNAS/
Size: 0 Blocks: 0 IO Block: 1048576 directory
Device: 33h/51d Inode: 2 Links: 2
Access: (0755/drwxr-xr-x) Uid: ( 1000/ xxxx) Gid: ( 1000/ xxxx)
当我尝试更改权限时sudo chmod -R 0770 /media/PiNAS
,文件权限未更改。
当我尝试设置 NextCloud docker 容器时,这是一个问题,因为 NextCloud webapp 在安装过程中告诉我:
'请将权限更改为0770,以使该目录不能被其他用户列出。'
我可以一致地更改文件权限吗? 或者这是一个 docker 问题,我是否必须对 docker 容器内的文件权限做一些事情(NAS 驱动器上有一个文件夹,该文件夹映射为 docker 容器中的一个卷)
在树莓派 4 上设置;NAS 设备
为了完整起见,以下是 NAS 设备的设置方式:
我有一个带有两个 USB 驱动器的树莓派 4。我曾经mdadm
创建一个简单的“RAID1”阵列:
sudo mdadm --detail /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Thu Feb 18 20:37:27 2021
Raid Level : raid1
Array Size : 1953381440 (1862.89 GiB 2000.26 GB)
Used Dev Size : 1953381440 (1862.89 GiB 2000.26 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Intent Bitmap : Internal
Update Time : Mon Jul 19 21:38:53 2021
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Consistency Policy : bitmap
Name : PiNAS:0 (local to host PiNAS)
UUID : d0b5192e:3b2b1fd7:f43639bb:e041cac6
Events : 51229
Number Major Minor RaidDevice State
0 8 1 0 active sync /dev/sda1
1 8 17 1 active sync /dev/sdb1
该驱动器使用以下方式安装/etc/fstab
:
UUID="1655887b-96c2-40dd-80e2-87e2fdce83c6" /media/USB12 ext4 defaults 0 0
然后通过 samba 共享
nano /etc/samba/smb.conf:
<snip>
[PiNASdrive]
path = /media/USB12
writeable=Yes
create mask=0770
directory mask=0770
public=no
我设法解决了它 - 更适当地阅读各种文档就足够了。
正如@golimar 指出的那样,挂载虽然看起来像一个目录,但并不完全相同,因此也可以采取不同的行动。
这里解释了文件权限是在挂载时为 cifs 挂载创建的,以后不能再更改。此外,您可以将 a
dir_mode
和 a传递file_mode
给 mount 命令来设置权限。我首先创建了一个新目录作为挂载点
~/smbshares/PiNAS
。sudo chmod -R 0770 ~/smbshares/PiNAS
然后,我使用;更改了文件夹的权限 虽然我不是 100% 确定这是否有必要,甚至根本没有做某事。现在,我可以挂载了。对我来说,
/etc/fstab
现在的行看起来像这样:快速
sudo mount -a
(重新)安装所有驱动器。