Судо Су автоматический вход

Я хочу автоматизировать процесс входа в систему с помощью sudo su . Я видел много вопросов по этим вопросам, но никто из них не работает для меня.

Автоматизация входа в систему с помощью sudo и su

  • Какой ваш любимый графический редактор GUI / CLI скрипта и почему?
  • bash выполнить команду чтения из файла
  • Конец сеанса, если команда выхода выполняется параллельно с другой командой
  • перенаправление вывода работы фонового задания в bash
  • Чтение файла Microsoft Excel
  • Bash: экранированные кавычки в подоболочке
  • Вот мое, что я пробовал до сих пор

     echo "mypassword" | sudo -S su - user echo "mypassword\n" | sudo -S su - user echo mypassword | sudo -S su - user echo "mypassword" | sudo -S su user echo mypassword | sudo -S su user 

    Я просто получаю ответ ниже

     -bash: line 1: mypassword: command not found 

    Моя версия Bash

     GNU bash, version 4.1.2(1)-release (x86_64-redhat-linux-gnu) Copyright (C) 2009 Free Software Foundation, Inc. 

    В качестве примечания, мой пароль содержит специальный символ @

     @ sudo usage: sudo [-D level] -h | -K | -k | -V usage: sudo -v [-AknS] [-D level] [-g groupname|#gid] [-p prompt] [-u user name|#uid] usage: sudo -l[l] [-AknS] [-D level] [-g groupname|#gid] [-p prompt] [-U user name] [-u user name|#uid] [-g groupname|#gid] [command] usage: sudo [-AbEHknPS] [-r role] [-t type] [-C fd] [-D level] [-g groupname|#gid] [-p prompt] [-u user name|#uid] [-g groupname|#gid] [VAR=value] [-i|-s] [<command>] usage: sudo -e [-AknS] [-r role] [-t type] [-C fd] [-D level] [-g groupname|#gid] [-p prompt] [-u user name|#uid] file ... 

  • неудача перенаправления для программы CGI
  • Защищенные паролем zip-архивы открываются без пароля
  • сокращение для подачи содержимого нескольких файлов в stdin скрипта
  • Разница между выполнением нескольких команд с && и;
  • Bash - как сделать явный приоритет оператора без создания подоболочки
  • Фильтрация элементов из массива на основе ввода с помощью шаблона
  • 2 Solutions collect form web for “Судо Су автоматический вход”

    Не делай этого! Это оставит ваш пароль в истории вашей оболочки!

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

    Для этого запустите команду sudo visudo и добавьте строку, подобную этой:

     reddy ALL=NOPASSWD: /bin/su - * 

    (где reddy будет вашим именем пользователя).

    Если вам нужно предоставить этот доступ всей команде, создайте группу (UNIX) вместе с командой и замените reddy на %team (группа команд).

    (Кроме того, немного не по теме: команда echo уже добавляет \n вам нужно. Если вам действительно нужно противоположное (чего вы не знаете), команда будет echo -n .)

    Я согласен с Валмики, что вы делаете это неправильно, но линия sudoers не является тем, что я бы рекомендовал. С его линией вы все уполномочены судиться ни с кем другим, включая root без пароля. Это дает вам полный доступ к серверу, что означает, что часть /bin/su линии является избыточной.

    Если вы должны быть в состоянии только для этого конкретного пользователя, не указав свой пароль, правильная строка должна быть

     %team ALL = (user) NOPASSWD: ALL 

    Теперь вы можете запускать что-либо в качестве этого пользователя без указания пароля, в то время как, например, что-либо, требующее от вас права root, по-прежнему требует пароля.

    Теперь вы можете в своем .bashrc сделать

      sudo -u user /bin/bash 
    Linux и Unix - лучшая ОС в мире.