天天看點

Linux 磁盤管理

Linux 磁盤管理好壞直接關系到整個系統的性能問題。

Linux 磁盤管理常用三個指令為 df、du 和 fdisk。

df(英文全稱:disk full):列出檔案系統的整體磁盤使用量

du(英文全稱:disk used):檢查磁盤空間使用量

fdisk:用于磁盤分區

df指令參數功能:檢查檔案系統的磁盤空間占用情況。可以利用該指令來擷取硬碟被占用了多少空間,目前還剩下多少空間等資訊。

文法:

選項與參數:

-a :列出所有的檔案系統,包括系統特有的 /proc 等檔案系統;

-k :以 KBytes 的容量顯示各檔案系統;

-m :以 MBytes 的容量顯示各檔案系統;

-h :以人們較易閱讀的 GBytes, MBytes, KBytes 等格式自行顯示;

-H :以 M=1000K 取代 M=1024K 的進位方式;

-T :顯示檔案系統類型, 連同該 partition 的 filesystem 名稱 (例如 ext3) 也列出;

-i :不用硬碟容量,而以 inode 的數量來顯示

将系統内所有的檔案系統列出來!

在 Linux 底下如果 df 沒有加任何選項,那麼預設會将系統内所有的

(不含特殊記憶體内的檔案系統與 swap) 都以 1 Kbytes 的容量來列出來!

将容量結果以易讀的容量格式顯示出來

将系統内的所有特殊檔案格式及名稱都列出來

将 /etc 底下的可用的磁盤容量以易讀的容量格式顯示

Linux du 指令也是檢視使用空間的,但是與 df 指令不同的是 Linux du 指令是對檔案和目錄磁盤使用的空間的檢視,還是和df指令有一些差別的,這裡介紹 Linux du 指令。

-a :列出所有的檔案與目錄容量,因為預設僅統計目錄底下的檔案量而已。

-h :以人們較易讀的容量格式 (G/M) 顯示;

-s :列出總量而已,而不列出每個各别的目錄占用容量;

-S :不包括子目錄下的總計,與 -s 有點差别。

-k :以 KBytes 列出容量顯示;

-m :以 MBytes 列出容量顯示;

隻列出目前目錄下的所有檔案夾容量(包括隐藏檔案夾):

直接輸入 du 沒有加任何選項時,則 du 會分析目前所在目錄裡的子目錄所占用的硬碟空間。

将檔案的容量也列出來

檢查根目錄底下每個目錄所占用的容量

通配符 * 來代表每個目錄。

與 df 不一樣的是,du 這個指令其實會直接到檔案系統内去搜尋所有的檔案資料。

fdisk 是 Linux 的磁盤分區表操作工具。

-l :輸出後面接的裝置所有的分區内容。若僅有 fdisk -l 時,

則系統将會把整個系統内能夠搜尋到的裝置的分區均列出來。

列出所有分區資訊

找出你系統中的根目錄所在磁盤,并查閱該硬碟内的相關資訊

輸入 m 後,就會看到底下這些指令介紹

離開 fdisk 時按下 <code>q</code>,那麼所有的動作都不會生效!相反的, 按下<code>w</code>就是動作生效的意思。

想要不儲存離開嗎?按下 q 就對了!不要随便按 w 啊!

使用 <code>p</code> 可以列出目前這顆磁盤的分割表資訊,這個資訊的上半部在顯示整體磁盤的狀态。

磁盤分割完畢後自然就是要進行檔案系統的格式化,格式化的指令非常的簡單,使用 <code>mkfs</code>(make filesystem) 指令。

-t :可以接檔案系統格式,例如 ext3, ext2, vfat 等(系統有支援才會生效)

檢視 mkfs 支援的檔案格式

按下兩個[tab],會發現 mkfs 支援的檔案格式如上所示。

将分區 /dev/hdc6(可指定你自己的分區) 格式化為 ext3 檔案系統:

fsck(file system check)用來檢查和維護不一緻的檔案系統。

若系統掉電或磁盤發生問題,可利用fsck指令對檔案系統進行檢查。

-t : 給定檔案系統的型式,若在 /etc/fstab 中已有定義或 kernel 本身已支援的則不需加上此參數

-s : 依序一個一個地執行 fsck 的指令來檢查

-A : 對/etc/fstab 中所有列出來的 分區(partition)做檢查

-C : 顯示完整的檢查進度

-d : 列印出 e2fsck 的 debug 結果

-p : 同時有 -A 條件時,同時有多個 fsck 的檢查一起執行

-R : 同時有 -A 條件時,省略 / 不檢查

-V : 詳細顯示模式

-a : 如果檢查有錯則自動修複

-r : 如果檢查有錯則由使用者回答是否修複

-y : 選項指定檢測每個檔案是自動輸入yes,在不确定那些是不正常的時候,可以執行 # fsck -y 全部檢查修複。

檢視系統有多少檔案系統支援的 fsck 指令:

強制檢測 /dev/hdc6 分區:

如果沒有加上 -f 的選項,則由于這個檔案系統不曾出現問題,檢查的經過非常快速!若加上 -f 強制檢查,才會一項一項的顯示過程。

Linux 的磁盤挂載使用 <code>mount</code> 指令,解除安裝使用 <code>umount</code> 指令。

磁盤挂載文法:

用預設的方式,将剛剛建立的 /dev/hdc6 挂載到 /mnt/hdc6 上面!

磁盤解除安裝指令 <code>umount</code> 文法:

-f :強制卸除!可用在類似網絡檔案系統 (NFS) 無法讀取到的情況下;

-n :不更新 /etc/mtab 情況下卸除。

解除安裝/dev/hdc6