2

Я был пользователем Windows всю свою профессиональную жизнь. Я только что получил MacBook Pro и хочу начать разработку с Ruby on Rails.

Я ознакомился с несколькими руководствами по установке, которые рекомендуют использовать команду sudo . Из того, что я могу сказать, команда sudo позволяет вам запускать команду от имени администратора.

Чего я не понимаю ... У меня на Mac только 1 учетная запись, разве я не должен быть администратором по умолчанию?

Почему мне нужно использовать команду sudo ?

Я правильно понимаю, что делает sudo ?

3 ответа3

8

На Mac пользователь, которого вы используете для входа, по умолчанию не является учетной записью суперпользователя (root). Это функция безопасности (Наименьшая привилегия), которая разработана.

Наряду с этой моделью безопасности, sudo - это инструмент, который позволяет обычным (не-root) пользователям выполнять корневые задачи в каждом конкретном случае.

Это предотвращает целый ряд проблем, не последним из которых является случайный сбой вашей машины. :)

4

Часть путаницы, с которой вы сталкиваетесь, - это терминология. В OS X есть три основных уровня привилегий учетной записи, с которыми вы столкнетесь:

root (он же суперпользователь, системный администратор или система): это конкретная учетная запись (не просто учетная запись), и, как правило, она всесильна. Например, root имеет полный доступ ко всем файлам в системе, независимо от их прав доступа. Обычно входить в систему как root - плохая идея, поэтому по умолчанию учетная запись отключена (и в основном скрыта). Это примерно соответствует тому, что вы, вероятно, называете "Администратор".

Администратор: это тип вашей учетной записи; разрешено вносить изменения в масштабе всей системы, но обычно для этого требуется сделать что-то особенное (например, щелкнуть значок замка и пройти аутентификацию). Например, если вы попытаетесь скопировать файл, к которому у вас нет прав на чтение, Finder потребует от вас аутентификации перед копированием файла. Команда sudo является еще одним примером этого - она позволяет администраторам временно рекламировать себя как root.

Обычный пользователь: никаких специальных привилегий, не разрешается связываться с (большинством) общесистемных настроек или обходить ограничения доступа.

Существует также своего рода четвертая категория: управляемые учетные записи - это стандартные учетные записи, к которым применен "родительский контроль".

1

У меня нет Mac, но я пользователь Unix. Нет, вы не единственный пользователь, вы работаете как обычный пользователь из соображений безопасности. Представьте, что вы скачали зараженную программу и запустите ее от имени администратора, возможно, вся ваша система повреждена. Но если вы запускаете его как обычный пользователь, может быть заражен только ваш домашний каталог, а не вся система.

Это также препятствует выполнению некоторых опасных задач по ошибке (например, rm -rf /*, это удалит все файлы на вашем жестком диске, даже систему).

Вы можете использовать суперпользователя для ежедневного использования, но это крайне не рекомендуется.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .