707
中電雲集
FreeBSD檢查硬盤調整文件係統的目錄結構
由於文件係統是係統中非常重要的部分,因此維護文件係統的任務也非常重要。這個任務包括檢查、修複文件係統, 以及調整目錄樹以適合係統的變化,增添新存儲設備等。
-
檢查硬盤
正常情況下使用FreeBSD的時候,文件係統不會出現問題。然而在某些情況下,如沒有正常關機操作就切斷了 計算機的電源,就會造成文件係統出現問題。此外,出於係統維護的目的,也需要經常檢查磁盤的正確性。這就需要使用文件 係統檢查工具fsck。
# fsck /dev/wd0s3e ** /dev/rwd0s3e ** Last Mounted on /var ** Phase 1 - Check Blocks and Sizes ** Phase 2 - Check Pathnames ** Phase 3 - Check Connectivity ** Phase 4 - Check Reference Counts ** Phase 5 - Check Cyl groups 573files,3387used,26340free(132frags,3276blocks,0.4%fragmentation) |
fsck使用raw方式存取磁盤,因此即使使用普通塊設備/dev/wd0s3e為參數,fsck也將使用對 應的raw方式設備文件/dev/rwd0s3e進行操作。為了避免與當前磁盤的存取操作衝突,因此要求在進行檢查之 前先將文件係統卸載,否則文件係統的狀態總是不正確(沒有被正確的卸載)。
為了不影響係統中正運行的進程,進行磁盤維護,最好首先進入單用戶狀態。這個狀態下將關閉所有不必要的進程, 係統也隻安裝了根文件係統,其他文件都沒有安裝,而且即使是根文件係統,也是以隻讀方式安裝的,這樣能保證不會發生存 取衝突,導致文件係統出現錯誤。
一旦磁盤被檢查出錯誤,fsck將提示管理員是否進行修改,可以使用 “-y” 參數,使得fsck自動進行 修複工作,而不進行任何提示。係統每次啟動的時候,都會使用這個參數自動檢查和修複文件係統。
-
調整文件係統的目錄結構
係統安裝時在目錄樹上安裝了不同的文件係統,隨著時間的推移,有些目錄使用的文件係統就會被文件數據占滿,而 有些目錄下的文件係統卻很少使用,使得文件係統不太適合係統的需求,此時或者增加新的硬盤設備,或者將文件在不同文件 係統中進行調整。
例如,如果FreeBSD係統被用作一台News服務器,讀者發表文章將保存在/var目錄所在的文件係統, 而缺省情況/var目錄空間有限,那麼這個目錄就會被占滿。如果不斷在係統中安裝各種應用軟件,那麼/usr/loc al目錄所在的文件係統會被占滿,等等。管理者就需要根據實際情況進行調整,可以使用df命令來查看文件係統的當前狀 態信息。
# df Filesystem 512-blocks Used Avail Capacity Mounted on /dev/wd0s3a 63550 50822 7644 87% / /dev/wd0s3f 1693228 977436 580334 63% /usr /dev/wd0s3e 59454 6772 47926 12% /var profs 8 8 0 100% /proc /dev/wd0s1 2055744 2032096 23648 99% /mnt/dosc |
df報告的信息包括這個文件係統的大小和剩餘空間(包括使用大小、剩餘大小和已使用空間的百分比),如果一個 文件係統中的剩餘空間不足,而另一個文件係統還剩餘足夠的空間,就可以通過調整來充分利用現有空間。
有時,df報告已使用空間的百分比會超過100%,這是由於UFS文件係統中有一些冗餘空間可用。這樣就給用 戶一個機會,可以不必因為文件係統滿而中斷當前正在寫文件的操作,而清除同一個文件係統中其他不必要的文件,在這個文 件係統中騰出存儲空間,從而保證數據最後能被可以正確的保存在文件係統中。
調整文件係統空間的基本方法是使用符號連接,可以先將該文件係統中的一個子目錄中數據全部轉移或複製到其他文 件係統中的另一個目錄中,然後將原有目錄改名或刪除,再建立一個對新目錄的符號連接來達到目的。例如可以將/usr/local 目錄轉移到另一個安裝到/disk2的文件係統中:
# cd /usr/local # tar cf - * | (cd /disk2; tar xf -) # mv /usr/local /usr/local.old # ln -s /disk2/local /usr/local |
為了保證數據安全,這裏例子中沒有使用mv直接移動數據,而是使用tar將數據複製到另一個目錄中,之所以使 用tar而非cp -R命令,是為了保證複製文件和目錄時保留它們的屬主、權限控製屬性的一致性。
最後更新:2017-01-04 22:34:39