Найти в Дзене
techone

Что такое sudo — и почему это магическое слово, без которого Linux не двигается

Первая команда, которую ты набираешь в Linux, когда что-то не работает?
Ну, конечно же: sudo apt install что_угодно И дальше — магия. Оно вдруг работает. Появляется доступ. Установка проходит. Ошибка исчезает. И ты такой: ну, спасибо, sudo, спас как всегда. А потом — затягивает. Уже ставишь sudo даже перед ls, «на всякий случай». Даже если не нужно. Просто потому что оно даёт ощущение власти. Как будто ты не просто пользователь, а уже почти root.
А это, поверь, ощущается. Короче, если коротко — sudo это такая вещь, которую ты сначала боишься, потом уважаешь, потом обожаешь, а потом — начинаешь использовать правильно.
Я расскажу, как у меня было. Потому что без sudo Linux — это как комп с родительским контролем: вроде работает, но не живёшь, а выживаешь. ✉️ Пишу каждый день про команды, фишки и автоматизацию без боли. Забирай первым — в Telegram Я помню момент: поставил себе ubuntu, впервые. Пытался установить VLC. Ввожу: apt install vlc И мне в ответ: «Permission denied». Окей. Пробу
Оглавление

Первая команда, которую ты набираешь в Linux, когда что-то не работает?
Ну, конечно же:

sudo apt install что_угодно

И дальше — магия. Оно вдруг работает. Появляется доступ. Установка проходит. Ошибка исчезает. И ты такой: ну, спасибо, sudo, спас как всегда.

А потом — затягивает. Уже ставишь sudo даже перед ls, «на всякий случай». Даже если не нужно. Просто потому что оно даёт ощущение власти. Как будто ты не просто пользователь, а уже почти root.

А это, поверь, ощущается.

Короче, если коротко — sudo это такая вещь, которую ты сначала боишься, потом уважаешь, потом обожаешь, а потом — начинаешь использовать правильно.

Я расскажу, как у меня было. Потому что без
sudo Linux — это как комп с родительским контролем: вроде работает, но не живёшь, а выживаешь.

✉️ Пишу каждый день про команды, фишки и автоматизацию без боли. Забирай первым — в Telegram

Было плохо: ничего не ставится, прав нет, всё запрещено

Я помню момент: поставил себе ubuntu, впервые. Пытался установить VLC. Ввожу:

apt install vlc

И мне в ответ: «Permission denied». Окей. Пробую снова. То же самое.

Психанул, пошёл гуглить. Везде пишут: добавь sudo. Добавил:

sudo apt install vlc

Запрос пароля. Ввожу.

Установка пошла. Успешно. Никаких ошибок. VLC запустился.
У меня в голове только одна мысль:

Что это было? Почему без sudo не работает, а с ним — всё плывёт?

И вот с этого момента я начал копать.

Что такое sudo вообще?

-2

Формально — это superuser do. То есть «выполни от имени суперпользователя».

В Linux (и вообще Unix-системах) у каждого действия есть уровень доступа. Удалить файл в своей папке — пожалуйста. Удалить системный файл — извините, вам сюда нельзя.

Так вот sudo — это ключ от всех дверей. Временный. На 5 минут. Только для конкретной команды.

И это, честно, очень крутая идея. Потому что в Windows ты либо админ всегда, либо неадмин никогда. А тут — ты обычный юзер, но если надо — говоришь:

«Я точно знаю, что делаю. Пожалуйста, откройте дверь. Только на секунду.»

Почему это реально важно

-3

Потому что без sudo ты не можешь:

  • Установить пакеты (apt, dnf, pacman, что угодно)
  • Править системные файлы (в /etc, /usr и прочих местах)
  • Перезапускать службы (systemctl restart и компания)
  • Обновлять ядро, драйвера, ядреные штуки

А теперь прикинь — ты сидишь на Linux, но ничего этого не можешь.

Это как жить в квартире, где ты не можешь поменять лампочку без разрешения от ЖЭКа.

Кстати

Если ты просто введёшь:

sudo

То он скажет: «а чё выполнять-то?» 😄

