linux操做系統服務器在出現死機或卡頓狀況,能夠參考如下項目進行總體排查:node
a、檢查服務器進程與服務否佔用了太多的內存或是沒有釋放內存,當服務器內存用完後,而後就會很快宕機;
b、看看/var/spool/cron/crontabs裏面是否是有cron(計劃任務、自動任務)在對應時間段內執行;
c、檢查web服務器的參數是否超過了服務器的性能,如容許最大鏈接數太高等;
d、進程數很高,服務癱瘓,機器假死(例如zombie進程是否過多,一直佔用資源);
e、tail -n 5 /var/log/syslog查看系統日誌是否有異常(最後5行)
f、檢查磁盤是否有壞塊。(可以使用badblocks命令配合參數)
g、內核消耗過大,查看是否有瞬間資源佔用過大的進程或服務;
h、ps -ef 查看進程異常否,是否存在攻擊
使用top、ps aux 查看主機目前運行中的哪些程序佔用CPU資源較大,能夠進行下一步處理(例如中止、重啓測試)。
啓動機器,看可否登錄,若是能登錄,請檢查:linux
a、是不是應用程序致使內存溢出或者泄露致使
b、是不是進程過多或者不斷建立,耗盡資源致使
c、是不是數據庫程序死鎖,鏈接數過多致使
d、是不是應用程序異常致使
e、是不是流量負載過大致使
f、 是不是遭受黑客入侵攻擊致使
g、是不是誤操做致使
若是沒法查看故障現場,則能夠查詢系統日誌查看是否有異常記錄。
同步時間
ps -ef|grep ntp 查看是否運行了ntp,沒有 apt-get install ntp
修改 文件在 /etc/ntp.conf 中的 server
固然,也能夠用下面的命令手動進行時間同步:web
# ntpdate pool.ntp.org //(這裏是同步的具體地址,好比 tp1.aliyun.com)等vsftp沒法使用,嘗試查看/etc/passwd下的目錄發現用戶使用的帳號沒有問題,可是嘗試telnet 127.0.0.1 21 的時候主機報錯「數據庫
500 OOPS: vsftpd: cannot locate user specified in 'ftp_username':ftp 」。bash
處理辦法:在/etc/vsftpd.conf 文件內加入ftp_username=nobody 保存,重啓vsftp服務,該問題便可解決服務器
linux 沒法遠程鏈接的檢查方法
終端能夠鏈接後的通常排查方法以下:
一、若是在本地都沒法telnet到ssh 的遠程端口,能夠終端登錄服務器後能夠先查看一下,服務器上ssh服務是否正常啓動,使用netstat -natlp 能夠查看一下相關的進程,若是有該sshd進程,並正常監聽,說明多是其餘問題引發,若是沒有使用service sshd start 的命令啓動一下該服務在進行一下測試。若是啓動失敗,能夠根據相關的提示的報錯在逐一進行排查.
二、 查看一下服務器上是否有運行NetworkManeger 的服務,這個服務會影響到您的網絡,可使用service NetworkManager status ,查看一下服務狀態,若是是開啓的,請使用stop命令中止,(通常裝完 就會關閉 我發現我沒開啓)
中止後還須要重啓網卡服務,service networking restart ;若是沒有開啓繼續排查其餘問題;
三、查看一下防火牆是否有攔截,能夠先關閉防火牆測試, 通常用ufw 這個工具 ufw status 查看
ufw disable
關閉 ufw enable 開啓 ufw allow 22 開啓 22 等等命令
四、 當查看sshd 服務正常啓動。防火牆關閉或沒有攔截,網絡服務正常運行時,外部若是還telnet 不到您的默認的端口,此時須要查看一下服務器的默認端口是否有更改,打開ssh的配置文件,vi/etc/ssh/sshd_config 查看# port 後面監聽的端口是否有更改,默認是22 。以及 listenaddress 後面默認是0.0.0.0 表示所有網卡都監聽,若是這裏是127.0.0.1 那麼表明只能本機上 ssh 鏈接的。
五、若是此 時端口已經都正常,但沒法鏈接到服務器上,請查看ssh配置文件中是否禁止了 root用戶登陸,vi/etc/ssh/sshd_config 中有相關的 參數 PermitRootLogin 看後面是否更改成了no .默認是yes ,即容許root登錄鏈接。
linux服務器內沒法訪問其餘站點的檢查處理方法
1.ifconfig檢查網卡信息是否正常網絡
ifconfig 命令會有3個網卡,分別是eth0-內網網卡,eth1-公網網卡,lo-迴環網卡
2.路由表是否正常
3.可否正常ping內網網關
route -n 能夠看到Gateway 網關。
4./etc/resolv.conf中是否指定nameserver
cat /etc/resolv.conf 查看是否指定了nameserver
5.nscd進程是否正常
ps aux |grep nscd 查看是否有/usr/sbin/nscd
6.防火牆是否限制對外網80、53端口的訪問
ufw statusssh
linux下空間滿可能有兩種狀況工具
能夠經過命令
df -h 查看磁盤空間佔用,其實是查看磁盤塊佔用的文件(block)
df -i 查看索引節點的佔用(Inodes)
磁盤塊和索引節點其中之一滿,都會致使沒法建立文件,提示磁盤空間已滿。
因此請注意,查看磁盤還有空間,可是建立文件提示空間滿,多是inodes節點已滿
經過命令:find / -size +100M |xargs ls -lh
列出系統內大於100M的文件
du -h --max-depth=1
查看當前目錄內文件夾的大小
能夠兩種方式都測試下,有些時候,佔用了大量空間的實際上是系統日誌或業務附件等小文件,
因此根據文件大小去查找不必定能查出正在佔用硬盤空間的【目錄】或文件,建議使用第二種
日誌文件較大
web訪問日誌,建議作定時任務日誌切割,以天爲單位作壓縮備份(能夠經過腳本實現),保留必定時間以備查看,有須要能夠作日誌分析。
以 一鍵安裝包的環境爲例,/alidata/log/ 目錄下是是日誌文件,能夠檢查文件大小是否佔滿磁盤使用,一般,access目錄下文件爲訪問日誌,error爲錯誤日誌。如磁盤佔慢,這些日誌又不重 要,那麼能夠作清空處理,方法1,能夠rm 刪除掉,2 echo"" >access.log