特約撰稿人|劉天偉
隨著互聯網的發展和物聯網的出現,遠程控制的需求和應用越來越多。Raspberry Pi(樹莓派)作為一種低成本、卡片式微型主機通常會用于特定的工作場景,以降低成本并減少對空間和環境的要求。本文將通過對樹莓派的研究和配置,使其在某一局域網中完成中轉任務,并對網絡進行遠程控制。
考慮到功耗、系統處理速度等問題,本研究所使用的樹莓派是2017年的版本,同時也是最新版——Raspberry Pi 3b+。它繼承了前幾代的優點,集成了Wi-Fi模塊以及增加了散熱片。
全新的樹莓派沒有自帶系統,需要重新燒錄系統。其官網提供基于Debian的Raspbian系統,用戶只需選擇默認的選項并下載。燒錄過程很簡單,使用Win32disk imager軟件在Windows系統下燒錄系統進格式化后的SD卡就可以。插上SD卡、電源和HDMI連接顯示器,樹莓派就可以自動讀取SD卡內的系統并完成開機。
開機進入的桌面是Debian系統默認的可視化桌面,在系統里集成了終端、設置等基礎功能。下一步就是實現其遠程桌面控制功能。如果使用計算機作為中轉,這個功能可以通過安裝TeamViewer軟件完成。下一步是在樹莓派里安裝TeamViewer軟件。因為這個軟件在官網上的Linux版本是基于x86處理器的,所以安裝基于ARM的TeamViewer需要用終端實現。但是終端默認的軟件源服務器安裝在國外,故而需要先進行換源。存放軟件源鏈接的文件是系統文件,不能直接進行編輯,仍然用終端完成。使用的命令是nano—— 一個允許在終端內直接對系統文件進行修改的命令。
在進行下一步安裝軟件之前,需要先檢查升級:打開終端,并用sudo get update和sudo get upgrade升級,確認系統軟件升級完畢。在安裝TeamViewer之前,還要安裝一個環境配置軟件gdebi。
然而,TeamViewer獨立運行并不能實現所有的需求,它只提供了通過互聯網遠程連接樹莓派的作用,而不是通過樹莓派連接到位于內網的主機上。但Windows系統自帶的遠程桌面功能可以實現內網連接,原生的rdp協議不僅穩定性強還可以穿透防火墻。樹莓派是不支持遠程桌面的,仍然需要通過安裝軟件實現此功能。在這次研究中選擇的軟件是x2go client,它的好處是集成在了樹莓派的開源軟件庫,可以直接通過sudo apt-get install x2go安裝。安裝完成后,運行軟件,點擊左上角增加新的連接,因為用的是Windows默認的遠程桌面連接方法,所以不需要配置文件。
輸入要登錄的Windows主機的IP地址,x2go會自己建立一個連接到這個計算機的選項,雙擊該選項并輸入登錄用戶名和密碼即可連接到局域網內的另一臺主機。經過測試發現,由互聯網上的計算機用TeamViewer連接樹莓派,并通過遠程連接操控樹莓派打開x2go并連接局域網內的主機是可行的。
新的問題出現了,樹莓派和監控用主機可以通過局域網連接,但是一般在遠程的機房或設備節點并不存在WLAN連接。這里介紹一種方法是為樹莓派安裝并配置4G網卡實現連接互聯網功能。此研究中使用的4G網卡是一個不支持Linux驅動的第三方網卡,所以撥號等要手動配置才能激活。首先,需要安裝一個第三方的撥號軟件wvdial。其次,在此軟件的底層文件/etc/wvdial.conf內增加該網卡的配置文件(這個文件是網上公開的),并利用此配置文件撥號。運行撥號軟件可以看到配置完成的IP地址和DNS服務器,試連接網絡可用。
最后,研究又測試了遠程桌面的可行性,發現可以通過4G網卡進行連接,而且樹莓派的資源占用不是很高,保持在60%~70%之間,在可接受范圍,但是存在刷新率和發熱問題。發熱問題可以通過貼散熱片來解決,但是刷新率問題是硬件上的,沒有好的解決方案,若僅是工程師對遠程操作進行故障處理,高刷新率的情況出現較少。
樹莓派采用Linux操作系統和命令行的方式進行操作控制,相比于Windows或Mac上的圖形界面控制的方式略顯困難。但它所涉及的命令和操作比較容易理解和掌握,為用戶深入理解Linux系統打開了一扇門。

圖 樹莓派硬件外觀