X11轉發

摘要: 有些時候,有些程序可能需要依賴圖形界面才能啓動,例如安裝Oracle時(其實oracle支持命令行安裝),例如需要啓動一個圖形界面的瀏覽器如firefox。作爲服務端的系統,通常不會安裝臃腫的圖形界面。那麼如何在不安裝圖形界面的的情況下啓動圖形界面的?聽起來很矛盾,但是實際上是可行的。 X Win

有些時候,有些程序可能需要依賴圖形界面才能啓動,例如安裝Oracle時(其實oracle支持命令行安裝),例如需要啓動一個圖形界面的瀏覽器如firefox。
作爲服務端的系統,通常不會安裝臃腫的圖形界面。
那麼如何在不安裝圖形界面的的情況下啓動圖形界面的?聽起來很矛盾,但是實際上是可行的。


X Window System(常被簡稱爲X11或X),是一套基於X display protocol的windowing system,X GUI環境的功能包括窗口的繪製、移動,以及與鼠標、鍵盤等輸入設備的交互。

X採用C/S模型(這是關鍵):一個X server 和多個應用程序(client)通信。server接收client的請求繪製窗口,並將來自鼠標、鍵盤等設備的輸入傳遞給client。
因此 X server和client可以位於同一計算機上,例如在Linux主機上使用KDE等桌面環境就是這種模式。X server也可以通過同構網絡、異構網絡或Internet與client通信。
X server與client之間的通信是不加密的,這個問題可以通過SSH解決。SSH是Secure Shell的簡稱,SSH可以看作是通信被加密壓縮版的telnet。
需要用到SSH的forwarding功能,當X server與client所在計算機都支持SSH協議時,X server與client之間不安全的TCP/IP連接可以轉送到(forwarding)二者之間建立的SSH連接上。

瞭解原理後,我們就可以在本地自建X服務,然後服務器作爲X client,把繪圖的請求發給本地的X server。 這樣就實現了本地顯示圖像的目的。
 

例子, 以本地爲Windows爲例,使用ssh連接到服務器, 把服務器的X請求轉發到本地的 X server。
簡單的幾個步驟即可
.1. 配置服務器的sshd,重啓服務

# vi /etc/ssh/sshd_config
X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost yes

# service sshd restart

.2. 在windows主機安裝Xming, 啓動X server

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章