Linux下遠端連線windows,執行命令
演示:
在Linux上遠端登入winodws,執行java程式。
實驗環境:
主機:win7x64 + WMare9.0
兩臺在WMare9.0上的虛擬機器。
虛擬機器A:初始安裝的win7x64
虛擬機器B:ubuntu-13.04-desktop-amd64
注意:
虛擬機器A與虛擬機器B需要以橋接的方式接在主機上。
(更多虛擬機器連結方式見:http://www.slyar.com/blog/vmware-bridged-nat-hostonly.html)
虛擬機器部署好之後,IP分配如下(實際情況可能不同):
主機IP:192.168.1.100
虛擬機器A:192.168.1.105
虛擬機器B:192.168.1.106
windows虛擬機器A上配置環境:
1,安裝telnet客戶端和伺服器端。
win7出於安全性考慮,預設是關閉了telnet的。所以需要手動開啟。
控制面板>>程式>>開啟或關閉windows應用程式,勾選telnet客戶端和伺服器。
2,配置telnet使用者許可權
可以選擇新建一個帳戶做為telent的帳號。
在這裡我就是用管理員來配置許可權。
win+R>>輸入compmgmt.msc>>呼叫計算機管理>>進入本地使用者和組>>組
選中TelnetClients>>新增到組>>新增>>高階>>立即查詢>>先中Administrator點選確定。
3,開啟Telnet服務。
預設安裝好Telnet服務後,telnet服務是關閉的。需要手動的開啟。
win+R>>輸入services.msc>>找到Telnet>>調整到自動>>啟動>>確定。
4,測試是否安裝成功
在主機上,開啟命令列,輸入telnet [虛擬機器A的IP]。
安提示輸入帳號,密碼。正常,登入成功後會顯示下面第四張圖。
就算是測試成功了。
windows虛擬機器A上的準備工作
1,寫一個簡單的Hello world放桌面上。(之前需要安裝jdk,配置java環境變數)
2,試下能不能執行。
虛擬機器B不需要準備工作,直接進入正題。
1,開啟終端啟動telnet命令,輸入帳號,密碼。
2,進入虛擬機器桌面目錄
3,編譯Demo.java
4,執行Demo
直接看圖:
由於字符集問題,出現了亂碼。
cd :進入目錄
dir:列出當前目錄的檔案
終端上正常顯示了Demo的輸出,呼叫成功。
總結:
1,原理上就是它們共同遵循telnet協議,有共同語言,可以相與溝通。
2,虛擬機器是獨立,平等的,但它們都是有著很多許可權控制。
3,這個是演示,可以根據實際工作中的複雜程度,用python寫一個指令碼,完成相應的工作。
(python封裝了一個telnet類,直接登入telnet。詳見https://docs.python.org/2/library/telnetlib.html)
4,這種基礎功能,有很多高效的工具可以替代。可能蘊藏在某個你未發現的角落。