Путать с общими папками и ACL
У меня есть 2 машины с Ubuntu (Ubuntu1 и Ubuntu2). Ubuntu1 разделяет папку /opt/share, и я создал testuser специально для rwx:
setfacl -Rm u:testuser:rwx .
Ubuntu2 монтирует его на /mnt/ubuntu1
mount -t cifs -o user=testuser,password=thepassword //ubuntu1/share1 /mnt/ubuntu1
Я могу увидеть общую папку на Ubuntu2 и перечислить файлы init
ls -lh
drwxrwxr-x+ 2 root root 0 Nov 3 00:31 aginova
drwxrwxr-x+ 2 root root 0 Nov 3 00:31 brother
drwxrwxr-x+ 2 root root 0 Nov 3 00:31 dizcoisas
drwxrwxr-x+ 2 root root 0 Nov 3 00:31 equipamentos
Вот где это начинает сбивать с толку: тестируя общий ресурс на машине с Windows, я аутентифицируюсь с помощью testuser,thepassword и могу использовать rwx, но на компьютере с Ubuntu2, хотя общий ресурс монтируется с тем же пользователем, я получаю " В доступе отказано "при попытке написать.
просматривая списки доступа, я вижу другого пользователя, имеющего разрешение в этой папке, которое я никогда не настраивал (???)
root@ubuntu2:/mnt/share1# getfacl .
# file: .
# owner: root
# group: root
user::rwx
user:siemens:rwx
group::r-x
mask::rwx
other::r-x
И если я пытаюсь установить setfacl, как это делал в ubuntu2, он возвращает ошибку, в основном говоря, что testuser не существует или "Отказано в доступе" .
root@ubuntu2:/mnt/ubuntu1# sudo setfacl -bR .
setfacl: .: Permission denied
setfacl: ./aginova: Permission denied
setfacl: ./equipamentos: Permission denied
setfacl: ./dizcoisas: Permission denied
setfacl: ./brother: Permission denied
root@ubuntu2:/mnt/ubuntu# getfacl .
# file: .
# owner: root
# group: root
user::rwx
user:siemens:rwx
group::r-x
mask::rwx
other::r-x
root@ubuntu2:/mtn/ubuntu1# sudo setfacl -Rm u:testuser:rwx /mnt/ubuntu1/setfacl: Option -m: Invalid argument near character 3
Итак, почему совместное монтирование работает с rwx в Windows, но только с r-- в ubuntu2?
1 ответ
Единственный способ, которым я получил эту работу, был, применяя это на машине Ubuntu1
chmod -R 777 /opt/share
затем установите "действительных пользователей", как это в /etc/samba/smb.conf
[share]
...
valid users = testuser
таким образом, только определенные пользователи могут получить доступ к общему ресурсу в любом случае, поэтому нет необходимости устанавливать ACL для этого случая, так как предполагается, что пользователь все равно будет иметь rwx