pconsole: Version: 1.0-4
首先要設成 setuid 才能由一般 user 來跑。
必須在一開始就連到想要控制的電腦,無法在半途加入新的,但可以下指令將某一台電腦暫時離線或連接。內定是用 xterm 來開啟所有視窗,若不作修改,視窗及字型太小很難看,可設環境變數來達到功能。
- 代碼: 選擇全部
P_TERM=rxvt
P_TERM_OPTIONS="-geometry 100x40 -fn 12x24 -bg black -fg white -tn xterm"
P_CONSOLE_OPTIONS="-geometry 160x62"
內附一個 pconsole.sh 來給 user 使用,會呼叫 pconsole,指令如下:
- 代碼: 選擇全部
pconsole.sh user1@192.168.1.1:22 user2@192.168.1.2:3333
可指定 ssh port,但 pconsole.sh 有點問題,必須修改一行才能讓 port 生效。
約在 116 行:
- 代碼: 選擇全部
${P_TERM} ${P_TERM_OPTIONS} -title "pconsole: ${HOST}" -name "pconsole: ${HOST}" -e ${P_CONNECT_CMD} ${HOSTNAME} ${PORT} &
加上 -p (因為 openssh 指令為 ssh -p port hostname)
- 代碼: 選擇全部
${P_TERM} ${P_TERM_OPTIONS} -title "pconsole: ${HOST}" -name "pconsole: ${HOST}" -e ${P_CONNECT_CMD} ${HOSTNAME} -p ${PORT} &
pconsole.sh 得配合 ssh.sh 來運作,也是內附的。一樣可由環境變數來找到。
- 代碼: 選擇全部
P_CONNECT_CMD="/usr/local/bin/ssh.sh"
由於在登到 server 問密碼時,若直接鍵入密碼,則會在主控台上顯示密碼,若有別人在場,則會洩漏出去。因此可在主控台上按 Ctrl-A 進入命令模式,下 echo off 讓鍵入的按鍵不會出現在主控台上,打 connect 回到傳送模式再打密碼,打完密碼後再按 Ctrl-A 進入命令模式,執行 echo on,再打 connect 回到傳送模式即可。
clusterssh: Version: 2.16-1
一般 user 即可使用,但無法設定 ssh port,但可由修改 /usr/bin/cssh 來達到功能,但若是不同機器開不同的 port 則不行。平常是配合 ssh 來用,但是也可當作 rsh 來用(crsh)。
修改 /usr/bin/cssh 約在 465 行:
- 代碼: 選擇全部
my $port=3333;
一樣是採用 xterm 來使用,可在家目錄加個 .csshrc 來換成其他的 TERM。
- 代碼: 選擇全部
terminal = /usr/local/bin/start-crxvt
clusters = list1 list2
list1 = 192.168.1.1 192.168.1.2
list2 = server4 user@server5
/usr/local/bin/start-crxvt 內容為
- 代碼: 選擇全部
crxvt -fn 12x24 -fm taipei24 -bg black -fg white -tn xterm -sl 2048 -geometry 104x39 -tn xterm $@ &
指令為
- 代碼: 選擇全部
cssh user1@192.168.1.1 user2@192.168.1.2
或
- 代碼: 選擇全部
cssh list1
在 ~/.csshrc 中 list1 為 192.168.1.1 及 192.168.1.2 二台電腦
或是
- 代碼: 選擇全部
cssh
進入 GUI 再加入電腦,也可隨時將某台電腦離線或斷線。
在二個都試過後,覺得目前 clusterssh 比較好用一些,但致命傷是無法對不同電腦使用不同的 port,但可隨時加入電腦,及一般 user 即可用,由於 clusterssh 是用 perl 來寫的,看不大懂,不會改,所以看看未來新版的能不能將這個功能加進來。
另外如果只想針對某一台電腦做動作,只要滑鼠點到那台電腦的視窗即可,不要從主控台下指令。
由於在登入時,不同電腦可能會有不同的密碼,可能會有點麻煩,因此建議使用 ssh-agent 配合 public key 來使用。
--
路易 September 21, 2004 00:22:04