出处:http://keynes0918.wordpress.com/2009/10/19/%E5%88%A9%E7%94%A8distribute-shell-%E4%BB%A5%E4%B8%80%E5%8F%B0%E4%B8%BB%E6%A9%9F%E9%81%A0%E7%AB%AF%E7%AE%A1%E7%90%86%E5%A4%9A%E5%8F%B0server_by-keynes/


2009 年 10 月 19 日發表迴響

實驗情境
CentOS5.3(node1): 為安裝 Distribute Shell 主控端角色
                            已安裝Apache(/usr/local/apache)Web 服務並已啟動
                           建立資料夾 /var/wuda (後面將實作drsync會用到)
CentOS5.3(node2): 為 node1 主機Remote 受控管理Server
                           未安裝Apache 服務
                           建立資料夾 /var/wuda
測試指令 : dssh , dfind , dscp,drsync,dcmd_distributekeys
目標: 利用Distribute Shell 主機 以一台控管多台主機增加MIS管理效率
(1.)[安裝] 去Sourceforge 網頁上查尋 dcmd 關鍵字, 並下載dcmd-0.91.tar.gz 主程式
shell> tar zxvf dcmd-0.91.tar.gz                 #將程式下載於nod1主機上,並解開壓縮檔
shell> mv dcmd /usr/local                            #本人習慣將程式安裝於/usr/local
(2.)[修改etc/hosts & /usr/localdcmd/etc/dcmd.hosts] 將欲遠端控管的主機名稱對應通通加入此檔案中
 vi /etc/hosts/         #編輯將入以下主機 node2
192.168.0.171    node2
mao.php?u=PrexAXRyf9gJHwSkkcwn7Rb161i%2B
     vi   /usr/localdcmd/etc/dcmd.hosts   #編輯將入以下主機 node2
mao.php?u=IHhFD512DCGluf89yAqi3BIZPrMOvG
(3 .)[修改~/.bash_profile] 在此必須指定dmcd程式環境變數如下,修改後
                                         執行完成後 source ~/.bash_profile 使其生效
mao.php?u=sQchOUbBhK%2FEPNnRrZIIny24ObHM
(4.)[產生無須密碼登入系統金鑰並散部到遠端主機]  利用 ssh-keygen 建立金鑰並派送到遠端主機(NODE2)
mao.php?u=3i5R2ec1rr2wn%2BjSpJJVVKf7LDvG
    利用dssh 指令 為遠端主機node2 建立目錄 "  ~/.ssh " dssh mkdir -p  ~/.ssh
mao.php?u=NenU4dnBWAhfXvMwCEtfHNq3zaR093
利用dcmd_distributekeys 指令將金鑰散布於NODE2 主機上 ,並更名為 authorized_keys , 即可完成無金鑰登入系統程序
dcmd_distributekeys  ~/.ssh/id_rsa.pub   ~/.ssh/authorized_keys              
mao.php?u=nS3te%2BgZpfFdNZkPR89JtoKMyTe3
(5 .)[測試1_瀏覽受控端主機 (node2)  ~/ 目錄下檔案名細]     dssh  ls   -l   ~/       #請在node1下command
mao.php?u=pD98YFHi1xVqpv64EnkgfikJekWEc4
(6 .)[測試2_dfind 查尋 (node2)主機關鍵字檔案位置  ]     defind  /home/  -user  wuda   #請在node1下command
mao.php?u=lhh7m2l%2BQ%2BgqKOrT8tXtyg%2BL
(7.)[測試3_將node1編譯安裝OK後的apache檔派送到 (node2)主機上並測試啟動是否可行?  ]  
先利用dscp -rp 指令傳送本機(node1) /usr/local/apache 資料夾至遠端/usr/local 目錄下
[  ]: <—代表所受控名單內逺端主機
mao.php?u=iG6Mdb%2FbHPPb74c0Fabjhwch3vZr

查驗是否已經將/usr/local/apache 資料夾傳輸到node2上(已完成傳送)     #切換node2主機
mao.php?u=plOnC8zjGsUKFtBhvg66M622yrsepj
       切回node1主機,下command dssh /usr/local/apache/bin/apachectl  start         #node2_Apache服務已順利啟動
,
mao.php?u=dknRzKCLwl4KJtkNeOA3tf1FMVtLgZ
利用dps 指令查尋遠端主機程序執行狀況 (Node2_APACHE 服務已順利執行中)
mao.php?u=oMi7tFmteFEgAmGqlnj3hYlZaJDhWm


(8.)[測試4_ node1主機與node2  資料夾/var/wuda  是否可進行資料夾間同步 與RSYNC 相同功效] 利用  drsync
替node1 ,  node2 主機建立 /var/wuda 資料夾,並於 node1 產生 test.html 測試檔案後
      執行
     drsync      -vrplogDtH  /var/wuda  [ ]:/varwuda   #手動進行本機端與遠端資料夾同步 已成功
PS.搭配Crontab 執行效果絕妙
mao.php?u=WoY0fXm%2BGqWpGZTfsYamlpihbcs2