TGViewer
BashTex | Linux BashTex | Linux @bash_tex · 2.51K subscribers
Post #278 1.16K
Запуск команд от имени другого пользователя через su/sudo без пароля

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

от имени сервисного пользователя без логина;
в скриптах автоматизации;
при делегировании задач.

Используем sudo с NOPASSWD и su с передачей команды.

1️⃣ Способ: sudo без пароля. Для этого отредактируем sudoers через:


sudo visudo


Добавим строку:


myuser ALL=(targetuser) NOPASSWD: /usr/bin/systemctl restart my-service


Теперь можно запускать:


sudo -u targetuser /usr/bin/systemctl restart my-service


Или сразу выполнять произвольную команду:


sudo -u deployuser /home/deployuser/scripts/deploy.sh


2️⃣ Способ: su без пароля (через sudo-права). Если sudo уже доступен, можно делать:


sudo su - otheruser -c 'echo $HOME'


Это полезно, если нужна изоляция окружения (su - сбрасывает переменные).

▪️ Пример в скрипте:


#!/bin/bash

USER=deploy
CMD="/opt/app/update.sh"

sudo -u "$USER" bash -c "$CMD"


Обязательно ограничь sudo на конкретную команду в sudoers, чтобы избежать эскалации.

🌟 Безопасность:

📍 Не давай NOPASSWD на ALL!
📍 Всегда указывай полный путь к команде
📍 Используй visudo, чтобы не сломать конфигурацию

BashTex 📱 #bash #utils
  • 👍 11
More from @bash_tex
  1. Oct 12, 2026xargs против while read: где быстрее и безопаснее Обе конструкции позволяют обработать спи…
  2. Oct 9, 2026BashTex 📱 #мем
  3. Oct 8, 2026Bridge FDB - как Linux bridge узнаёт, где находится MAC Linux bridge не знает заранее, за…
  4. Oct 7, 2026/dev/tcp - сетевое соединение средствами Bash В Bash есть малоизвестная возможность работа…
  5. Oct 6, 2026Ephemeral ports - почему заканчиваются исходящие TCP-порты Когда приложение устанавливает…
  6. Oct 5, 2026name_to_handle_at() - как получить файловый объект без обычного пути В Linux обычно обраща…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →