3 Linux 磁盤與文件系統(tǒng)管理

1 認(rèn)識 Linux 文件系統(tǒng)

Linux 最傳統(tǒng)的磁盤文件系統(tǒng)使用的是 ext2

1.1 磁盤組成與分區(qū)

  • 磁盤組成
  • 圓形的碟片(記錄數(shù)據(jù))
  • 機(jī)械手臂贷洲,可擦寫碟片上的數(shù)據(jù)
  • 主軸馬達(dá)晋柱,可以轉(zhuǎn)動碟片,讓機(jī)械手臂上的磁頭在碟片上讀寫數(shù)據(jù)

1.2 文件系統(tǒng)特性

  • 文件除了文件實(shí)際內(nèi)容俩块,還有屬性浓领。文件系統(tǒng)會將文件數(shù)據(jù)和屬性分別存放在不同的區(qū)塊联贩,權(quán)限和屬性放置在 inode 中捎拯,實(shí)際數(shù)據(jù)放置到區(qū)塊中。
  • 超級區(qū)塊:記錄此文件系統(tǒng)的整體信息署照,包括 inode 與數(shù)據(jù)區(qū)塊的總量、使用量建芙、剩余量以及文件系統(tǒng)的格式相關(guān)信息禁荸。
  • Inode:記錄文件的屬性阀湿,一個(gè)文件占一個(gè) inode陷嘴,同時(shí)記錄此文件數(shù)據(jù)所在的區(qū)塊號碼间坐。
  • 數(shù)據(jù)區(qū)塊:實(shí)際文件內(nèi)容灾挨,文件太大,會占用多個(gè)區(qū)塊竹宋。

根據(jù)數(shù)據(jù)存取分為兩種文件系統(tǒng):

索引式文件系統(tǒng)(indexed allocation)
每個(gè) inode與block都有編號劳澄,而每個(gè)文件都會占用一個(gè)inode,inode 內(nèi)則有文件數(shù)據(jù)放置的block號碼逝撬。
如下圖所示浴骂,文件系統(tǒng)先格式化出inode與block的區(qū)塊,假設(shè)某一個(gè)文件的屬性與權(quán)限數(shù)據(jù)是放置到inode4號宪潮,而這個(gè)inode記錄了文件數(shù)據(jù)的實(shí)際放置點(diǎn)為2溯警、7、13狡相、15這四個(gè)block號碼梯轻,操作系統(tǒng)就能夠據(jù)此來排列磁盤的讀取順序喳挑,可以一次性將四個(gè)block內(nèi)容讀出來伊诵。那么數(shù)據(jù)的讀取就如同下圖中的箭頭所指定的模樣了曹宴。這種數(shù)據(jù)存取的方法我們稱為索引式文件系統(tǒng)。

inode/block數(shù)據(jù)存取示意圖

FAT文件系統(tǒng)
U盤使用的文件系統(tǒng)一般為FAT格式版扩。FAT文件系統(tǒng)并沒有inode,所以沒有辦法將這個(gè)文件的所有block在一開始就讀取出來宴偿。每個(gè)block號碼都記錄在前一個(gè)block當(dāng)中窄刘,他的讀取方式如下圖所示:

fat數(shù)據(jù)存取數(shù)據(jù)圖

假設(shè)文件的數(shù)據(jù)依序?qū)懭?->7->4->15號這四個(gè)block號碼中活翩,但這個(gè)文件系統(tǒng)沒有辦法一口氣就知道四個(gè)block的號碼材泄,他得要一個(gè)一個(gè)的block讀出后,才會知道下一個(gè)block在何處旦事。

1.3 Linux的ext2文件系統(tǒng)

文件系統(tǒng)一開始就將inode和數(shù)據(jù)區(qū)塊規(guī)劃好了姐浮,除非重新格式化,否則inode與數(shù)據(jù)區(qū)塊規(guī)定后就不在變動蛋逾。
ext2文件系統(tǒng)格式化的時(shí)候區(qū)分多個(gè)區(qū)塊群組换怖,每個(gè)區(qū)塊群組都有獨(dú)立的數(shù)據(jù)區(qū)塊条摸、inode钉蒲、超級區(qū)塊系統(tǒng)踏枣,比較好管理茵瀑。

1.3.1 data block(數(shù)據(jù)區(qū)塊)

用來放置文件數(shù)據(jù)竞帽,在ext2文件系統(tǒng)中所支持的區(qū)塊有1K 2K 4K 三種屹篓。

限制

  • block的大小與數(shù)量在格式化完就不能夠再改變了(除非重新格式化);
  • 每個(gè)block內(nèi)最多只能夠放置一個(gè)文件的數(shù)據(jù);
  • 如果文件大于block的大小,則一個(gè)文件會占用多個(gè)block數(shù)量;
  • 若文件小于block谍肤,則該 block的剩余容量就不能夠再被使用了(磁盤空間會浪費(fèi))。

1.3.2 inode table

記錄內(nèi)容

  • 該文件的存取模式(read/write/excute)
  • 該文件的擁有者與群組(owner/group)
  • 該文件的容量
  • 該文件創(chuàng)建或狀態(tài)改變的時(shí)間(ctime)
  • 最近一次的讀取時(shí)間(atime)
  • 最近修改的時(shí)間(mtime)
  • 定義文件特性的旗標(biāo)(flag),如 SetUID...
  • 該文件真正內(nèi)容的指向 (pointer)

