一次linux伺服器管理的慘痛教訓

2021-08-29 13:09:43 字數 1196 閱讀 4528

系統用的是fedroa8,機房給裝系統的時候,分割槽按預設方式,用lvm管理。

後來一次機房給拔了一下電,估計檔案系統哪兒出問題了,磁碟全部變成唯讀。然後我想檢查一下磁碟,執行了一下fsck,結果檢查失敗,而檔案系統又被解除安裝掉了,所有命令都用不了。只好讓機房給重啟一下,然後系統就起不來了。懷疑機房重啟系統的時候發現系統沒反應,多起了幾下,導致系統檢查硬碟的過程被中斷。

為了儲存資料,我只好重新加了塊硬碟,把系統裝在新硬碟上,掛上舊硬碟,我慢慢恢復資料。

先是遇到lvm的分割槽掛載問題,這東西不能像別的分割槽一樣直接掛在。網上查了一下:

先用vgscan,找到虛擬卷,然後用 vgchange -ay 啟用虛擬卷,/dev下就有了虛擬卷裝置。  預設是/dev/volgroup00/logvol00 /dev/volgroup00/logvol01這樣的。

用 mount  /dev/volgroup00/logvol00 /root/vg0 掛載,結果報錯:mount: you must specify the filesystem type

用fdisk檢視 了一下,發現虛擬卷識別出來了,但就是分割槽表被破壞了,系統識別不出分割槽格式。只好再用fsck修復。不停提示,開始還看,後來煩了,加了個    fsck -y。好,一路順利,檢查完了。mount上虛擬卷,進入目錄,傻眼了,分割槽下只剩下乙個lost+found資料夾,別的啥都沒了。進到lost+found下面,ls了一下,等了半天才顯示出來結果。原來所有檔案都被移到這個檔案下了,並且都重新命名為以#開頭,一串數字結尾的檔案,好幾萬檔案。欲哭無淚啊。

無奈間,試著grep了一下,發現還好,有的資料夾名字變了但結構還在。趕忙寫了個shell指令碼恢復資料。幸運的是,主要資料基本上都恢復了。

總結了一下教訓:

1。fsck不能亂用。先要把檔案系統umount掉,然後檢查。最好啟動到單使用者模式下fsck。

2。不必要的時候不要用lvm。真不知道fedora為什麼預設用lvm,為了實驗技術?這個鬼東西把硬碟弄成一塊,要壞全壞,還影響磁碟io效能。網上看到還有把boot資料夾也放到lvm下的,這樣系統起不來的時候,你想手動載入一下核心位址,你都不知道核心位址應該怎麼表示。

3。分割槽和備份太重要了。資料庫的datadir要手動指定到放資料的分割槽下,這樣重灌系統的時候,資料不會丟失。etc目錄下的配置檔案要備份,不然系統重灌後,重新配置一邊也夠受的。

平時自己本地用linux,伺服器管理經驗不多,讓老鳥看了笑話。吃一塹長一智,我這也算長了一智。

我的第一次專案管理 一次慘痛的教訓

最近總想發點時間寫些東西但抽不出時間,趁著放年假並且今天剛開完專案的年前回顧會議趕緊寫出來,其實挺不好意思講的,有點尷尬。由於公司逐步發展,專案越來越多,沒有人有時間來負責這個專案,我的老闆們可能看我比較順眼於是便讓我來負責這次的專案開發,於是我便莫名其妙的變成了專案負責人,一開始我是拒絕的,讓乙個...

記一次伺服器事故

mysql資料庫報錯 can t create write to file tmp sql 6ccc 0.myi 在開始刪除之後,所有服務就已經恢復正常執行了,接下來就是優化那個session了,哎又是埋坑.最後附上inode擴容的方法 但是需要注意,手動擴inode,一般是新建分割槽時設定的,該操...

一次慘痛的面試教訓

這已經是乙個多星期以前的事情了 2011年7月29日 但是想起來,感覺還是挺不好。寫出來,希望給大家提供乙個反面教材,大家以後面試時,一定注意。這是在第二面中遇到的乙個問題,問題很簡單。但是,不簡單 的我給自己挖了乙個坑,自己還渾然不覺地跳了進去,進去也出不來時,才發現自己給自己挖了個坑。實在是鬱悶...