Add new command "Change root password"

pull/3/head
remittor 3 years ago
parent 9895502618
commit b91743b569

@ -51,8 +51,8 @@ def menu1_process(id):
def menu2_show():
print(get_header('-', '(extended functions)'))
print(' 1 - Set default device IP-address')
print(' 2 - Read dmesg and syslog')
print(' 3 - ')
print(' 2 - Change root password')
print(' 3 - Read dmesg and syslog')
print(' 4 - Create a backup of the specified partition')
print(' 5 - Uninstall EN/RU languages')
print(' 6 - Set kernel boot address')
@ -63,8 +63,8 @@ def menu2_show():
def menu2_process(id):
if id == 1: return "set_def_ipaddr.by"
if id == 2: return "read_dmesg.py"
if id == 3: return None
if id == 2: return "passw.py"
if id == 3: return "read_dmesg.py"
if id == 4: return [ "create_backup.py", "part" ]
if id == 5: return [ "install_lang.py", "uninstall" ]
if id == 6: return "activate_boot.py"

@ -0,0 +1,32 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import os
import sys
import time
import platform
sys.path.append(os.path.dirname(os.path.abspath(__file__)))
import gateway
from gateway import die
gw = gateway.Gateway()
if len(sys.argv) > 1:
new_passw = sys.argv[1]
else:
new_passw = input("Enter new password for root user: ")
new_passw = new_passw.strip()
if len(new_passw) == 0:
die('Typed password is not correct!')
gw.run_cmd('echo -e "{new_passw}\\n{new_passw}" | passwd root'.format(new_passw = new_passw))
time.sleep(0.5)
gw.ssh_close()
if gw.check_ssh(gw.ip_addr, gw.ssh_port, new_passw) != 0:
die('Can\'t change password for root user via SSH')
gw.passw = new_passw
print("The root password has been changed.")
Loading…
Cancel
Save