Использование sudo для доступа к другой учетной записи на одной машине

Есть две учетные записи unix A и B Я хочу выполнить команду unix из учетной записи B , чтобы команда вела себя так, как если бы она была выполнена из учетной записи A Как я могу это сделать?

Проблема здесь в том, что я могу предоставить привилегии команде, чтобы она выполнялась как владелец учетной записи A но выполнялась из учетной записи B Можно ли это сделать с помощью sudo ? Это похоже на что-то вроде команды passwd которая при запуске из любой учетной записи может изменять файл /etc/passwd которого есть root как владелец.

  • Невозможно добавить пользователя в файл sudoers
  • запускать команду как другого пользователя с доступными разрешениями sudo
  • Как мы можем разрешить пользователям без полномочий root управлять сервисом system.d?
  • Как создать пользователя sudo, который не может удалить меня?
  • Как ограничить административные привилегии различными файлами конфигурации?
  • как передать переменную среды в sudo su
  • Операторы печати в реальном времени с тройником в интерактивном скрипте
  • SUID случайно удален из файла / bin / su
  • One Solution collect form web for “Использование sudo для доступа к другой учетной записи на одной машине”

    Вы делаете это, редактируя /etc/sudoers . Вы должны использовать команду visudo для редактирования этого файла. visudo откроет редактор, который позволяет редактировать файл, а затем проверять наличие ошибок перед его сохранением. Ручное редактирование /etc/sudoers может привести к /etc/sudoers вашей системы.

    В зависимости от того, что именно вы хотите сделать, добавьте пользовательские спецификации в файл.

    B может выполнять cp , mv и rm как A:

     B ALL = (A) cp, mv, rm 

    B может запускать все как A:

     B ALL = (A) ALL 

    То же самое без пароля:

     B ALL = (A) NOPASSWD: ALL 

    Посмотрите на man sudoers узнать больше.

    Linux и Unix - лучшая ОС в мире.