Эта статья является пятой в нашей серии о переходе на Linux. Если вы пропустили предыдущие статьи, вы можете посмотреть их здесь:
Часть 2 – Диски, файлы и файловые системы
Возможно, вы задавались вопросом о Linux. Возможно, он используется на вашем рабочем месте, и вы будете более эффективны на своей работе, если будете использовать его ежедневно. Или, возможно, вы хотите установить Linux на какое-то компьютерное оборудование, которое у вас есть дома. Какая бы ни была причина, эта серия статей здесь облегчает переход.
Linux, как и многие другие операционные системы, поддерживает несколько пользователей. Он даже поддерживает одновременную регистрацию нескольких пользователей.
Обычно учетным записям пользователей присваивается домашний каталог, в котором храниться файлы. Обычно этот домашний каталог и находится в:
/home/<login name>
Таким образом, каждый пользователь имеет свое отдельное место для своих документов и других файлов.
В традиционной установке Linux обычные учетные записи пользователей не имеют разрешений для выполнения административных задач в системе. И вместо того, чтобы назначать права каждому пользователю выполнять различные задачи, типичная установка Linux потребует от пользователя входа в систему как администратора для выполнения определенных задач.
Учетная запись администратора в Linux называется root.
Исторически, для выполнения задач администратора, нужно было входить в систему как пользователь root, выполнить задачу, а затем выходить из системы. Этот процесс был немного утомительным, поэтому люди входили в систему под именем root и работали целый день в качестве администратора. Такая практика может привести к катастрофическим результатам, например, случайному удалению всех файлов в системе. Конечно, пользователь root может что-то сделать, поэтому нет защиты, чтобы кто-то случайно не выполнял далеко идущие действия.
Объект sudo был создан, чтобы упростить вход в систему как обычную учетную запись пользователя и иногда выполнять задачи администратора как root без необходимости входа в систему, выполнения задачи и выхода из системы. В частности, sudo позволяет вам запускать команду как другой пользователь. Если вы не укажете конкретного пользователя, предполагается, что вы имеете в виду root.
Sudo может иметь сложные настройки, чтобы позволить пользователям определенные разрешения использовать sudo для некоторых команд, но не для других. Как правило, установка на рабочем столе сделает так, чтобы первая созданная учетная запись имела полные разрешения в sudo, поэтому вы, как основной пользователь, можете полностью администрировать установку Linux.
Некоторые установки Linux настроили sudo, так что вам все равно нужно знать пароль для учетной записи root для выполнения задач администратора. Другие, настроили sudo, чтобы вы вводили свой собственный пароль. Здесь есть разные философии.
Когда вы пытаетесь выполнить задачу администратора в графической среде, обычно открывается диалоговое окно с запросом пароля. Введите либо собственный пароль (например, на Ubuntu), либо пароль учетной записи root (например, Red Hat).
Когда вы пытаетесь выполнить задачу администратора в командной строке, она обычно просто дает вам ошибку с отказом. Затем вы снова запустите команду с sudo. Например:
systemctl start vsftpd Failed to start vsftpd.service: Access denied sudo systemctl start vsftpd [sudo] password for user1:
Выполнение команд как root (в случае sudo или иначе) не всегда является лучшим решением для устранения ошибок разрешения. Хотя он будет работать с правами root, будут удалены ошибки, связанные с разрешением, иногда лучше искать основную причину, а не просто рассматривать симптом. Иногда файлы имеют неправильного владелеца и разрешения.
Используйте sudo, когда вы пытаетесь выполнить задачу или запускаете программу, и для выполнения этой операции необходимы привилегии root. Не используйте sudo, если файл просто принадлежит другому пользователю (включая root). В этом втором случае лучше правильно установить разрешение на файл.