По сути, я написал скрипт, который перезагружает сервер с использованием python и библиотеки SSH под названием paramiko. Мой сценарий выполняется должным образом, но я не знаю, действительно ли он перезагружает сервер, потому что сервер находится на месте в офисе. Есть ли способ, где я могу напечатать и вывести «доказательство», что сервер на самом деле перезагружается? Я немного новичок в использовании python для передачи команд сетевым устройствам с использованием SSH.
Я действительно запустил свой код, и он работает так, как должен, но я не проверял, действительно ли сервер включается и выключается.
Нет необходимости копировать и вставлять весь мой код, но есть две очень важные функции:
def connectToSSH(deviceIP, deviceUsername, devicePassword):
ssh_port = 22
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(deviceIP, ssh_port, deviceUsername, devicePassword)
time.sleep(5)
return ssh
def reboot_server(ssh):
prompt = raw_input('Are you sure you want to reboot this server ?')
if prompt.lower() == 'y' or prompt.lower() == 'n':
print('Proceeding to reboot the switch\n')
else:
print('Proceeding to exit the program\n')
sys.exit(-1)
channel = ssh.invoke_shell()
ssh.exec_command("/sbin/reboot -f > /dev/null 2>&1 &") # executes command to reboot server , is this the right command ? I found this on another stackOverflow post ?
channel.close()
print("Please wait for server to be rebooted")
Я не получаю ошибок компиляции, но хочу убедиться, что команда:
ssh.exec_command("/sbin/reboot -f > /dev/null 2>&1 &")
фактически перезагружает сервер. Если это так, могу ли я напечатать / вывести доказательство того, что он перезагружается? Если да, то как мне это сделать?