對(duì)于程序員、網(wǎng)站運(yùn)維來(lái)說(shuō),掌握一些基本的linux命令是必不可少的,即使現(xiàn)在用不到,在不久的將來(lái)也應(yīng)該會(huì)用到。由于linux有很多命令,每個(gè)命令基本可以用一篇文章介紹,所以本文僅總結(jié)一些常用命令的常用用法,這篇文章主要介紹了動(dòng)態(tài)網(wǎng)站維護(hù)基本命令小結(jié),主要是方便維護(hù)linux或unix服務(wù)器。
1.概述
狀態(tài)查看及監(jiān)控、故障處理、系統(tǒng)容量擴(kuò)展、數(shù)據(jù)備份/恢復(fù)/站點(diǎn)遷移
2.狀態(tài)查看與監(jiān)控
(1).系統(tǒng)資源耗用
代碼如下:
系統(tǒng)負(fù)載和磁盤i/o
進(jìn)程的總數(shù),其中httpd進(jìn)程數(shù)統(tǒng)計(jì)
tcp連接數(shù),time_wait 等(2).服務(wù)運(yùn)行情況
用戶能否訪問(wèn)
代碼如下:
tail -f 查看apache訪問(wèn)日志與錯(cuò)誤日志查看系統(tǒng)日志/var/log/messages
查看服務(wù)器與mysql數(shù)據(jù)庫(kù)的連接情況
3.故障處理
(1).php類動(dòng)態(tài)網(wǎng)站
服務(wù)不能啟動(dòng)、運(yùn)行中不響應(yīng)用戶請(qǐng)求……
a.apache 配置文件錯(cuò)誤
b.動(dòng)態(tài)模塊lib php5_mod 未能正確編輯
c.網(wǎng)站根目錄設(shè)置不正確
d.端口沖突
e.系統(tǒng)負(fù)載過(guò)高,資源耗盡
f.apache 配置參數(shù)不合理
g.防火墻配置不正確
h.數(shù)據(jù)庫(kù)故障
i.系統(tǒng)崩潰
j.文件系統(tǒng)損壞
k.磁盤分區(qū)耗盡 / /usr /var
l.nfs失效
m.負(fù)載均衡下,apache監(jiān)聽(tīng)地址不是127.0.0.1
(2).jsp 類型網(wǎng)站
a.系統(tǒng)環(huán)境變量設(shè)置錯(cuò)誤或沒(méi)設(shè)置
b.apache與tomcat的網(wǎng)站根目錄設(shè)置不一致
c.jsp 運(yùn)行中一直不能釋放內(nèi)存
4.問(wèn)題處理 (案例1)
apache 虛擬主機(jī)不能訪問(wèn)解決
方法:設(shè)置目錄權(quán)限
5.故障處理過(guò)程 (打開(kāi)論壇速度慢)(案例2)
(1).uptime –> top –> 系統(tǒng)負(fù)載
(2).vim /etc/passwd –>查看系統(tǒng)賬戶
(3).iptables -l -n –>查看防火墻
(4).mysql 客戶端連接數(shù)據(jù)庫(kù)
代碼如下:
mysql> show processlist;(5).查看apache的連接數(shù)
代碼如下:
ps aux | grep httpd | grep -v grep | wc -l(6).查看tcp的連接數(shù)并匯總
代碼如下:
netstat -an | awk '/^tcp/ {++ s[$nf]} end {for (a in s) print a,s[a]}'(7).查看端口請(qǐng)求80
代碼如下:
netstat -anp | grep -v unix(8).重啟apache
代碼如下:
/usr/local/apache/bin/apachectl restart(9).再查看進(jìn)程數(shù)
代碼如下:
ps aux | grep httpd | grep -v grep | wc -l(10).修改apache最大連接數(shù)
代碼如下:
<ifmodule prefork.c>
startservers 10
minspareservers 10
maxspareservers 15
serverlimit 2000
maxclients 1000
maxrequestsperchild 10000
</ifmodule>
<ifmodule worker.c>
startservers 3
maxclients 2000
serverlimit 25
minsparethreads 50
maxsparethreads 200
threadlimit 200
threadsperchild 100
maxrequestsperchild 0
</ifmodule>6.mysql故障 (案例3)
mysql 客戶端連接數(shù)據(jù)庫(kù)
代碼如下:
mysql> show processlist;