明明白白你的Linux伺服器 技巧篇 1

2021-08-31 08:21:42 字數 4120 閱讀 1181

本文**:

感覺文章很好,就貼了過來

眾所周所,現在搞系統運維的一般會區分二種環境,一種是開發環境,我們一般稱之為內網,用的伺服器系統一般是freebsd8(64位)或ubuntu系列;一種是運維環境,即我們託管的系統或**,一般放電信機房或雙線機房,我們稱之為外網,用的伺服器系統為centos5系列(64位)。玩了幾年linux/unix,我這裡有幾點心得技巧,可能是大家平時在工作和學習中容易忽略的,特與大家交流分享下,希望能提高大家的運維水平。

一、選擇乙個合適的遠端操作工具

linux/unix下我推薦x-manager 3.0企業版,windows2003/2008下我推薦用ra和遠端桌面。這裡稍為介紹下它們的優點:

x-manager 3.0企業版

官方**:

①跟putty不同,它只需要乙個程式視窗就可以同時控制成百台linux/unix伺服器;

②x-shell的亂碼情況比putty更好;

③x-browser能很好的從windows桌面控制linux桌面,尤其是操作linux下的oracle資料庫時;

remote admin

官方**:

撫琴煮酒外出公幹時,有幸經hp工程推薦使用remote admin(以下簡稱為ra)用來遠端管理windows2003機器,後來在公司60k的限速環境下一直執行得很好。家裡的機器是二台xp機器,用windows自帶的遠端桌面效果非常不佳,這時想起了ra,效果非常好,這裡將其使用心得與大家分享交流一番:

①windows的遠端桌面用於windows2003效果不錯,反而用於xp效果不佳:區域網連線速度慢,滑鼠有延遲情況等,這應該有由於系統自身的bug引起的;因為對比公司區域網中windows2003的遠端桌面,完全沒有這種現象;

②二台xp之間共享檔案很麻煩,而且傳輸速度相當慢;用於ra的file transfer效果就不一樣了,撫琴煮酒有了這個後,基本放充了xp的網路上的芳鄰了。以前如果有超過10g的連續劇要共享的話,用飛秋和飛鴿在xp下傳輸速度居然都很慢,改用ra後速度有明顯提高;

③每次用完遠端桌面後,被控機必須輸入管理員密碼才能進,而ra可以選擇性的是否鎖定,這點設計我感覺反而更人性化;

④同事從公司遠端上傳大約sql server2008的資料庫大約40g,在60k限制的情況下也能很穩定的成功上傳,基本上一晚上來個無人值守上傳就ok了,呵呵。

現在內網我就用遠端桌面,外網windows2003伺服器操縱時我喜歡用ra。

二、小心謹慎的使用x-manager

使用x-manager時需要注意區別三種環境,一般為虛擬機器環境、內網環境、外網環境。喜歡用x-shell的小伙都應該知道,有時你同時連上二三十臺linux或freebsd伺服器時,特別是連上linux伺服器時,許多sa估計都跟我一樣,都喜歡用root操作,稍不留心就會鑄成大禍,這裡我有個心得,如果是操作的的是內網或線上環境伺服器,操作完畢後建議馬上退出登入,如果需要再操作時就再登入,這樣更安全。

三、用sudo,避免使用root

如果操作的是freebsd伺服器,建議用帶sudo許可權的使用者操作(強烈建議不要用root),有時許多操作對於系統而言是非常危險的,尤其是rm -rf,而這個時候sudo會要求輸入你具有root許可權的使用者密碼,提醒你是否執行此危險操作;我從linux轉到freebsd下操作時也非常不習慣了,現在也喜歡用sudo了,建議你的linux也可按freebsd操作。

四、巧用crontab

如果你的linux機器處於idc機房,前端沒有硬體防火牆時建議開啟iptables防護;但此時就有乙個問題,你可能要在處於千里之外的公司除錯iptables指令碼,稍一出錯後果就很嚴重。

我在配置一台伺服器的iptables時,不小心設定了某一項錯誤引數,結果鎖定了ssh會話,導致我們經理及另一技術員連不上伺服器。鬱悶之餘,看到此法特推薦給大家,極其有用,建議大家學習參考:可以配置一計畫任務crontab,每5分鐘執行一次,即*/5 * * * * root /bin/sh /root/firestop.sh,firestop.sh內容為:service iptables stop;這樣即使你的指令碼存在錯誤設定(或丟失的)規則時,也不至於將你鎖在計算機外而無法返回與計算機的連線,讓你放心大膽的除錯你的指令碼。同學們可參考學習下,這畢竟是生產環境下逼出來的辦法。

五、合理利用虛擬機器來組構開發環境及實驗環境

