linux磁碟與檔案系統的管理

2022-03-21 17:12:36 字數 3691 閱讀 9622

本文涉及命令:dumpe2fs、df、du、fdisk、mkfs、mke2fs、fsck、badblocks、mount、umount、e2label、tune2fs、hdparm、parted

概念:

ext2等格式的檔案系統為索引式檔案系統。通過inode內容一次提取所有block號得到檔案內容。fat等格式檔案系統沒有inode,每個block號碼記錄在前乙個block當中,只能按順序讀取。當過於分散時,效能較差。碎片整理就是將統一檔案的離散的block彙整在一起。

ext2、3 檔案系統在格式化的時候基本上是區分為多個區塊群組 (block group) 的,每個區塊群組都有獨立的 inode/block/superblock 系統。

inode:記錄檔案的屬性,乙個檔案占用乙個inode,同時記錄此檔案的資料所在的 block 號碼;

block:實際記錄檔案的內容,若檔案太大時,會占用多個 block 。

每個block group的內容如下:

inode 記錄乙個 block 號碼要花掉 4byte,inode 記錄 block 號碼的區域被定義為12個直接,乙個間接, 乙個雙間接與乙個三間接記錄區。

這樣子 inode 能夠指定多少個 block 呢?我們以較小的 1k block 來說明好了,可以指定的情況如下:

data block (資料區塊)-------------存放檔案內容資料的地方ext2檔案系統中block支援的大小為 1kb、  2kb、  4kb

原則上,block 的大小與數量在格式化完就與能夠再改發了(除非重新格式化);

每個 block 內最多隻能夠放置乙個檔案的資料;

如果檔案大於 block 的大小,則乙個檔案會占用多個 block 數量;

檔案小於 block ,則該 block 的剩餘容量就與能夠再被使用了(磁碟空間會浪費)。

superblock (超級區塊)------------記錄整個 filesystem 相關資訊的地方, 沒有 superblock ,就沒有這個 filesystem 了

filesystem description (檔案系統描述說明)

block bitmap (區塊對照表)

inode bitmap (inode 對照表)

block、inode與目錄樹和檔案的關係

ext2/ext3 檔案的訪問與日誌式檔案系統的功能

linux 檔案系統的運作:

系統會將待用的檔案資料放置到主儲存器的緩衝區,以加速檔案系統的讀/寫;

承上,因此 linux 的物理記憶體最後都會被用光!這是正帯的情況!可加速系統效能;

你可以主動使用 sync 來強迫記憶體中設定為 dirty 的檔案回寫到磁碟中;

若正帯關機時,關機指令會主動呼叨 sync 來將記憶體的資料回寫入磁碟內;

但若不正帯關機(如跳電、當機或其他與明原因),由於資料尚未回寫到磁碟內, 因此重新啟動後可能會花很多時間在進行磁碟檢驗甚至可能尋致檔案系統的損毀(非磁碟損毀)。

symbolic link (符號鏈結,亦即是快捷方式)

磁碟掛載與卸除

設定開機掛載--------/etc/fstab (開機掛載內容)及 /etc/mtab(當前掛載情況)

/etc/fstab 內容解析:------修改後記得用mount -a 測試  是否與配置中的一致,否則可能無法開機

第五欄:能否被 dump 備份指令作用

第六欄:是否以 fsck 檢驗分割槽:

建立大檔案以製作loop裝置檔案

記憶體置換空間(swap)之建置

分割:fdisk /dev/hdc     分割

格式化:利用建立 swap 格式的『mkswap 裝置檔名』就能夠格式化該分割槽成為 swap 格式

使用:最後將該 swap 裝置啟動,方法為:『swapon 裝置檔名』

觀察:最終透過 free 這個指令來觀察一下記憶體的用量吧!

使用 mkswap 將 /tmp/swap 這個檔案格式化為 swap 的檔案格式:

使用 swapon 來將 /tmp/swap 啟動

使用 swapoff 關掉 swap file

swap使用上的限制:

命令:

dumpe2fs [-bh] 裝置檔名  ------檢視superblock 的資訊

df [-ahikhtm] [目錄或檔名]  -----列出檔案系統的整體磁碟使用量

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

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

