Управление списками доступа POSIX ACL (Access Control Lists).
Может ли пользователь выполнить действие над файлом или папкой определяются следующим образом:
apt-get install acl
Для того, чтобы проверить поддерживаются ли списки доступа (ACL) нужно выполнить команду:
tune2fs -l /dev/sdaX | grep acl
где/dev/sdaX
это имя устройства.
Для систем с LVM нужно использовать такой вариант:
tune2fs -l /dev/mapper/vg01-home | grep acl
где /dev/mapper/vg01-home
это имя логического тома
Если ACL поддерживаются то в выводе команды будет примерно это:
Default mount options: user_xattr acl
Установка прав доступа
Пример:
Рекурсивно -R
удаляем существующие права -b
и из файла -M
заданного в $acl_file
применяем права и умолчания.
#!/bin/bash # Путь path=/srv/share01 # Права acl_file=/tmp/tmp.acl cat << 'EOF' |tee $acl_file user::rwx group::rwx group:Group_F:rwx group:Group_R:r-x user:User_F:rwx user:User_R:r-x mask::rwx other::--- default:group:Group_F:rwx default:group:Group_R:r-x default:user:User_F:rwx default:user:User_R:r-x default:mask::rwx default:other::--- EOF setfacl -b $path setfacl -R -b -M $acl_file $path rm $acl_file
Отображение списка контроля доступа к файлам и папкам.
getfacl -R ИМЯ_ОБЪЕКТА > ИМЯ_ОБЪЕКТА.acl