環境:阿里雲ECS(雲虛擬機),centos6.5
運行服務:nginx ,squid,iptables,nagios
誤操作過程:由於nagios報警boot 分區磁盤使用率大於80%,故本來想清理掉log日子,以及/urs/local/nginx/logs,誤操作rm -rf /var/*
當時感覺沒什麼事,就沒裏。服務也正常運行着。就退出ssh
導致問題:第二天ssh 連接報錯:當時沒截圖,意思大概就是說host remove之類的,當時就傻了,回想下。之前的操作。可能跟.var 目錄不存在有關係。
解決思路:1,通過阿里雲後臺登錄終端,登錄服務器,終端後臺登錄密碼忘記了,修改,重啓服務器,進入系統。首先啓動服務,nginx,報錯,啓不來,
根據報錯信心,mkdir -pv /var/log/,cd /var/log/ ,touch 相關的日子,下的相關niginx相關日誌,nginx.conf 可以看到配置。服務起來了,是服務最快恢復.
2. 修復ssh :
netsta -anlpt | grep 22 ,發現沒22號端口,
啓動 ssh:
service sshd start 或者 /etc/init.d/sshd start , 報錯,根據報錯信息,找不到、var下的目錄和文件,mkdir ,以及touch ,相關目錄文件。
service sshd star 服務正常啓動
netsta -anlpt | grep 22
3.測試ssh連接,OK ,ssh問題修復。
4.service squid start ,啓動失敗:
vim /etc/squid/squid.conf
查看var 下的相關配置,mkdir ,touch相關目錄及文件。還是啓不來。沒招了,思考。
cp /etc/squid/squid.conf /etc/squid/squid.conf20160519
yum -y install squid
yum 也報錯了,暈了,直接別的機器上,scp var目錄到本機,
yum clean all 以及yum makecache
#yum -y install squid 至此,squid開着也起來了,netsta 查看squid 的服務端口,OK。
所有服務都恢復了,問題解決。
其實還可以利用阿里雲的快照回滾功能,只是偶想 自己解決一次,積累點經驗。
大家有不懂的地方可以加我qq 或者微信,qq:275610367 微信:275310367