Linux 系統管理——Linux文件系統與日誌

一、inode 包含文件的元信息
(1)inode 內容:
文件的字節數、擁有者的 UID、GID、文件的讀寫執行權限、時間戳等,但不包含文件
名。文件名是儲存在目錄的目錄項中。
(2)查看文件的 inode 內容,stat 命令node

2.Atime等詳解spa

 

英文 別稱 中文翻譯 什麼時候修改 查看命令
Access Atime 訪問時間 讀取、寫入 ls-lu
Modify Mtime 修改時間  寫入、修改 ls-l
Change/Create Ctime 改變時間/建立時間

修改文件名、寫入、操作系統

修改、該權限、作連接翻譯

ls-lc

3.目錄文件的結構
(1)目錄也是一種文件
(2)目錄文件的結構:rest

 

文件名1 inode號碼1
文件名2 inode號碼2
........ ........

 

每一個 inode 都有一個號碼,操做系統用 inode 號碼來識別不一樣的文件
 Linux 系統內部不使用文件名,而使用 inode 號碼來識別文件。對於系統來講,文件名
只是 inode 號碼便於識別的別稱。blog


4.inode 的號碼
(1)系統內部打開文件的步驟:
 1>系統找到這個文件名對應的 inode 號碼
 2>經過 inode 號碼,獲取 inode 信息
 3>根據 inode 信息,找到文件數據所在的 block,讀出數據
 inode 通常爲 128 字節或 256 字節,每一個 inode 中都記錄着文件所在的 block 號,每條記錄着 block 號的信息佔用 4 字節。inode 中關於 block 號的記錄一共包含有 12 個直接、1 個間接、1 個雙間接和 1 個三間接。
 12 個直接鏈接,共佔用 48 字節磁盤空間,包含着 12 個直接指向 block 號的信息,若此文件系統默認的 block 大小爲 4KB,則僅僅能夠指向 12*4=48KB 大小的文件內容,然而咱們的文件若較大時,則須要使用到更多的 block,確定要多於 12 個 block,進而有間接、雙間接和三間接。
 間接指的是,inode 中所記錄這 4 字節的內容,所指向一個 block,這個block中存放的不是真是的文件內容,而是真實文件所存放位置的block號信息,若每一個block大小爲 4KB,那麼能夠存放 1024 個 block 號信息,1 個間接能夠存放的文件大小爲:1024*4=4096KB
 雙間接則能夠存放更大的文件內容,即在間接的基礎上再進行間接,若此時 block大小爲默認的4KB,則1個雙間接能夠存放的文件內容大小爲:1024*1024*4=4096MB
 三間接即在雙間接的基礎上在進行間接,若此時 block 大小爲默認的 4KB,則 1 個三間接能夠存放的文件內容大小1024*1024*1024*4=4096GB
也就是說,在一個 block 大小默認爲 4KB 的文件系統中,一個文件最大存儲能夠達到 48KB+4096KB+4096MB+4096GB,約爲 4100GB。
(2)查看文件的 inode 號碼
 ls -i 文件名
 stat 文件名ci

 

當一個用戶在 Linux 系統中試圖訪問一個文件時,系統會先根據文件名去查找它的inode,看該用戶是否具備訪問這個文件的權限。若是有,就指向相對應的數據 block;若是沒有過,就返回 Permission denied(拒絕訪問)
(3)刪除指定 inode 號所對應的文件
(1)格式:find ./ -inum inode 號 -exec rm -i {} \; 
(2)示例:當文件名中包含特殊符號時咱們能夠刪除其 inode 號達到刪除文件的目的io

 

5.查看文件系統的inode與block的信息
xfs:df -i 設備名(文件系統已掛載時查詢,查詢 inode 總數與已用數量)
ext4:dumpe2fs -h 設備名(文件系統無需掛載)
ext4:tune2fs -l 設備名(文件系統無需掛載)table

 

6.格式化時指定文件系統的inode個數與block大小
(1)方法:
mkfs.ext4 -N inode 數 -b 塊大小(單位字節) 設備名基礎

 

7.解決 inode 耗盡致使的磁盤故障
(1)方法:
1>刪除不使用的文件
2>將文件備份,從新格式化此文件系統,指定較多的 inode 個數

 

8.硬連接(hard link)
(1)方法:ln 源文件 目標文件
(2)特色:
硬連接指向 inode,新生成的硬連接文件的 inode 號與源文件的 inode 號相同,不可針
對目錄進行硬連接,必須在同一文件系統內。刪除一個文件名,不影響另一個的訪問。

 

9.軟連接(soft link)
(1)方法:ln -s 源文件或目錄 目標文件或目錄
(2)特色:
軟連接指向文件名,新生成的軟連接文件的 inode 號與源文件不一樣,目錄也能夠生成軟
連接,軟連接文件與源文件能夠不在同一文件系統內,軟連接文件的內容是源文件的路徑,
讀取時系統會自動導向源文件,但當源文件移動或重命名時,軟連接將報錯。

10.硬連接和軟鏈接的對比:

 

  硬連接 軟連接
指向 inode 文件名
inode 號是否相同 相同 不一樣
是否能夠針對目錄 不可針對目錄 能夠針對目錄
能否跨文件系統 不可誇文件系統 可跨文件系統
刪除、重命名、移動源文件 不受影響 失效
建立命令 In 源文件 目標文件 In -s 源文件或目錄 目標文件或目錄

 

11.恢復誤刪除

執行恢復操做 1>經常使用選項: --inode 數值 指定從 inode 號爲多少開始顯示 --restore-file 文件名 恢復誤刪除的某個文件 --restore-all 恢復所有已刪除的文件 --after dtime 在某個時間點以後刪除的文件 --before dtime 在某個時間點以前刪除的文件