閱讀266 返回首頁    go 阿裏雲 go 技術社區[雲棲]


係統管理員必備的實用工具集結

與凡是在開源領域幹過一陣子的人一樣,我的工具箱裏麵也有大量的常用程序和實用工具,它們有助於完成工作。所有主要的Linux發行版都有我要介紹的每一個工具,這些工具不是在安裝過程中默認安裝,就是可以通過安裝後的核心程序庫來獲得。這些工具將為我們提供相應的信息和度量指標,不僅可以查看我們的係統當前出現的情況,還可以在性能或穩定性成為問題時,幫助進行必要的分析。我們會介紹幾個“首要”的工具用於查找磁盤、處理器、網絡及/或其他係統瓶頸,也會介紹僅僅回答某些基本問題的一些工具。這篇短文絕非稱得上內容齊全。我的本意是在這篇文章之後寫幾篇另外的文章,介紹其他工具,最終更深入地探究比較複雜的應用程序。首屈一指的工具:'top'我原本希望自己在甄選排名第一的工具軟件上更有創意點,不過,除了明顯的功能外,'top'工具之所以被稱為'top'的確是名至實歸。這個簡單的命令為你提供了實時視圖,可以隨時了解係統上如今和最近的過去發生的一切情況。默認情況下,我們會看到使用處理器資源最多的進程每5秒鍾就更新一次。如你所見,我們很快獲得了大量的實用信息,關於該係統上眼下發生的情況。我們能發現,該係統已運行了近40分鍾,負載目前不到1.0,係統有4GB內存和同樣是4GB的交換空間,消耗處理器資源最多的兩大進程是XWindows以及帶"Plasma桌麵"合成特效的KDE。我會在此稍作停頓,向你介紹一種更好的top版本:'htop'。該工具為我們提供了更多一點的信息,而且布局更整潔一點: 現在我們在這裏清楚地看到,該係統還有2個處理器,清楚地呈現了每個處理器/核心有多少資源連同內存和交換空間被使用。此外(雖然在該屏幕截圖中沒有顯示出來),我們可以訪問許多的功能鍵快捷鍵,這些快捷鍵可用於重新排列進程的顯示,停止進程或過濾進程。雖然這些信息也可以通過'top'來獲得,但是用'htop'顯得更整潔一點、對用戶更友好一點。誰跑到了那裏:'w'我認為這個實用的小工具被大家忽視了,甚至被經驗豐富的係統管理員忽視了。簡而言之,該命令會顯示目前機器上的用戶及其進程方麵的信息。你可以查看單個用戶,也可以同時查看所有用戶:我在為誰等待:'iostat'這個命令很適合獲得簡要視圖,了解係統的輸入輸出子係統(磁盤、處理器和網絡文件共享)方麵的情況。它會報告係統是處於閑置狀態還是等待某個操作,然後列出你所有分區的讀取/寫入行為(Ubuntu用戶會注意到,一些版本要求從默認程序庫安裝'sysstat'程序包,才能獲得該應用程序)。這將有助於表明係統上需要進一步探究的其他方麵:在這裏,相應的這個係統實際上處於閑置狀態,隻有一個分區,基本上沒有進行太多的操作(我的Ubuntu虛擬機用於測試)。這向我清楚地表明了,我沒有任何輸入輸出等待;任何性能問題可能與該子係統沒有關係。誰在偵聽:'nmap'雖然整篇文章可以用來專門介紹'nmap'(還有許多工具也是如此),不過這款簡易的工具可以迅速獲取實用信息。該工具會掃描你的本地係統(或者如果獲得用戶的相應許可權限,還可以掃描遠程係統),告訴你關於該係統的各種各樣的實用的網絡信息。就本地係統而言,在故障排查性能或應用程序功能的過程中,它能告訴你係統是不是確實在偵聽你期望它偵聽的端口。對你的本地係統進行全麵的TCP掃描後,輸出結果應該類似這樣:如你所見,在這個基本係統上,我們在運行MySQL(端口3306)、Apache或另一個應用程序通過HTTP偵聽(端口80)以及通過互聯網打印偵聽(端口631上的IPP)。這些信息不僅可以用來證實某應用程序已打開了相應的端口;如果我在加固該係統以便安全訪問互聯網,我還會顯然采取步驟,關閉端口631,因為存在大量的安全漏洞,可能會導致該係統暴露在攻擊者麵前。結束語一些基本的工具或比較複雜的工具可用於獲得係統的基本信息,上麵這些隻是其中的一小部分而已。每個工具都有比較複雜的使用場合,可以在命令行或者它們隨帶的參考手冊頁上找到。將來,我們會為自己的工具箱添加更多的工具,並且學習如何運用這些工具來發現我們的係統方麵的更深入信息。歡迎留言,告訴我們你使用什麼工具,如何使用工具。

最後更新:2017-04-04 07:04:13

  上一篇:go 2012手機輸入元年:為何百度會領跑市場?
  下一篇:go android選擇圖片或拍照圖片上傳到服務器(包括上傳參數)