Как я говорю сценарию оболочки свой пароль?

Я пытался создать сценарий, который работает sudo apt-get update и sudo apt-get autoremove каждый раз, когда я вхожу в систему. Это идет как это:

#!/bin/bash
(sudo apt-get update)
(sudo apt-get autoremove)

Но каждый раз, когда я запускаю скрипт, замораживает мой компьютер. Я предполагаю, что это - потому что это ожидает сценария для предоставления пароля. Это работало бы, если бы я добавил PASSWD:mypassword после команд как это:

#!/bin/bash
(sudo apt-get update)PASSWD:mypassword
(sudo apt-get autoremove)PASSWD:mypassword

или есть ли что-то еще, что я должен сделать? Существует ли даже путь? Раз так скажите мне!

6
задан 21 April 2015 в 11:08

3 ответа

Вы не должны на самом деле включать свой пароль в Ваш сценарий (от того, что я видел обычно не желательный, чтобы иметь Ваш пароль в сценарии). Вместо этого можно отредактировать sudoer файл для разрешения, Вы для выполнения Кв. - получаете команду без потребности в пароле.

Для получения дополнительной информации перейдите к этому веб-сайту.

откройте терминал (ctrl + высокий звук + T)

Введите команду

sudo visudo

В конце sudoers типа файла

username ALL=(ALL) NOPASSWD: /usr/bin/apt-get

Где имя пользователя является Вашим именем пользователя (очевидно),

редактирование этого файла позволит, Вы для выполнения любой Кв. - получаете команды, не вводя пароль. Это означает, что можно также установить или пакеты обновления, не вводя пароль.

Можно также добавить другие команды к этому списку путем ввода пути к команде после запятой. Путь к команде может быть найден путем ввода следующей команды в терминале.

which command

Где команда является названием команды (например, перезагрузка).

3
ответ дан 23 November 2019 в 08:09

Попробуйте этот сценарий:

#!/bin/bash
echo "yourpassword" | sudo -S apt-get update
echo "yourpassword" | sudo -S apt-get autoremove

Здесь, Вы повторяете свой пароль и чтение пароль с помощью-S опцию (stdin опция для sudo).

-1
ответ дан 23 November 2019 в 08:09

Команда для запуска сценария удара:

#!/bin/bash

Команда для просьбы пользовательский пароль root:

["$UID"-eq 0] || должностное лицо sudo колотят "$ "за 0$""

Команды в качестве примера того, что может быть следующим:

склонный - получают обновление

склонный - получают обновление - да

завершите работу-r теперь

Удача с Вашим сценарием

0
ответ дан 23 November 2019 в 08:09

Другие вопросы по тегам:

Похожие вопросы: