sudo
позволяет выполнять команды с правами суперпользователя (root). Root – это пользователь, который имеет полный контроль над системой. Обычно, вы не можете выполнять команды, требующие прав root, без использования sudo
.
Зачем нужно sudo?
Представьте, что вы хотите установить какое-то новое программное обеспечение. Для этого часто требуются права администратора. Использование sudo позволяет сделать это, не входить в систему под учетной записью root, что гораздо безопаснее.
Как использовать sudo?
- Синтаксис:
sudo команда
- Например:
sudo apt update
(Обновляет список доступных пакетов в Ubuntu)
- Например:
- Запрос пароля: Когда вы используете sudo, система запросит ваш обычный пароль пользователя. После ввода пароля, команда будет выполнена с правами root.
- Примеры:
sudo apt install <название_пакета>
- Установить пакет из репозитория.sudo reboot
- Перезагрузить компьютер.sudo nano /etc/hosts
- Открыть файл/etc/hosts
в текстовом редакторе (nano).sudo shutdown -h now
- Выключить компьютер.
Почему не стоит работать из под root?
Может возникнуть закономерный вопрос, зачем использовать команду sudo
, если можно работать из под пользователя root?
Работа под пользователем root напрямую в Linux – это, как правило, не лучшая практика. Используйте root для выполнения задач, требующих административных прав, и всегда будьте осторожны и внимательны при выполнении команд.
Риски работы под root
- Ошибки с разрушительными последствиями: Когда вы работаете под root, вы имеете полный контроль над системой. Одна ошибка в команде, особенно если вы не понимаете её полностью, может привести к серьезным повреждениям системы.
- Недостаточная изоляция: Если у выс будет проблема с командной строкой или программами, работающими под root, будет очень сложно восстановить систему, если вы не знаете, что именно стало причиной проблемы.
- Уязвимости безопасности: Использование root без особых причин повышает вероятность того, что злоумышленник сможет получить контроль над системой, если у него будет возможность проникнуть в систему.
su (substitute user)
Команда su
в Linux позволяет временно "переключиться" на другого пользователя, обладая его правами.
Ключевые моменты
su
- это временная замена пользователя. Когда вы выйдете из сессии (exit
), вы вернетесь к своему обычному пользователю. В отличие отsudo
,su
требует знать пароль другого пользователя.su -
- Используется для полноценной имитации пользователя, включая загрузку его переменных окружения.
Когда использовать su?
- Для отладки и тестирования программ, требующих доступа к другим пользователям.
- В ситуациях, когда вам действительно нужно работать как другой пользователь.
Примеры
su root
- переключение на пользователя root (Осторожно!)su - root
- эта команда не просто меняет пользователя, но и загружает его окружение (переменные, настройки shell) для полноценной имитации этого пользователя.exit
- вернуться к своему обычному пользователю