Я могу подключиться к серверу ssh с помощью модуля подпроцесса, но у меня проблемы с переключением пользователя в root (su -).
Мое намерение состоит в том, чтобы:
1) Войдите на удаленный сервер как обычный пользователь
2) Переключиться на пользователя root с помощью su -
3) Запустите команду dmidecode и получите вывод
На приведенном выше шаге я могу выполнить шаг 1), но проблемы с 2) и 3)
Вот код, который я использую:
import subprocess
import sys
HOST="server.com"
COMMAND="uname -a"
ssh = subprocess.Popen(["ssh", "%s" % HOST, COMMAND],
shell=False,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
result = ssh.stdout.readlines()
if result == []:
error = ssh.stderr.readlines()
print(error)
else:
print(result)