В любой многопользовательской операционной системе управление пользователями и группами является фундаментальной концепцией. Это основная часть основ Linux, предназначенная для контроля доступа и разрешений. Когда процесс запускается, он выполняется от имени пользователя, который его запустил. Аналогично, доступ к файлам и владение ими зависят от разрешений, что не позволяет одному пользователю получить доступ к личным документам другого.
Основы пользователей и групп Linux
Каждому пользователю в системе Linux назначается личный домашний каталог, обычно расположенный по адресу /home/имя_пользователя. В этом каталоге хранятся файлы и конфигурации, специфичные для пользователя, хотя точный путь может различаться в разных дистрибутивах Linux.
Система идентифицирует пользователей по идентификатору пользователя (UID), а группы — по идентификатору группы (GID). Хотя мы используем удобочитаемые имена пользователей, операционная система полагается на эти уникальные числовые идентификаторы для всех задач, связанных с разрешениями. Группы — это просто наборы пользователей, что упрощает управление разрешениями для нескольких учетных записей одновременно.
Суперпользователь и команда Sudo
В иерархии пользователей и групп Linux один пользователь стоит выше всех остальных: root, также известный как суперпользователь. Пользователь root обладает неограниченной властью, способной получать доступ к любому файлу и управлять любым процессом. Постоянная работа под учетной записью root рискованна, поскольку одна простая ошибка может повредить систему.
Чтобы снизить этот риск, авторизованные пользователи могут выполнять команды с привилегиями root с помощью команды sudo (superuser do). Это позволяет выполнять административные задачи без входа в систему как пользователь root. Понимание того, как правильно использовать sudo, имеет решающее значение для всех, кто стремится освоить самый быстрый путь к продвинутому Linux администрированию.
Давайте попробуем просмотреть защищенный файл, например /etc/shadow, который хранит зашифрованные пароли пользователей.
cat /etc/shadow
Вы получите ошибку «Permission denied» (Отказано в доступе). Давайте посмотрим на разрешения файла:
$ ls -la /etc/shadow
-rw-r----- 1 root shadow 1134 Dec 1 11:45 /etc/shadow
Хотя позже мы подробно рассмотрим разрешения, этот вывод показывает, что только пользователь root и члены группы shadow могут читать этот файл. Теперь выполните команду снова с помощью sudo:
sudo cat /etc/shadow
На этот раз вам будет предложено ввести пароль, и после успешной аутентификации содержимое файла будет отображено.