Почему я должен «судо»?

Я следил за несколькими учебниками по моему RPi, и многие команды начинаются с sudo; что это значит и что он делает?

11 голосов | спросил Alex Chamberlain 14 J0000006Europe/Moscow 2012, 15:39:29

2 ответа


20

sudo означает Super User Do; он позволяет запускаться как другой пользователь, обычно суперпользователь (root), для выполнения административных задач, таких как обновление программного обеспечения, изменение файловых систем и запуск демонов.

root обладает максимальной мощью и может работать практически во всем. Поэтому он может нанести большой урон вашей системе, и в худшем случае вам придется начать все заново.

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

Почему у нас есть sudo?

Из соображений безопасности обычные пользователи не могут делать все. Это предотвращает случайное выполнение каких-либо ошибок и предотвращает повреждение системы вредоносными пользователями.

Почему мы не подписываемся как root, когда хотим получить более высокие разрешения?

sudo позволяет администраторам контролировать, какие команды каждый пользователь может выполнять как root. Например, ваш администратор может разрешить вам запускать apt-get как root, но ничего больше. Кроме того, все команды, выполняемые через sudo, регистрируются в /var/log/auth.log.

Другие распределения

По умолчанию образ Debian имеет sudo, установленный заранее, но другие могут не работать. Вы можете часто устанавливать его с помощью диспетчера пакетов дистрибутивов или исследовать другие способы получения прав root.

Arch

Вы можете установить sudo с помощью pacman: запустите pacman -S sudo как root. Затем вы должны добавить нового пользователя и отключить учетную запись root.

су

В Arch Linux (и других дистрибутивах, которые его поддерживают) вы можете использовать команду su (заменять пользователя), чтобы принять личность любого другого пользователя (включая root)) , Это означает, что все ваши будущие команды (в текущем сеансе) будут иметь свои разрешения. Однако вам потребуется пароль, а команды, которые вы запускаете, не обязательно будут регистрироваться.

См. также:

ответил Alex Chamberlain 14 J0000006Europe/Moscow 2012, 15:39:29
2

Обычно вы используете его для выполнения определенной команды как пользователя root, а не вашего текущего пользователя. По соображениям безопасности норма в мире Linux для вашего основного пользователя имеет ограниченные привилегии и для вас, чтобы вы переключались на root, когда вам нужно что-то делать, у вас нет привилегий (например, установка пакетов.)

Корень немного похож на администратора в мире Windows - это ваш конечный пользователь «can-do-anything».

ответил berry120 14 J0000006Europe/Moscow 2012, 15:43:50

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132