Я устанавливаю набор NAS-дисков на свой Linux-бокс (Ubuntu 20.04), и, похоже, с большинством дисков все работает нормально:
sudo mount -t cifs //mynas/mydrive /mnt/mydrive -o \
credentials=/etc/samba/nas.creds,file_mode=0600,dir_mode=0700,uid=myuid,gid=mygid
То есть диски смонтированы, у них правая маска, они доступны для записи моему пользователю.
За исключением вложенных папок на одном из этих дисков. Он монтируется точно так же с точно такими же учетными данными, а каталог верхнего уровня доступен для записи. Однако я не могу писать ни в один из поддиректоров!
Директория верхнего уровня доступна для записи:
$ ls -ld /mnt/mydrive
drwx------ 2 myuid mygid 0 May 17 18:22 /mnt/mydrive
$ touch /mnt/mydrive/aaa
$ ls -l /mnt/mydrive/aaa
-rw------- 1 myuid mygid 0 May 17 18:39 /mnt/mydrive/aaa
Поддиры не
$ ls -ld /mnt/mydrive/new
drwx------ 2 myuid mygid 0 Mar 10 2019 /mnt/mydrive/new
$ touch /mnt/mydrive/new/aaa
touch: cannot touch '/mnt/mydrive/new/aaa': Permission denied
NAS - это QNAP (производная от Linux / Samba для ОС), и все общие ресурсы имеют одинаковый набор учетных данных и доступ для чтения / записи. Папки изначально были созданы через Windows (в случае, если это имеет значение), однако это применимо ко всем рассматриваемым папкам на всех дисках - но только этот диск показывает такое поведение.
Я что-то забываю? Есть ли еще один механизм ACL, который я должен учитывать? Любая помощь будет оценена по достоинству!
Оказалось, что это довольно глупая ошибка: некоторое время назад на NAS были созданы 2 очень похожих пользователя, а учетные данные, которые использовала Linux, принадлежали пользователю, отличному от того, который владел данным каталогом (что было довольно легко упустить из виду). Каталог Top был доступен для записи всем, что объясняет частичный успех.