特點(diǎn)
每個(gè) inode 固定 128B乳附,每個(gè)文件只占用一個(gè) inode ,文件系統(tǒng)能夠建立的文件數(shù)量和 inode 數(shù)量有關(guān)举农,系統(tǒng)讀取文件先找到 inode颁糟,分析 inode 的權(quán)限和用戶是否符合,符合才讀取內(nèi)容婚脱。

1.3.2 Superblock(超級區(qū)塊)

沒有超級區(qū)塊错森,就沒有這個(gè)文件系統(tǒng)涩维,文件系統(tǒng)的基本新都存儲在這。

記錄內(nèi)容

  • 數(shù)據(jù)區(qū)塊月inode的總量
  • 未使用與已使用inode與數(shù)據(jù)區(qū)塊數(shù)量
  • 數(shù)據(jù)區(qū)塊與inode大小
  • 文件系統(tǒng)的掛載時(shí)間垄分、最近一次寫入數(shù)據(jù)的時(shí)間、最近一次檢驗(yàn)磁盤的時(shí)間等文件系統(tǒng)相關(guān)信息豺瘤。
  • 一個(gè)有效位數(shù)值坐求,若此文件系統(tǒng)已被掛載桥嗤,有效位為0泛领,若未被掛載,有效位為1锡宋。

2 文件系統(tǒng)簡單操作

2.1 磁盤與目錄的容量

df
列出文件系統(tǒng)的整體磁盤使用量

df [-ahikHTm] [目錄或文件名]
選項(xiàng)與參數(shù):
-a:列出所有的文件系統(tǒng),包括系統(tǒng)特有的/proc等文件系統(tǒng);
-k:以KBytes的容量顯示各文件系統(tǒng);
-m:以MBytes的容量顯示各文件系統(tǒng);
-h:以人們較易閱讀的GBytes鸵鸥,MBytes,KBytes等格式自行顯示;
-H:以M=1000K取代M=1024K的進(jìn)位方式;
-T:連同該partition的filesystem名稱(例如xfs)也列出;
-i:不用磁盤容量,而以inode的數(shù)量來顯示
示例

字段含義:

  • 文件系統(tǒng):代表該文件系統(tǒng)是在哪個(gè)partition,所以列出設(shè)備名稱;
  • 1k-塊:說明下面的數(shù)字單位是1KB,可利用-h或-m來改變?nèi)萘?
  • 已用:使用掉的磁盤空間
  • 可用:剩下的磁盤空間大小;
  • 已用%:磁盤的使用率辰晕,如果使用率高達(dá)90%以上時(shí),需要注意窘问;
  • 掛載點(diǎn):磁盤掛載的目錄

du
評估文件系統(tǒng)的磁盤使用量(常用在推估目錄所占容量)

du [-ahskm] 文件或目錄名稱
選項(xiàng)與參數(shù):
-a:列出所有的文件與目錄容量,因?yàn)槟J(rèn)僅統(tǒng)計(jì)目錄下面的文件量而已故黑。
-h:以人們較易讀的容量格式(G/M)顯示;
-s:列出總量而已,而不列出每個(gè)各別的目錄占用容量;
-S:不包括子目錄下的總計(jì),與-s有點(diǎn)差別概疆。
-k:以KBytes列出容量顯示;
-m:以MBytes列出容量顯示;

df和du的區(qū)別
參考Linux du命令和df命令區(qū)別

摘自《鳥哥的Linux私房菜》概耻,更多精彩參考 http://cn.linux.vbird.org/
參考 https://blog.csdn.net/wisgood/article/details/17316663

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市奉呛,隨后出現(xiàn)的幾起案子登馒,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,755評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)惨远,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事蒂培。” “怎么了檐春?”我有些...
    開封第一講書人閱讀 165,138評論 0 355
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么另锋? 我笑而不...
    開封第一講書人閱讀 58,791評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好销斟,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,794評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般粪躬。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,631評論 1 305
  • 那天脖母,我揣著相機(jī)與錄音鸽凶,去河邊找鬼。 笑死边锁,一個(gè)胖子當(dāng)著我的面吹牛则拷,可吹牛的內(nèi)容都是我干的斥铺。 我是一名探鬼主播,決...
    沈念sama閱讀 40,362評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼改衩,長吁一口氣:“原來是場噩夢啊……” “哼腥椒!你這毒婦竟也來了洒放?” 一聲冷哼從身側(cè)響起惋戏,我...
    開封第一講書人閱讀 39,264評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后订雾,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,724評論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡擅威,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年厉熟,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了白翻。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,040評論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出悼沿,到底是詐尸還是另有隱情,我是刑警寧澤拉讯,帶...
    沈念sama閱讀 35,742評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站喉誊,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜曹仗,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,364評論 3 330
  • 文/蒙蒙 一轨蛤、第九天 我趴在偏房一處隱蔽的房頂上張望圃验。 院中可真熱鬧,春花似錦照捡、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,944評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽原献。三九已至,卻和暖如春讲仰,著一層夾襖步出監(jiān)牢的瞬間躏啰,已是汗流浹背愈魏。 一陣腳步聲響...
    開封第一講書人閱讀 33,060評論 1 270
  • 我被黑心中介騙來泰國打工牌柄, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蹋宦,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,247評論 3 371
  • 正文 我出身青樓滨巴,卻偏偏與公主長得像恭取,于是被迫代替她去往敵國和親甜奄。 傳聞我的和親對象是個(gè)殘疾皇子晨继,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,979評論 2 355

推薦閱讀更多精彩內(nèi)容