Дайте пароль пользователя в терминале через аргумент

Я создал приложение Python в своей машине Ubuntu который команды выполнения к терминалу. Я хотел бы, когда программа начинает продолжать работать как корень. Я знаю, что для получения корневого терминала мы используем следующую команду:

sudo -i

затем оболочка просит, чтобы мы ввели нашу передачу и когда мы делаем это, у нас есть корень в течение того терминального сезона, пока мы не вводим

exit

Но я могу установить параметр передачи хотя аргумент? Таким образом, терминал не запросит, 'дают передачу' строка? Другой вопрос состоит в том, когда я использую живой usb, и я хочу работать sudo -i для получения прав пользователя root, я должен ввести передачу или нет?

0
задан 30 July 2015 в 15:47

2 ответа

Просто запустите свою команду с sudo права:

sudo your_python_script

И НИКОГДА не используют Ваш пароль в параметре.

1
ответ дан 1 October 2019 в 05:54

Во-первых я не знаю, корректна ли логика с моей опцией, но она, конечно, работает.

Первый Вы создаете rsa pub ключ с помощью команды:

ssh-keygen -t rsa

Затем копия и добавляют ключ паба к .ssh/authorized_keys из root при помощи команды:

ssh-copy-id root@<your ip>

После этого, когда Вы пробуете ssh root@<your ip>, это не запросит пароль root, и Вы сможете получить корневую подсказку.

, Например, если Вы хотите выполнить сценарий оболочки, run.sh в /opt каталог, поскольку корень, от Вашего входа в систему, не запрашивая пароль пробует это:

ssh -X root@<your ip> "sh /opt/run.sh"

'-X' опция используется для установки $DISPLAY для корня.

Hope эта идея помогает.

0
ответ дан 1 October 2019 в 05:54

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

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