Потому что sudo — это не команда. Это
обёртка. Он запускает команду с правами суперпользователя.

Мой путь: от «добавлю везде» до «нужно — добавлю»

-4

Сначала я, как и все, начал ставить sudo перед каждой командой. Даже перед ls, cd, echo.
Типа:

sudo ls
sudo cd /etc
sudo echo "Hello"

И оно работало. Или — делало вид, что работает. Но в какой-то момент начались проблемы:

  • создавались файлы, которые потом нельзя было удалить без sudo
  • папки стали «принадлежать root’у», а не мне
  • npm install начал всё ставить в /usr/lib, и всё ломалось

И вот тут я понял: если ты используешь sudo не туда — ты себе сам роешь яму. Не сразу. Но глубоко.

🧠 Это часть рубрики про команды, которые кажутся простыми, а потом спасают тебе выходной. Следующая — будет жаркой. Подпишись на телегу, чтобы не проспать.

Где sudo реально нужен

Вот мой список:

  • sudo apt update && sudo apt upgrade — классика
  • sudo systemctl restart nginx — если ковыряешь сервер
  • sudo nano /etc/hosts — хочешь подменить IP
  • sudo mount /dev/sdb1 /mnt/usb — флешки, диски, всё подключаемое
  • sudo reboot — да, даже на перезагрузку нужны права

Где НЕ надо

Вот тут чаще всего косячат новички:

  • sudo cd /home — cd вообще не сработает через sudo, ты просто останешься там, где был
  • sudo ls — бессмысленно, если у тебя и так есть доступ
  • sudo echo "что-то" > /etc/файл — не сработает! echo исполняется как обычный юзер, а > — тоже. Чтобы сработало, нужно писать через tee:
echo "что-то" | sudo tee /etc/файл

🤯 Вот тут я реально офигел, когда впервые это увидел.

sudo ≠ root (но почти)

-5

Некоторые думают, что sudo делает тебя root-ом. Это не совсем так.

Он просто временно исполняет команду от имени root, но сам пользователь root — остаётся на месте.

Хочешь стать root-ом насовсем? Пиши:

sudo -i

И всё, ты теперь root до конца сессии. Но это опасно. Лучше — выполнять только конкретные команды.

Маленький баг, который чуть не убил систему

-6

Однажды я запустил скрипт от root, который делал chown -R на директорию с проектом. Всё было норм. А потом пошёл обедать. Оставил терминал открытым.

Через час возвращаюсь — проект работает через пень-колоду. Оказалось, все файлы, созданные в процессе, теперь принадлежат root.

И мне пришлось:

sudo chown -R $USER:$USER ./папка

Чтобы вернуть себе право править свои же файлы.

Так что теперь я думаю трижды, прежде чем дать скрипту sudo.

Вопрос: почему просто не войти как root?

Если простыми словами, то любой косяк — будет фатальным.

Случайно нажал Enter на rm -rf / — и привет.
(да, там есть защита, но root может её обойти)

sudo — это как страховка: «ты всё ещё обычный пользователь, но если очень надо — вот тебе пропуск на одну дверь». Закончишь — вернёшься обратно.

Прямо сейчас можешь попробовать

Если ты на Linux:

  1. Попробуй ls /root — скажет, доступа нет
  2. Теперь sudo ls /root — откроется
  3. Не забудь: cd /root через sudo не сработает (см. выше)
  4. Попробуй создать файл с sudo и без — и посмотри на права (ls -l)

Удивишься, как много sudo решает. И как много можно накосячить 😅

Короче

sudo — это не просто команда. Это переход между мирами. Из обычного пользователя — в администратора. Властелина. В бога своего терминала. 🧙‍♂️

Но и ответственность тоже растёт. Потому что один лишний sudo — и потом чистишь хвосты полдня.

Я теперь использую sudo осознанно. Как вино. Чуть-чуть — хорошо. Много — вредно.

🔧 В Telegram почти каждый день — такие же штуки: команды, трюки, фишки. Без воды. Присоединяйся.

Если тоже прожил путь "ставлю sudo везде" — напиши. Обнимемся.
Если только начинаешь — ничего страшного. Ошибки — часть пути.