Прежде всего, важно понимать, что при просмотре каталога или файла традиционные разрешения Unix знают только различие между:
- Пользователь
- Группа пользователей
- Кто-нибудь еще
Эти разрешения отражены в нотации rwxrwxrwx
, называемой режимами. r
означает чтение, w
запись и x
выполнение. Их значение в значительной степени соответствует названию, только то, что разрешение на выполнение позволяет вам восстановить дерево каталогов.
Таким образом, /home /testser принадлежит пользователю testuser, и он может что-то изменить в своем каталоге, но не более того. Что этот корень указывает на домашний каталог?
root
здесь группа, к которой принадлежит каталог. Это означает, что любой пользователь в root
группе будет иметь разрешения, как указано во второй части rwx
записи разрешений. Например, drwxr-xr-x
будет означать, что любой пользователь в root
группе может только читать и перечислять этот каталог, но не записывать в него.*
В этом примере с testuser предположим, что он принадлежит корню группы. Означает ли это, что у этого пользователя есть объединение привилегий testuser и root?
Права пользователя применяются к этому каталогу, потому что он принадлежит им. Если testuser
также находится в root
группы, то привилегии в этой группе также будут применяться. В противном случае будут применяться только разрешения третьей части.
Допустим, вы на уроке информатики и есть компьютер, в котором alice
и bob
принадлежат students
группы. У каждого из них есть домашний каталог с rwxr-x---
, с правами на alice:students
или bob:students
. Это означало бы, что любой студент может перечислить и прочитать содержимое любого другого студента, но он не может изменять файлы своих коллег.
Кроме того, я заметил, что для нового пользователя, которого я создаю, создается новая группа, которая называется так же, как и имя пользователя. Какова цель этого?
Это позволяет вам более гибко управлять разрешениями. Иногда вы не хотите иметь группу, которая будет общей для пользователей. Особенно для домашних папок, вы не хотите, чтобы кто-то еще даже читал их. Вот почему неплохо chown -R testuser:testuser /home/testuser
, потому что настройка безопасности группы (даже rwx
) не будет проблемой безопасности.
* Ну, не совсем так, поскольку любой пользователь root может делать что угодно, но если бы группа была чем-то другим, то вышеприведенное было бы верным.