Sudo или не sudo?
А где в Ubuntu root и его пароль?
Сатья о sudo vs. su
Поэтому я не буду углубляться в подробности, о которых можно прочитать в интернетах, и напишу о том, как использую её сам.
Итак, sudo - это вспомогательная программа для выполнения команд с правами суперпользователя (root). Тут можно рассказать о пользователях в Linux. Первым среди равных всегда является root. Он всегда один. Он может всё: выполнять любые программы, изменять любые файлы в системе, создавать других пользователей. Каждый из остальных пользователей обычно имеет меньшие права, чем root. Права эти определяются группами, в которых состоит пользователь. Для сравнения:
$ groups boh
audio games boh
$ groups root
root bin daemon sys adm disk wheel floppy dialout tape video
По умолчанию пользователь имеет право записи только в свою домашнюю директорию: /home/%username%/ Но, в принципе, права доступа для каждого файла можно устанавливать отдельно. См. команды chown и chmod. Каждый файл имеет строку-параметр вида drwxrwxrwx.
На месте любого из символов может стоять минус. А означают они очень простую вещь:
d - признак того, что файл - директория. (Да, директории - это такие файлы.)
Первая тройка rwx определяет, может ли владелец (обычно - пользователь, создавший файл, если не использовать chown) соответственно читать (r), писать (w) или исполнять (x) файл. Вторая тройка определяет то же для основной группы владельца. Третья тройка - для всех остальных. Эти параметры можно прописывать в десятичной форме. Для этого каждую тройку превращаем в двоичное число: например r-x это 101, а rw- это 110. Получаем три двоичных числа, которые, очевидно, можно представить в восьмеричной форме (000-111 соответственно в 0-7). Таким образом, чтобы сделать файл общедоступно-исполняемым, нужно выполнить что-то вроде
chown 777 ~/mysharedfile.avi
Кстати, вот ТАК ДЕЛАТЬ НЕ НУЖНО! Это нехилая дыра в защите. Последняя цифра никак не должна быть семёркой!
Ну ладно, как то я отвлёкся :) sudo запрашивает у пользователя ЕГО пароль и, получив его, выполняет команду с правами root'a. То есть, для этого пользователю не нужно знать пароль суперпользователя. А это большой плюс к безопасности. Особенно, если каждому через sudo даются не полные полномочия root'a, а только возможности, необходимые для работы. Я уже не так давно писал об этом. По сути, это очень гибкий инструмент для разделения прав пользователей. Хотя для домашнего применения, конечно, хватает просто иметь полный root-доступ через sudo.
Комментариев нет:
Отправить комментарий