1. 程式人生 > >10.檔案系統的簡單操作(hard link soft link)

10.檔案系統的簡單操作(hard link soft link)

df : 列出檔案系統的整體磁碟使用量
    -a : 列出所有檔案系統
    -k : kb
    -m : mb
    -h : g
    -i : 以 inode 數量顯示


du : 評估檔案系統的磁碟使用量(常用於評估目錄所佔容量)
    -a  所有
    -s 列出總量

連線檔案

Linux 下面有2中方式連線檔案: 一種類似windows 快捷方式功能,迅速的連線到目標檔案或目錄;
 另一種則是通過檔案系統的 inode 連線產生新檔名,而不是新檔案,這種叫硬連線。
hard link : 
  每個檔案都有一個inode,檔案的內容由inode的記錄來指向;
  想要讀取該檔案,必須經過目錄記錄的檔名指向正確的inode號碼此案讀取;
  也就是說,檔名只與目錄有關,但檔案內容和inode有關;
  也就是說,可能多個檔名對應一個inode,hard link
只是某個目錄下面新建一條檔名連線到某個 inode 號碼的關聯記錄而已。

這裡寫圖片描述

1 變成 2 ,這個欄位成為 連線,表示 有多少個檔名連線到這個 inode 號碼。

好處:安全,如果你將任何一個 檔名刪除,其實inode 和block還都是存在的。

一般來說,使用 hard link 設定連線檔案時,磁碟空間和inode數目都不會改變。它只是在某個目錄下面的block多寫入一個關聯資料而已,既不會增加inode也不會損耗block.

限制:
    不能跨檔案系統;
    不能連線到目錄,這是因為使用 hard link連線到目錄,連線的資料需要連同被連線目錄下面的所有資料都建立連線。
symbolic link(符號連線) :
    基本上,符號連線就是建立一個獨立的檔案,而這個檔案會讓資料的讀取指向它連線的那個檔案的檔名。當原始檔被刪除之後,symbolic link 的檔案就會打不開。實際上是找不到原始檔的檔名。

這裡寫圖片描述

2個檔案指向不同的inode。大小為3 ,因為 aaa 每個英文1bytes
ln [-sf] 原始檔  目標檔案
    -s : 如果不加任何引數進行連線,就是hard link,-s 就是symbolic link
    -f : 如果目標檔案存在,就主動刪除後再建立

修改軟連線,其實是修改原始檔!!!

這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述

新建目錄連線數為2,上層目錄連線數會加1.

磁碟的分割槽

新增一塊硬碟應該:

 1. 對磁碟進行分割槽
 2. 對該分割槽進行格式化,以建立可用的檔案系統
 3. 對新建的檔案系統進行檢查
 4. 在Linux 系統上,需要建立掛載點(也就是目錄),並將它掛載上來
磁碟分割槽:

fdisk [-l] 裝置名稱

這裡寫圖片描述

磁碟格式化:
    mkfs [-t] 裝置檔名
    -t 可以接檔案系統的格式,如 ext3,ext2,vfatmke2fs [-b block大小] [-i block大小] [-L 卷標] [-cj] 裝置
磁碟檢查: fsck,badblocks
    fsck [-t 檔案系統] [-ACay] 裝置
注意:被檢查的分割槽不能是掛載狀態

掛載點目錄下會存在 lost+found 目錄。當你使用fsck檢查檔案系統後,若有問題,有問題的資料會被放置在這個目錄。


badblocks [-svw] 裝置名稱 

磁碟的掛載與解除安裝

mount -a
mount [-l]  // 檢視已掛載檔案系統
mount [-t 檔案系統][-L Labei名][-o 額外選項]
mount 裝置名  掛載點

//將 /dev/hdc6 掛載到 /mnt/hdc6 上面
mkdir /mnt/hdc6
mount /dev/hdc6 /mnt/hdc6

掛載 CD 或者 DVD
mount -t iso9660 /dev/cdrom /media/cdrom

格式化:
 mkfs -t vfat /dev/fd0  //格式化為 vfat 檔案系統


重新掛載根目錄,並加入引數
mount -o remount,rw,auto/
解除安裝裝置:
 umount [-fn] 裝置名或掛載點

設定開機掛載

開機掛載 /etc/fstab 和 /etc/mtab