Отказано в доступе при обращении к файлу с ACL на XFS файловой системы

Если вы хотите, чтобы команда cd работала в вашей текущей оболочке, вы должны запустить сценарий в текущей оболочке, потому что изменения в дочерней оболочке не передаются обратно в родительскую оболочку.

      $ pwd
      /afs/user/i/ahmad
      $ cat test1
        #!/bin/bash
        cd /etc
      $ . test1           #runs test1 in current shell even if its not executable
      $ pwd
      /etc

Использование echo и eval:

Использование eval в родительской оболочке. В командах эха сценария оболочки, которые вы хотите запускать родительской оболочкой:

echo "cd $filepath"

В родительской оболочке вы можете запустить сценарий оболочки с помощью eval:

  eval `sh foo.sh`

Пример:

  $ cat test1.sh 
   #!/bin/bash
   echo "cd /etc"

  $ eval `sh test1.sh`
  $ pwd
  /etc
1
26.11.2018, 19:39
1 ответ

Файловые системы Extended и XFS теперь автоматически используют параметр ACL. Пользователю testuserпо-прежнему необходимо разрешение на выполнение для просмотра файлов в /aclDirectory. Вам понадобится ACL для самого каталога и ACL для всех новых объектов файловой системы, созданных в каталоге.

# Remove the ACLs.
sudo setfacl -b /aclDirectory

# Create the default ACL (for filesystem objects created within the directory).
sudo setfacl -d -m u:testuser:rwx /aclDirectory

# Set an ACL for the directory itself.
sudo setfacl -m u:testuser:rwx /aclDirectory

Затем создайте тестовый файл как ec2-userдля testuser.

0
28.01.2020, 00:23

Теги

Похожие вопросы