linux和windows伺服器環境下,我比較推薦vmware vsphere和vmare gsx,freebsd我推薦下jail。目前我將vmware vsphpere和gsx均用於了生產環境,效果也比較穩定和安全,這裡重點推薦下其特點。

最近在公司的dell2850(開發伺服器)部署成功了vmware vsphere,一直在測試其效能,目前除了它的相容性以外(成功率10%),其它還算不錯;最近一直在關注其中的新技術,在講到ha的時候,資料要求中有幾個需要注意的:

①ha是針對安裝有esx主機的硬體的,在esx主機故障後,虛擬機器在其它主機恢復時使用了vmotion技術,但vmotion則是針對虛擬機器的(建議參考vmwareha、drs、vmotion相互關係)

②ha實現過程也就是虛擬機器故障恢後在其它主機的過程中,虛擬機器對外的服務會中斷,但是時間相對較短罷了,這和vmotion上也有不同之處。

③所有的虛擬機器硬碟檔案等必須要放在共享儲存上。

④需要使用到dns或hosts服務,這個容易實現,以前部署lvs+heartbeat我就蠻喜歡用hosts的,推薦hosts服務。

⑤esx主機在同一子網內,如果有多個網段,要確保esx主機上有足夠的網絡卡去連線。

⑥公司其它有虛擬要求的伺服器,實在裝不上vmware vsphere的,我安裝完vmware gsx v3.2.1後作了系統相關負載測試,跟vsphere作了對比,沒發現效能上有明顯差異;而且前期在電信機房gsx v3.2.1用於生產環境也相當穩定。

⑦vmware vsphere至少需要二台伺服器作infrastructure環境,其中一台用來作vmware virtualcenter,畢竟vsphere的其中賣點之一就是它的高可控性。

⑧esx server系列對伺服器的要求比較高,必須要有兩個以上的網絡卡,其中乙個作為控制用途(control console),就是管理員通過這個網絡卡使用瀏覽器和 vmware vsphere client來進行管理,這個網絡卡設定的ip位址就是esx server的ip位址,另外乙個網絡卡就作為 virtual network 裝置使用。

六、linux下用crontab定時執行php程式的正確方法

這種情況,涉及得比較多的是要定期執行一段郵件或簡訊任務。以前我用是的wget程式,感覺雖然實現了目的,但還是沒有研究透徹。後來花了些時間測試發現在linux下,可以使用crontab+php的方法:

1、使用crontab -e編輯定時任務

內容為:

xx:xx:xx 執行乙個test.php檔案

2、php檔案必須在檔案頭一行,加上直譯器路徑(就象perl做的那樣)

#!/usr/local/bin/php
php的執行需要apache的支援,shell指令碼的執行需要linux的支援,而linux支援定時執行某個程式的功能。(參考閱讀:將php作為shell指令碼語言使【英文】)

※以上是第一種辦法。另一種方法就是直接在/etc/crontab裡直接帶上php路徑,如

*/5 * * * * root php test.php
這樣就設定為每隔五分鐘執行一次test.php。有興趣的朋友可寫乙個hello程式測試,將其所有輸出到乙個檔案即可測試。

七、點分十進位制

(注:iptables的語法不支援這樣的寫法,只支援192.168.0.0/24此類寫法。)

八、學習網路知識

另外,系統管理員雖然主要處理的是系統方面和應用方面的事情,但有時遇到了故障,第一時間應該處理的是網路方面的事情;我以前所在的公司,規模都比較大,network engineer和system admin的職責範圍都區別開了,雖然網路工程師可以不懂linux/unix系統,但sa最好是掌握網路方面的知識,這樣對自己的職業生涯還是有幫助的。

一些明明白白的句子

1,沒有乙個人會真的喜歡孤獨,可是對於優秀的人來說,他們明白能夠通向幸福的捷徑,從來不是合群,而是成為最優秀的自己。人只有在獨處的時候,才能夠真正的去學習一些東西,去思考一些東西,優秀的人喜歡的從來不是獨處,而是喜歡因為獨處而給自己帶來的收穫。2,我渴望有自己獨立的人格,我渴望自己內心的特立獨行和桀...

明明白白OSPF與EIGRP的區別

明明白白ospf與eigrp的區別 在網際網路飛速發展的今天,tcp ip協議已經成為資料網路互聯的主流協議。在各種網路上執行的大大小小各種型號路由器,承擔著控制本世紀或許最重要資訊的流量,而這成百上千臺路由器間的協同工作,離不開路由協議。ospf和eigrp都是近年來出現的比較好的動態路由協議,o...

明明白白我的心 fs series 4

作者 gtt 本文件歸屬 請提出寶貴意見mail mtloveft hotmail.com linux version 2.6.33 提示 本文是關於file system 實現的介紹 再來看看linux 2.6.33中ext2的結構圖 super block的定義如下 struct ext2 su...