
※ 緣由:
公司原先就有一套Cacti 0.8.7e,用來監控HP EVA8400 Storage 的效能
但當初裝的時候裝的版本很精簡,任何外掛套件都沒有,
最近公司要求要將Cacti 用來監控EVA Controller CPU% 並發出Email ALERT
因為Cacti 的Email 是單獨一個外掛套件plugins (叫Settings ),

※ 緣由:
公司原先就有一套Cacti 0.8.7e,用來監控HP EVA8400 Storage 的效能
但當初裝的時候裝的版本很精簡,任何外掛套件都沒有,
最近公司要求要將Cacti 用來監控EVA Controller CPU% 並發出Email ALERT
因為Cacti 的Email 是單獨一個外掛套件plugins (叫Settings ),
版主在園區從事Unix/linux 系統管理之工作已多年
待過工研院、Dram半導體大廠、IC設計廠
由於要照顧數百台伺服器,就像是伺服器的"老北" ( 父親)
時常需要寫ShellScript , 或Pytnon Script 來達成伺服器管理的工作
由於幾乎都是親自撰寫程式,常常覺得如果網路上找得到程式就省工多了
要在Unix/linux 裡面自動更改密碼,由於更改密碼passwd是互動式指令,
故透過Born Shell Script 的話,就是必須要用Expect 來達成。
Lnux default 有裝expect , 但UNIX比如Solaris 就沒有裝,需要上網去裝回來用
solaris 的版本要去www.sunfreeware.com 抓
抓下來後會附很多SAMPLE Script
要在Unix/linux 裡面自動更改密碼,由於更改密碼passwd是互動式指令,
故透過Born Shell Script 的話,就是必須要用Expect 來達成。
而Python 也有類似的expect ,叫pexpect (這麼模組是要另外抓下來的)
抓下來之後,編譯完Import 進來就可以用了!
版主 "您北" 以Python + pecpect 實作一個自動輸入密碼的模組,此模組可以單獨使用
有時候在管理NFS mount ,會遇到 mount 路徑改變,或消失
比如 mount naserver1:/ora /home/ora 為例
但是可能某天因為換NAS 導致 naserver1 改成naserver3 了,
或者是naserver1 退役所以消失了
但是機器的mtab 還有記錄,所以都無法umount 成功
用途:需要查詢多台伺服器的特定Nfs mount point 是否可以正常掛載 .
方法:需準備兩支程式(chk_nfs.sh ,kill_rshtimeout.sh )及機器清單(serverlist.txt , 清單檔名當然可以自由取 )
範例:
假設我們想去查詢每一台伺服器是否都可以mount 到 /home/oratest
例如以下的伺服器清單存成serverlist.txt :
NetApp 與EMC 是業界常用的前兩大NAS品牌,
當然有時候管理者會遇到萬一NetApp 的資料要轉到EMC 上
當然也必須把User Quota Setting 轉移過去,不然User 會無止盡的用
因為 EMC Default 是不會限制Quota的
但是,NetApp 與EMC 的quota Setting 方法差異極大,
"您北"有時候想寫一些自動 FTP,Telnet 的程式,但又怕對方該PORT沒反應、不通,
那程式就會HANG住很久,用Ping 的方式又不能指定PORT
所以"您北"寫了一個可以動態輸入想偵測的IP跟PORT的模組
很簡單,比如這個模組叫ES_ALEX_CK_PT_M
只要在程式裡呼叫它,並把回傳值丟出來就知道通或不通了!
這是我應用我網站上寫的【FTP Upload 模組】與 【偵測Port 模組】寫成的一支程式
主要是,從外部讀config 檔進來,此config 檔記錄了我要FTP哪些內容到哪一個站
(1)首先會偵測該FTP Site 通不通
(2)檢查要傳檔的我方目錄群是否為空,空目錄的話當燃就不傳囉!
(3)可以定多個目錄,程式會動把目錄內容一一UPLOAD到對方的網站
在Unix 管理,時常會用到自動化FTP Upload 或Download ,
比如要把本地端某目錄下的資料定期Upload 到客戶廠商的FTP Site,
但是常常又有不一樣的廠商,就會有不同的FTP Address , 不同的帳號密碼,不同的來源路徑.不同的對應路徑.等等
這時候如果有個模組,可以彈性的輸入以上這些東西,隨時要用的時候拿出來用
可以少掉很多CODING的時間!
此例會自動把USER Expired date 設為今日起180天後到期...
假如這SCRIPT名為setexpire.sh ,要設定的帳號為user1,就這麼下指令
# setexpire.sh user1
程式碼也很短,相單簡單吧!
Solais/linux系統管理中,針對帳號系統到期日的設定,
通常可以用GUI 畫面來設定某年月某日到期
但有時候遇到需要用自動化機制,比如大量開帳號,
想要通通設定這些帳號都在180天後過期
這個模組就幫得上來囉!