[問題] telnet 自動登入並重開機

作者: shiyeh (shiyeh)   2015-05-11 13:32:07
HI 大家好
新手有些問題想請教
我想用python 寫一個自動登入並執行重開機的script
遇到幾個問題:
1. 遠端沒辦法登入,但我手動telnet是可以登入的
error message是說我被timeout了,但我不知道為什麼被timeout QQ
===== CODE =====
前面一些變數都已定義
global tel
prompt = '#'
username = 'root'
password = 'password'
tel.logfile_read = sys.stdout
tel.sendline ('\r')
tel.sendline ('\r')
tel.sendline ('\r')
tel.sendline ('\r')
tel.sendline ('\r')
tel.sendline ('\r')
tel.sendline ('\r')
tel.expect ('login:', timeout=700)
tel.sendline (username)
tel.expect ('Password:')
tel.sendline (password)
tel.expect (prompt)
2. 另外,如果註解掉 #tel.sendline ('\r') 這幾行
第一次可以登入並下指令重開機,但做第二次時,一樣被timeout
想不通哪裡有問題QQ
懇請各位先進相救...
作者: Neisseria (Neisseria)   2015-05-11 13:38:00
用 telnet 不太好吧,現在不是都用 ssh 了嗎?
作者: shiyeh (shiyeh)   2015-05-11 13:41:00
因為只是測試機器而已 所以加不加密不用考慮@@
作者: gh40402   2015-05-11 15:40:00
你要不要改用 read_until 試試啊https://docs.python.org/3.4/library/telnetlib.html官網底下有範例code就沒 expect 到 login: 吧... 你確定不是大寫L?喔 我錯了 是小寫l沒錯

Links booklink

Contact Us: admin [ a t ] ucptt.com