NILFS是一套日本人所發展出來的檔案系統,特色就是log structure,
log structure file system 就是說整個檔案系統是以「log」的方式來紀錄檔案的改變,
每次對檔案系統的寫入,會像寫入log一樣,直接附加在後面而不會對原本的block進行複寫,好處有幾點:

  1. 每次的改變都被紀錄著,當crash發生時,要回覆很快
  2. 即使是大量的隨機寫入,因為log structure的緣故,他依然是循序寫入,減少磁碟的seek time跟rotation delay

因此,很明顯的缺點就是:

  1. 進行循序讀取的時候,整份檔案可能散落在磁碟的每個地方,要一一找回來
  2. 當這個log寫滿(磁碟已滿),必須進行回收之前被覆寫掉的空間的動作,這個額外的負擔可能會很大

總之,這是一類很特別的檔案系統,而且很適合用在flash上面,讓每個block的壽命達到近乎「完美」的分佈
不會有block死得太快~另外一方面來說,flash的seek time很小,更不會有rotation delay,
因此log structure檔案系統在一般磁碟上的overhead可以減到最低。

不過今天要介紹的NILFS是用在一般磁碟上的檔案系統
官方網站在http://www.nilfs.org/en/index.html
試用的感覺還不錯,而且在2009/4/8 NILFS已經被merge到Linux核心2.6.30-rc1中了,恭喜他們!

整個檔案系統的架構、layout在官方網站link頁面的paper中有詳細介紹。

Debian套件庫裡面已經有NILFS的套件了,你可以直接把他安裝進來,分別是

  1. nilfs2-modules-2.6-amd64
  2. nilfs2-source
  3. nilfs2-tools

版號也許跟核心、cpu架構有關,但總之是這幾個套件,安裝好之後,先為磁碟割出一個分割區
接著進行格式化

$ sudo mkfs.nilfs2 /dev/sda2

再進行掛載

$ sudo mount -t nilfs2 /dev/sda2 /mnt/nilfs2

完成。XDD
之後有機會繼續介紹其他工具的使用方式。

創作者介紹

koukai的Blog

koukaipan 發表在 痞客邦 PIXNET 留言(0) 人氣()