董一?王景德?昝文彬?陳建寧
摘要:地震資料處理、解釋工作中經(jīng)常需要同時使用Linux和Windows操作系統(tǒng)上運行的軟件。傳統(tǒng)的工作方式Linux操作系統(tǒng)生產(chǎn)工作站使用Windows操作系統(tǒng)辦公電腦的軟件只能通過兩臺獨立的主機來完成。使用Xmanager軟件完成辦公電腦遠程控制生產(chǎn)工作站的方式,加載數(shù)據(jù)量過大就會導(dǎo)致軟件崩潰等情況發(fā)生。通過對跨平臺協(xié)作軟件的研究,最終使用虛擬機軟件實現(xiàn)了在生產(chǎn)工作站上使用辦公電腦的軟件。使用VNC軟件實現(xiàn)了穩(wěn)定、高效的辦公電腦對生產(chǎn)工作站的遠程控制,極大地提高了工作效率。
關(guān)鍵詞:跨平臺協(xié)作;虛擬機技術(shù);VNC軟件
一、前言
地震資料處理、解釋工作中使用的專業(yè)軟件(如Geoeast、Omega等軟件)需要在Linux操作系統(tǒng)生產(chǎn)工作站上運行使用。同時,還有部分解釋軟件以及辦公類軟件需要在Windows操作系統(tǒng)辦公電腦上運行。在日常工作中,處理解釋工作人員常常需要同時使用兩種操作系統(tǒng)環(huán)境下的軟件,如果通過U盤、網(wǎng)絡(luò)傳輸?shù)确绞绞褂没ハ嗒毩⒌墓ぷ髡竞娃k公電腦來完成相關(guān)工作,效率低且使用起來極不方便。因此,針對跨Linux、Windows操作系統(tǒng)平臺的相關(guān)協(xié)作軟件的研究非常必要。
二、跨平臺協(xié)作軟件研究
(一)跨平臺協(xié)作軟件類型
跨平臺的協(xié)作軟件根據(jù)工作方式不同可以分為兩類:一類是虛擬機,虛擬機是虛擬化技術(shù)的一種,通過軟件模擬具有完整硬件系統(tǒng)功能的、運行在一個完全隔離環(huán)境中的完整計算機系統(tǒng)[1]。在實體計算機中能夠完成的大部分工作在虛擬機中都能夠?qū)崿F(xiàn),通過在Windows/Linux工作站上安裝另一種操作系統(tǒng),可以實現(xiàn)兩種操作系統(tǒng)同時使用,滿足相應(yīng)的工作需求。另一類是遠程控制軟件即一種基于網(wǎng)絡(luò)的、由一臺電腦(主控端 /客戶端)遠程控制另一臺或者多臺電腦(被控端/服務(wù)器端)的應(yīng)用軟件[2]。通過使用跨平臺協(xié)作軟件可以實現(xiàn)Linux、Windows平臺系統(tǒng)資源的共享。
(二)跨平臺協(xié)作軟件選擇
根據(jù)實際工作需求對兩類跨平臺協(xié)作軟件進行選擇。地震資料處理用戶在工作中使用的軟件均安裝在Linux集群上,需要對大量的數(shù)據(jù)進行運算,為了能夠高效、穩(wěn)定、安全地運行這些軟件,日常使用的生產(chǎn)工作站均為Linux系統(tǒng),但在工作中經(jīng)常需要使用Office等辦公軟件來完成匯報等工作。以往用戶需要將生產(chǎn)工作站上的截圖、相關(guān)文件通過U盤拷貝的方式導(dǎo)入另外一臺安裝Windows操作系統(tǒng)的辦公電腦、筆記本上來完成相應(yīng)工作。在生產(chǎn)工作站上查看Word、PPT等文件時,安裝在Linux系統(tǒng)下的辦公類軟件、中文輸入法很難滿足用戶的需求,只能在旁邊再放置一臺筆記本來完成相應(yīng)的工作。由于Windows是一種單用戶的操作系統(tǒng),若用戶通過遠程控制軟件實現(xiàn)生產(chǎn)工作站與辦公電腦的資源共享則等同于同時占用了兩臺機器的資源,而用戶的主要需求在辦公上,對服務(wù)器硬件資源要求并不高。通過對數(shù)據(jù)中心現(xiàn)有主要生產(chǎn)工作站硬件的研究,能夠在不影響生產(chǎn)工作的同時,在虛擬機中安裝Windows系統(tǒng)從而實現(xiàn)用戶在生產(chǎn)工作站下使用Windows軟件的需求。
需要在辦公電腦上使用生產(chǎn)工作站軟件資源的主要為地震資料解釋用戶。由于解釋用戶常常使用的卡奔、雙狐等軟件均必須在Windows系統(tǒng)下運行,在能夠正常使用這些軟件的前提下,用戶還希望在Windows機器下使用Linux系統(tǒng)中的專業(yè)軟件(如Geoeast軟件)。這些軟件需要占用大量的運算資源,同時還需要有軟件的許可證才能正常工作,因此,在辦公電腦上安裝Linux系統(tǒng)的虛擬機無法滿足使用需求。Linux是一種多用戶的操作系統(tǒng),能夠在同一臺生產(chǎn)工作站允許多個用戶使用資源。因此,使用遠程控制軟件通過辦公電腦遠程控制生產(chǎn)工作站,實現(xiàn)跨平臺資源共享是可行的。以往用戶使用Xmanager、Mobaxterm等軟件實現(xiàn)這一功能,這些軟件具有易于操作的優(yōu)點,在辦公電腦上安裝軟件即可遠程控制同一網(wǎng)絡(luò)下的生產(chǎn)工作站。但這些軟件也有缺點:當用戶加載數(shù)據(jù)量比較大的時候就會出現(xiàn)無法正常使用遠程控制軟件或者軟件崩潰的情況。通過大量的測試,最終選擇使用VNC軟件來完成辦公電腦對生產(chǎn)工作站的遠程控制。
三、跨平臺協(xié)作軟件技術(shù)研究
若想通過虛擬機遠程控制軟件實現(xiàn)同時使用生產(chǎn)工作站、辦公電腦的資源,需要對相應(yīng)的軟件進行安裝與配置。進行虛擬機選擇時,經(jīng)過開源性、功能性綜合測評最終選擇VirtualBox來實現(xiàn)生產(chǎn)工作站與辦公電腦的資源共享。進行遠程控制軟件選擇時,通過大量的測試,從跨平臺協(xié)作軟件與操作系統(tǒng)的匹配性、開源性、實用性等方面綜合考慮,最終在辦公電腦上安裝Tightvnc,在生產(chǎn)工作站上安裝Tigervnc實現(xiàn)Windows到Linux系統(tǒng)下軟件的跨平臺共享。
(一)在Linux操作系統(tǒng)生產(chǎn)工作站使用虛擬機軟件安裝Windows操作系統(tǒng)
地震資料處理用戶使用的生產(chǎn)工作站上并未運行生產(chǎn)軟件,用戶主要通過生產(chǎn)工作站登錄安裝軟件的集群進行工作。因此,生產(chǎn)工作站上的資源占用率并不是很高。目前根據(jù)Windows 10對硬件的最低配置要求(見表1),生產(chǎn)工作站能夠在不影響工作的前提下,滿足安裝Windows虛擬機的硬件要求。
確定生產(chǎn)工作站硬件滿足要求后,對虛擬機軟件進行選擇。從實用性、功能性、穩(wěn)定性以及與生產(chǎn)工作站操作系統(tǒng)匹配度等多方面綜合考慮,最終確定使用開源免費的虛擬機軟件VirtualBox來實現(xiàn)在生產(chǎn)工作站上使用Windows辦公的需求[3]。
根據(jù)虛擬機軟件在不同操作系統(tǒng)的安裝要求,對生產(chǎn)工作站的BIOS、軟件安裝環(huán)境進行配置。在生產(chǎn)工作站的BIOS中默認“Virtualization Technology”參數(shù)為關(guān)閉的,需要將其開啟才能正常使用虛擬機。
根據(jù)生產(chǎn)工作站的硬件配置,分配虛擬機資源如圖1所示。
對虛擬機進行系統(tǒng)配置,實現(xiàn)生產(chǎn)工作站與虛擬機之間的資源共享[4],如圖2所示。
通過對虛擬機Windows系統(tǒng)的安裝及配置,可以實現(xiàn)在一臺Linux生產(chǎn)工作站上啟動虛擬機,工作站及虛擬機之間的資源可以通過復(fù)制粘貼、共享盤完美的互通,實現(xiàn)了用戶急需的、在生產(chǎn)工作站上完成辦公操作的需求。
(二)Windows辦公電腦遠程控制Linux生產(chǎn)工作站技術(shù)
通過大量的實踐測試,最終選擇使用VNC軟件來實現(xiàn)辦公電腦遠程控制生產(chǎn)工作站,實現(xiàn)在同一臺機器上兩種操作系統(tǒng)資源的共享。VNC (Virtual Network Console)是虛擬網(wǎng)絡(luò)控制臺的縮寫,是一款強大的遠程控制工具軟件,支持Linux、Solaris、Windows等多種操作系統(tǒng)[5]。通過VNC軟件能夠?qū)崿F(xiàn)在Windows服務(wù)器上穩(wěn)定、便捷地使用Linux平臺上的資源。
VNC由兩部分組成:一部分是服務(wù)器端的應(yīng)用程序(vncserver);另外一部分是客戶端的應(yīng)用程序(vncviewer)。
1.生產(chǎn)工作站VNC軟件的安裝與配置
目前使用的生產(chǎn)工作站主要裝了RH AS7.6版本的操作系統(tǒng)。這個版本的系統(tǒng)在安裝系統(tǒng)界面中無法自行選擇安裝全部的安裝包。為了滿足工作需求,在安裝時選擇了Server with GUI環(huán)境。此時若需要使用VNC軟件需要手動安裝系統(tǒng)盤中的VNC軟件安裝包。
安裝后執(zhí)行以下命令
# rpm -qa|grep vnc
顯示VNC相關(guān)軟件的名稱即可證明VNC軟件安裝成功。
2.生產(chǎn)工作站VNC服務(wù)的配置
軟件安裝成功后需要對VNC服務(wù)器端進行配置。主要有兩種方式:手動方式和自動方式。
(1)手動方式
首先查看當前是否有開啟的VNC服務(wù)進程,是否有被占用的顯示窗口。其次根據(jù)當前使用的辦公電腦屏幕大小來配置VNC的桌面大小[6]。執(zhí)行以下命令啟動VNC服務(wù)器端進程。
# vncserver -geometry 1920x1200 :2
若當前用戶為第一次啟動VNC服務(wù),則會要求用戶設(shè)置一個使用VNC的密碼,并在用戶的home目錄下生成一個.vnc的文件夾,存放VNC的相關(guān)配置文件以及每次開啟后生成的log日志[7]。一臺服務(wù)器可以開啟多個VNC窗口,VNC窗口可以是同一個用戶開啟也可以是不同用戶使用。
執(zhí)行以下命令查看是否啟動VNC服務(wù)。
# ps -wef|grep vnc
若能查看到正確的VNC進程,即證明VNC服務(wù)開啟成功,可以使用VNC客戶端遠程控制當前生產(chǎn)工作站。
手動方式開啟VNC服務(wù)的優(yōu)點為可以靈活配置VNC服務(wù)。根據(jù)當前生產(chǎn)工作站資源占用情況靈活分配VNC窗口,缺點是重新啟動生產(chǎn)工作站后,VNC服務(wù)也需要重新配置。
(2)自動方式
若想實現(xiàn)開啟生產(chǎn)工作站自動配置VNC服務(wù),則需要對系統(tǒng)的VNC配置文件進行修改,并開啟相應(yīng)的進程。在RH AS7操作系統(tǒng)中使用systemd初始化進程服務(wù)代替了過去Linux操作系統(tǒng)system V中init運行級別的概念,因此,VNC服務(wù)的開機自啟動配置也與過去的Linux版本有所不同。
進入/etc/systemd/system目錄,將vncserver@:.service文件拷貝并重新命名為 vncserver@:
為用戶配置了桌面號為2的VNC服務(wù)。若從未開啟過vncserver,則通過手動方式第一次啟動vncserver,在用戶的home目錄下生成.vnc文件。通過配置.vnc文件夾中的config文件配置VNC桌面的大小。
執(zhí)行 systemctl enable vncserver@2.server實現(xiàn)開機自啟動服務(wù)。
自動方式配置完成后,生產(chǎn)服務(wù)器每次重新啟動時都會自動根據(jù)配置文件啟動vncserver。優(yōu)點是更加便捷,缺點為不能根據(jù)生產(chǎn)工作站當前資源占用情況靈活配置VNC服務(wù)。
3.VNC客戶端的應(yīng)用
生產(chǎn)工作站上的VNC服務(wù)配置完成后,需要在Windows系統(tǒng)的辦公電腦上安裝VNC客戶端才能正常使用VNC軟件進行Windows系統(tǒng)到Linux系統(tǒng)的遠程控制。通過大量測試(包括使用的穩(wěn)定性、流暢性)最終選擇在辦公電腦上安裝Tightvnc??蛻舳税惭b完成后,運行vncviewer軟件輸入VNC服務(wù)器端IP地址以及桌面號,將密碼填入即可安全穩(wěn)定地使用VNC軟件。
四、跨平臺協(xié)作軟件的應(yīng)用及效果
通過兩種跨平臺協(xié)作軟件——虛擬機VirtualBox及VNC軟件的應(yīng)用,實現(xiàn)了穩(wěn)定、高效的Windows辦公電腦及Linux生產(chǎn)工作站的協(xié)作。
(一)VirtualBox虛擬機軟件的應(yīng)用
通過對虛擬機軟件的安裝及配置,實現(xiàn)了生產(chǎn)工作站上同時使用Windows辦公軟件的需求。目前已應(yīng)用于10余臺生產(chǎn)工作站,Windows操作系統(tǒng)的虛擬機安裝了Office等辦公軟件,用戶在使用Linux生產(chǎn)工作站的同時能夠方便、快捷地完成辦公需求,優(yōu)化了資源,節(jié)省了設(shè)備投資,提高了生產(chǎn)效率。
(二)VNC軟件的應(yīng)用
通過對VNC軟件服務(wù)器端及客戶端的配置,實現(xiàn)了Windows辦公電腦啟動Linux生產(chǎn)工作站應(yīng)用軟件的功能,與傳統(tǒng)的方式相比,更加穩(wěn)定、易操作。以往使用Xmanager軟件加載過大的數(shù)據(jù)就會發(fā)生崩潰的現(xiàn)象,通過VNC軟件遠程控制Linux生產(chǎn)工作站在使用辦公電腦資源的同時,加載Xmanager無法承受的數(shù)據(jù)量也能穩(wěn)定運行。
五、結(jié)語
通過創(chuàng)新的思維對跨平臺協(xié)作軟件進行了深入研究,將其應(yīng)用于地震資料處理解釋生產(chǎn)中,安全、穩(wěn)定地實現(xiàn)了Windows辦公電腦與Linux生產(chǎn)工作站的資源共享,極大地提高了工作效率。這種技術(shù)方法可在同行業(yè)大規(guī)模數(shù)據(jù)中心中應(yīng)用,具有非常廣闊的推廣空間。
參考文獻
[1]吳志軍.嵌入式系統(tǒng)虛擬機技術(shù)研究[D].寧波:寧波大學(xué),2013.
[2]程夏衍.基于VNC協(xié)議的云視頻技術(shù)的研究與實現(xiàn)[D].成都:電子科技大學(xué),2016.
[3]顧武雄.Ubuntu VirtualBox虛擬機管理實戰(zhàn)[J].網(wǎng)絡(luò)安全和信息化,2020(05):95-103.
[4]曲亮.虛擬機技術(shù)在計算機機房管理中的應(yīng)用探討[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2022(03):131-132.
[5]占水娥.Windows遠程控制軟件的設(shè)計與應(yīng)用[D].南昌:江西財經(jīng)大學(xué),2018.
[6]劉毅,梁煒恒,邱志釗.基于VNC服務(wù)的變電站Linux系統(tǒng)遠程維護的應(yīng)用[J].機電信息,2021(29):20-21.
[7]鄧榮,黃菊.CentOS下VNC遠程訪問系統(tǒng)的部署與實現(xiàn)[J].信息與電腦(理論版),2014(24):132.
作者單位:董一、王景德、陳建寧,東方地球物理勘探有限責任公司大慶物探研究院;昝文彬,常州工學(xué)院計算機信息工程學(xué)院
責任編輯:張津平