Права доступа в Linux

Краткая инструкция по работе с правами доступа к директориям и файлам в Linux-системах на примере ОС Debian GNU/Linux 11.6

Сделать пользователя владельцем файла или директории

# chown username:groupname /home/username/some_directory/

Задать пользователю (владельцу) полные права, а также определить права для группы и остальных пользователей, которые не входят в заданную группу

# chmod 775 /home/username/some_directory/

Здесь 775 — это:

  • 7 — rwx — права владельца (полные)
  • 7 — rwx — права группы, в которую входит владелец (также полные)
  • 5 — r-x — права для остальных пользователей, не входящих в группу владельца (в данном случае чтение и выполнение)

Эту же команду можно прописать так:

# chmod u=rwx,g=rwx,o=rx /home/username/some_directory/

Подробнее о chmod можно почитать в Википедии: https://ru.wikipedia.org/wiki/Chmod

Для того, чтобы конкретизировать права для других пользователей, используется Access Control List (ACL)

# apt install acl

Добавить права другим пользователям или группам можно при помощи команды:

# setfacl -m u:someuser:r /home/username/some_directory/

этот пример — права для пользователя someuser только для чтения

# setfacl -m g:somegroup:rwx /home/username/some_directory/

этот пример — права для группы somegroup для чтения, записи и выполнения

Просмотреть права на директорию или файл

# getfacl -a /home/username/some_directory/

Удалить права для пользователя someuser

# setfacl -x u:someuser /home/username/some_directory/

Удалить все дополнительные права для директории (или файла)

# setfacl -b /home/username/some_directory/

Для рекурсивных действий к командам необходимо добавлять ключ -R.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *