藍仁恩
【摘 要】本文描述了一種將Solaris應(yīng)用于顯示控制設(shè)備時的操作系統(tǒng)屏蔽方法。該方法可以使用戶除了顯示控制設(shè)備軟件外無法對操作系統(tǒng)進行其他的操作,可以很好的保證顯示控制設(shè)備的一致性和安全性。除顯示控制設(shè)備外,該方法還可以應(yīng)用于金融、通信等行業(yè)(如ATM機),具有較廣泛的應(yīng)用價值。
【關(guān)鍵詞】Solaris;操作系統(tǒng);屏蔽;顯示控制設(shè)備
中圖分類號: TP311.52 文獻標識碼: A 文章編號: 2095-2457(2018)17-0032-002
DOI:10.19694/j.cnki.issn2095-2457.2018.17.015
【Abstract】This paper describe a a modification method to Solaris system on display&dontrol; device.The method could only allow user to do specified works on the application software.And yet protect the integrity and safety of the device.
【Key words】Solaris system;Display&control; device
0 引言
Sun Solaris是一款搶占式多任務(wù)操作系統(tǒng),以其高效率、高可用性和高穩(wěn)定性著稱,目前廣泛用于金融、通信行業(yè)的高端設(shè)備中。在長期的實際應(yīng)用中,表現(xiàn)出良好的安全性、穩(wěn)定性。包括顯示控制設(shè)備在內(nèi)的多種設(shè)備均選用了Solaris操作系統(tǒng)作為其運行平臺。
通常情況下,Solaris操作系統(tǒng)默認會啟動登錄服務(wù)器來顯示一個圖形界面讓用戶登錄,登錄后會根據(jù)用戶的選擇進入CDE(公共桌面環(huán)境, Common Desktop Environment)或GNOME(Gnu網(wǎng)絡(luò)對象管理環(huán)境,Gnu Network Object Management Environment)桌面環(huán)境。一旦用戶選擇進入了該桌面環(huán)境,就可以通過桌面上的圖標或右鍵菜單等方式做出對系統(tǒng)配置修改、刪除系統(tǒng)文件等操作。
但是,顯示控制設(shè)備是一個整體的設(shè)備,而不僅僅是一個運行于Solaris操作系統(tǒng)上的軟件。也就是說,顯示控制設(shè)備軟件希望擁有對整個設(shè)備的絕對控制權(quán),即整個操作系統(tǒng)只能運行顯示控制設(shè)備軟件,設(shè)備開機則直接顯示顯示控制設(shè)備軟件的登錄界面,退出顯示控制設(shè)備軟件則設(shè)備自動關(guān)機。我們需要實現(xiàn)的就是對用戶盡可能地屏蔽Solaris操作系統(tǒng)的操作界面。這樣就可以防止因為用戶誤操作而破壞系統(tǒng)文件,因為插入外部存儲器而導(dǎo)致感染病毒,保證顯示控制設(shè)備穩(wěn)定、可靠的工作。
本文就上述問題,提出了一種可行的Solaris系統(tǒng)配置的改造方法,以滿足顯示控制設(shè)備的需求。在本文中,我們假設(shè)運行顯示控制設(shè)備軟件的用戶名為xktuser,顯示控制設(shè)備軟件的可執(zhí)行文件名為startxkt。
1 待解決的問題
要實現(xiàn)上述需求,我們面臨以下幾個問題:
(1)如何禁止操作系統(tǒng)自動進入默認的登錄界面
(2)如何從文本界面啟動XServer而進入圖形模式
(3)如何完全屏蔽CDE的前面板和右鍵菜單
(4)如何自動運行顯示控制設(shè)備軟件
(5)如何在顯示控制設(shè)備軟件退出時關(guān)閉XServer
(6)如何讓以上修改步驟在操作系統(tǒng)啟動時自動完成
下面針對這些問題,提出可行的改造方法。
1.1 禁止系統(tǒng)自動進入圖形界面
以root身份執(zhí)行dtconfig命令,此命令將在系統(tǒng)引導(dǎo)時禁止登錄服務(wù)器啟動,下一次系統(tǒng)啟動時就不會顯示系統(tǒng)默認的登錄界面,而是直接進入文本界面模式。
1.2 啟動圖形界面
上文所描述的命令實現(xiàn)了屏蔽系統(tǒng)默認的登錄界面,但是卻使得系統(tǒng)進入了文本模式,而顯示控制設(shè)備軟件卻是要工作在圖形模式下的,所以我們需要啟動Xserver和一個窗口管理器。在文本模式下完成此任務(wù)可以使用xinit這一命令會啟動Xserver,同時通過Xsession腳本啟動了CDE的會話管理器,也就是完全啟動了CDE桌面環(huán)境。此時桌面上的前面板和右鍵菜單都可以使用。
1.3 禁用前面板和右鍵菜單
禁用前面板可以通過設(shè)置X資源來實現(xiàn),即在用戶根目錄下的.Xdefaults文件中加入
禁用右鍵菜單和禁用前面板的內(nèi)容,則在桌面上點擊右鍵也不會出現(xiàn)菜單了。
1.4 自動執(zhí)行顯示控制設(shè)備軟件
系統(tǒng)登錄進CDE后會自動執(zhí)行一個腳本,該文件是shell腳本,而且必須具有執(zhí)行許可權(quán)限。在通常的應(yīng)用中,腳本中自動執(zhí)行的程序應(yīng)該在后臺運行,以不影響系統(tǒng)的正常啟動。但是,由于我們現(xiàn)在希望系統(tǒng)在前臺只運行需要運行的軟件,將其他可以在前臺運行的軟件全部屏蔽掉,所以在這個腳本中我們在前臺運行特定軟件。
1.5 軟件退出時同時關(guān)閉Xserver
在顯示控制設(shè)備軟件退出時,我們同時需要關(guān)閉計算機。但是顯示控制設(shè)備軟件以普通用戶權(quán)限運行,不具備關(guān)機權(quán)限,所以我們所能做的也僅僅是使Xserver退出。這里需要取得Xserver的進程ID號,然后使用kill終止其線程。就相當(dāng)于執(zhí)行了kill這條指令,于是就可以使Xserver進程終止。
1.6 在系統(tǒng)啟動時運行
我們希望顯示控制設(shè)備軟件在系統(tǒng)啟動時運行,可以在系統(tǒng)啟動腳本目錄中創(chuàng)建一個以S開頭的shell腳本。系統(tǒng)啟動的時候,這個目錄中以S開頭的腳本會按照字典順序,以root用戶權(quán)限運行。
2 系統(tǒng)改造方法實現(xiàn)
綜上所述,要實現(xiàn)Solaris操作系統(tǒng)的屏蔽,可以通過以下4個步驟來實現(xiàn)。
(1)禁止系統(tǒng)自動進入圖形界面。
(2)禁用前面板和右鍵菜單。
(3)創(chuàng)建特定的軟件啟動腳本。
(4)創(chuàng)建軟件退出時自動關(guān)閉Xserver的腳本。
(5)設(shè)置在系統(tǒng)啟動時運行特定軟件腳本,并且軟件退出時自動關(guān)機。
3 結(jié)論
本文闡述了通過修改配置文件和添加部分腳本來將Solaris應(yīng)用于像顯示控制設(shè)備這樣的專用設(shè)備的方法。該方法還可以應(yīng)用于金融、通信等行業(yè)(如ATM機),具有較廣泛的應(yīng)用價值。
【參考文獻】
[1]Sun microsystems. Solaris公用桌面環(huán)境:高級用戶和系統(tǒng)管理員指南.
[2]Cameron Newham.Learning the bash Shell, 3rd Edition. OReilly 2005.