-t :連同該 partition 的 filesystem 名稱 (例如 ext3) 也列出;

du [-ahskm] 檔案或目錄名稱  ---包含本目錄以及子目錄所有的位元組

fdisk [-l] 裝置名稱  --檢視分割槽情況以及建立分割槽

partprobe----------更新分割槽表,不需重啟

mkfs [-t 檔案系統格式] 裝置檔名或磁碟分割槽  ----格式化磁碟

mke2fs [-b block大小] [-i block大小] [-l 標頭] [-cj] 裝置  ---自定義格式化磁碟

fsck [-t 檔案系統] [-acdafy] 裝置名稱  -------檔案系統檢驗----檢查前請先解除安裝該分割槽

badblocks -[svw] 裝置名稱  ------檢查硬碟或軟盤壞道

mount-----------磁碟掛載

mount -a 依照配置檔案 /etc/fstab 的資料將所有未掛載的磁碟都掛載上來

mount [-l] 單純的輸入 mount 會顯示目前掛載的資訊。加上 -l 可增列 label 名稱!

mount [-t 檔案系統] [-l label名] [-o 額外選頃][-n] 裝置檔名 掛載點

重新掛載根目錄:mount -o remount,rw,auto /       ------------單使用者模式時發現根目錄是唯讀!

將目錄掛載到其他目錄:mount --bind 目錄1 目錄2

特殊裝置loop掛載:映象檔不燒錄就掛載使用  mount -o loop /root/centos5.2_x86_64.iso /mnt/centos_***

umount [-fn] 裝置檔名或掛載點  ------磁碟解除安裝

e2label 裝置名稱 「新的label名稱」-------修改檔案系統標頭

tune2fs [-jll] 裝置代號  -----修改檔案系統引數

hdparm -tt /dev/hdc  ---測試硬碟的讀取能力

parted -----------------高於2tb的硬碟需要使用parted進行分割。

parted [裝置] [挃令 [引數]]

例:例項:

.避免重新啟動,因此使用『 partprobe 』強制核心更新分割表;(如果依舊無法看到該分割槽裝置就重啟吧)

格式化分割槽:『mkfs -t ext3 /dev/sda6』

建立掛載點:『 mkdir /srv/myproject 』

編寫自動掛載的配置檔案:『 nano /etc/fstab 』,新增一行:

測試自動掛載:『 mount -a 』,然後使用『 df 』觀察看看有無掛載即可!

設定最後的許可權,使用:『 chgrp project /srv/myproject 』以及『 chmod 2770 /srv/myproject 』即可。

Linux 磁碟管理與檔案系統

1.資料結構 扇區 盤面被分成多個扇形區域,每個扇區存放512個位元組的資料 磁軌 同一碟片不同半徑的同心圓 柱面 不同碟片相同半徑構成的圓柱面 2.物理結構 碟片 硬碟有多個碟片,每個碟片2面 磁頭 每面乙個磁頭 3.儲存容量 硬碟儲存容量 磁頭數 x 磁軌 柱面 數 x 每道扇區數 x 每扇區位...

Linux磁碟管理與檔案系統

硬碟的物理結構 碟片 硬碟有多個碟片,每碟片兩面 磁頭 每面乙個磁頭 硬碟的資料結構 扇區 碟片被分為多個扇形區域,每個扇區存放512位元組的資料,硬碟最小的儲存單位 磁軌 同一碟片不同半徑的同心圓,是由磁頭在碟片表面劃出的圓形軌跡 柱面 不同碟片相同半徑構成的圓柱面,由同一半徑圓的多個磁軌組成 硬...

磁碟管理與檔案系統

八 掛載 解除安裝檔案系統 九 設定檔案系統的自動掛載 硬碟的物理結構 硬碟的資料結構 硬碟儲存容量 磁頭數 磁軌 柱面 數 每道扇區數 每扇區位元組數 512位元組 可以用柱面 磁頭 扇區來唯一定位磁碟上每乙個區域 磁碟介面型別 ide,並口資料線連線主機板與硬碟,抗干擾性太差,且排線占用空間較大...