金融系統大都采用Unix 作為操作系統,因為它是真正的多用戶、多任務的操作系統。在Unix系統下,通過多用戶卡可同時連接數個圖形字符終端,且使用的字符界面速度極快,多個櫃員可同時完成相同的工作。我行一應用系統,其運行環境與以上描述相同,系統要求必須安裝多用戶卡,多用戶卡安裝正常後其端口設備名稱為tty21a、tty21b…,櫃員只有在系統正確配置參數的指定端口tty21a 、tty21b等後上才能工作。這種做法在一定程度上加強了應用系統的安全性,防止了其他端口(包括控制台、虛擬端口)進行非法操作;但另一方面又有它的局限性,如果該機器上多用戶卡出現故障,將無法進行帳務處理。如何解決?以下是將端口設備tty1a改造成tty21a 的辦法。
這台業務機器有兩個COM口(COM1和COM2),可分別連接一台終端。系統在啟動時,會為每個端口啟動一個後台系統進程getty ,該進程自始至終都存在。
啟動系統初始化進程腳本文件/etc/initatb,其格式如下。
CODE: id:rstate:action:processid 唯一標識號
rstate 該進程運行的級別
action 關鍵字
Process 執行的命令名及參數
使用PS 命令會看到類似如下的進程信息:
CODE: root 424 1 0 14:20:08 tty03 00:00:00 /etc/getty tty03 sc_m
root 425 1 0 14:20:08 tty04 00:00:00 /etc/getty tty04 sc_m
root 426 1 0 14:20:08 tty05 00:00:00 /etc/getty tty05 sc_m
root 427 1 0 14:20:08 tty06 00:00:00 /etc/getty tty06 sc_m
root 435 1 0 14:20:08 tty21a 00:00:00 /etc/getty tty21a m為了讓該tty21a 能正常工作,還需要將/etc/inittab 文件中的下列信息行
CODE: Se1a:234:respawn:/etc/getty tty1a m更改為
CODE: Se1a:234:respawn:/etc/getty tty21a m再重新啟動機器,系統將會為tty21a 啟動getty後台進程。至此,我們將tty1a 改造為tty21a ,端口工作正常。在終端控制登錄數據庫文件中/etc/auth/system/ttys 將會有tty21a 端口登錄信息。
為了使該配置在系統重構核心後仍然有效,還需要更改/etc/conf/init.d/sio,通過vi命令對sio 文件進行修改。將
CODE: Se1a:234:respawn:/etc/getty tty1a m更改為
CODE: Se1a:234:respawn:/etc/getty tty21a m/etc/conf/cf.d/init.base 為操作系統inittab 內容(也是缺省的inittab)。
/etc/conf/init.d/ 為系統中增加模塊以及設備的inittab內容。
當系統重構核心時,idmkinit 將根據/etc/conf/cf.d/init.base 、/etc/conf/init.d/ 自動合並並重寫產生/etc/inittab 文件,如果不對,系統重構後所有的設置將還原,在/etc/inittab文件中將會再次出現Se1a:234:respawn:/etc/getty tty1a m,而此時tty1a已不存在, 端口會出現異常。