fbpx
维基百科

ReiserFS

ReiserFS,是一种文件系统格式,作者是汉斯·瑞塞尔(Hans Reiser)及其團隊Namesys,1997年7月23日他将ReiserFS文件系统在互联网上公布。Linux内核从2.4.1版本开始支持ReiserFS。

ReiserFS
开发者Namesys
全称ReiserFS
发布2001 (Linux 2.4.1)
分区标识Apple_UNIX_SVR2Apple Partition Map
0x83(MBR)
EBD0A0A2-B9E5-4433-87C0-68B6B72699C7(GPT)
结构
目录内容B+ tree
文件分配Bitmap
限制
最大文件尺寸8 TiB
最大文件数量232(~4 billion)
最长文件名4032 bytes, limited to 255 by Linux VFS
最大卷容量16 TiB
文件名字符集All bytes except NUL and '/'
功能
日期记录modification (mtime), metadata change (ctime), access (atime)
日期范围December 14, 1901年12月14日 - 2038年1月18日
日期分辨率1s
岔流Extended attributes
文件系统权限Unix permissions, ACLs and arbitrary security attributes
透明压缩No
透明加密No
操作系统支持Linux

ReiserFS的命名是源自作者Hans Reiser的姓氏,這個日誌型檔案系統發展比ext2/3晚近許多。在技術上使用的是B*-tree為基礎的檔案系統,其特色為能很高效率地處理大型檔案到眾多小檔案;實務上ReiserFS在處理檔案小於1k小檔案時,甚至效率可以比ext3快約10倍。

ReiserFS原先是Novell公司的SuSE Linux Enterprise採用的預設檔案系統,直到2006年10月12日其宣稱將在未來的版本改採ext3為預設[1]。Novell公司否認這與Hans Reiser被控殺妻案有任何關聯[2]

功能特點

與本文撰寫的同期文件系統相比,ReiserFS有著許多其它文件系統所沒有的優點。舉例來說:

  • Metadata-only journaling(also block journaling, since Linux 2.6.8), its most-publicized advantage over what was the stock Linux file system at the time, ext2.
  • 線上調整大小(只能變大,線上、離線代表的是掛載中或非掛載中),可以使用磁碟管理機制如LVM的方式來修改,也可以不用。因為這個緣故,所以Namsys公司有提供在離線時調整大小的工具(可以調整放大空間,也可以縮小空間)。
  • 後綴包裝(Tail Packing)減少內部磁碟空間分布破碎的情況。這個功能與別的檔案系統相比有著相當明顯的進步,另外值得一提的是,在Reiser4的發展裡頭,這個功能有更強大的進展,將同時保留長處並且不會影響到效能。

效能表現

和同樣在Linux Kernel 2.4版本下的ext2及ext3相比較,處理4KB以下的小檔案時(tail packing enable),ReiserFS的速度快了10到15倍[3]。這對於網路新聞服務、HTTP快取、及電子郵件系統等需要處理大量小檔案的網路服務是相當重要的功能改進。

然而因為ReiserFS還在使用BKL(the Big Kernel Lock)這個global kernel-wide lock,在某些情況下,它無法良好的在某些多核心系統上面執行scale動作,這是因為某些核心的動作一次只能由一個核心進行動作。

批評

有些目錄的操作在ReiserFS上面並不同步,(包括像unlink (2)),可能會導致一些重度依賴檔案鎖(file-based lock)機制的應用程式上面資料的毀損,這些應用程式像是MTA的qmail、postfix等等,如果這些應用程序在磁碟同步之前就有可能造成這樣的損害。

目前還沒有磁碟整理的應用程式是可以對ReiserFS這個檔案系統進行動作,雖然已經有工具是在做自動複製檔案內容以期獲得更多連續性的區塊,在Reiser4釋出的檔案系統會有一個repacker的工具可以對磁碟破碎的情況最佳化。

磁區檢查

ReiserFS索引樹重建的的過程曾經引發過不少的爭議:如果檔案系統被毀壞的很嚴重,那內部的索引樹就失效了,再執行索引樹重建的操作更可能會讓讓這個毀壞的情況變得更嚴重、像是把索引指向不可預期的內容(8)。不過這個操作並不是正常操作的一部份,也不是一個正常的檔案系統檢查,在這種操作執行之前,就應該會有明確提示出現,由管理員確認後才可能發生。

儘管如此,為避免錯誤引導檔案系統的處理,我們並不建議在一個ReiserFS v3的分割區上面儲存一個原始未經加密或壓縮改變形態的ReiserFS v3的影像檔。在格式化一個現有的ReiserFS v3的分割區也可能會留下資料困擾重建的操作並且讓舊系統上的檔案重現。這個漏洞讓惡意的使用者有機會困擾重建程序。在metadata經過檔案系統檢查之後還會維持舊有的狀態,再破壞這個地方就會讓檔案內容以不可預期的方式結合包含著檔案系統的metadata。

好消息是,它的下一代繼承者,ReiserFS 4克服了這一點問題點。

較早的爭議問題

ReiserFS在Linux kernel 2.4.16之前的版本被Namesys視作不穩定的版本,不被當成可以使用產品,特別是在NFS的應用上面。ReiserFS早先的應用(這裡指的是Linux kernel 2.6.2之前)被看作是一堆地雷。像是,檔案很容易就會在系統崩潰的時候意外的接上一堆沒有用的垃圾,不過現在在ReiserFS裡面的日誌型檔案系統的應用已經有一定的穩定。

架構設計

ReiserFS在一个单一复合B+树中存储文件的亚数据信息(stat item)、目錄文件信息(directory items)、索引节点中的块列表(indirect items),这些信息都有唯一的标识号作为B+树的索引值。分配给B+树节点磁盘块称为“格式化的内部块”。分配给叶子节点的磁盘块称为“格式化的叶子块”(叶子节点中的信息是首尾相连,紧密存储的)。其他的块一概称为“未格式化块”,用来保存文件内容。如果一个节点带有太多目录项或者太大块列表的目錄文件信息,就会被拆分到它右边的邻居节点中。所有的块分配过程会被跟踪记录到位于固定位置的空闲块位图中。

相對的,ext2和其它Berkeley FFS-like的檔案系統則只簡單的使用一個固定的方程式來計算節點的劃分大小,這樣的方式限制了檔案系統可以包含的檔案的數量。大多數這種類型的檔案系統也簡單地以线性表的方式儲存目录项,在檔案搜尋及更新的時間随文件系统的规模增加而线性增加。在ReiserFS中的单一B+树設計避免了這些問題,而且更具有彈性。

註解參照

  1. ^ Shankland, Stephen. Novell makes file storage software shift. Business Tech (cnet News.com). 2006-10-12 [2009-01-09]. (原始内容存档于2013-01-19). 
  2. ^ Mahoney, Jeff. . 2006-10-04 [2010-05-16]. (原始内容存档于2006-10-24). 
  3. ^ Robbins, Daniel. Common threads: Advanced filesystem implementor's guide, Part 7. 2001-11-01 [2012-10-08]. (原始内容于2014-04-24). 

外部連結

  • ReiserFS and Reiser4 wiki(页面存档备份,存于互联网档案馆
  • (archived version from 2007 October)
  • Theodore Ts'o the ReiserFS block journaling implementation
  • convertfs(页面存档备份,存于互联网档案馆),a utility which performs in-place conversion between any two file systems with sparse file support
  • An overview of the ReiserFS
  • Florian Buchholz's ,a very detailed description of the ReiserFS disk structures.
  • Gentoo Forum Link(页面存档备份,存于互联网档案馆) - Discussion on ReiserFS fragmentation, including a script for measuring fragmentation and defragmenting files.
  • Windows utilities to access ReiserFS: &
  • Filesystems(ext3, reiser, xfs, jfs)comparison on Debian Etch [1](页面存档备份,存于互联网档案馆

reiserfs, 提示, 此条目的主题不是refs, 是一种文件系统格式, 作者是汉斯, 瑞塞尔, hans, reiser, 及其團隊namesys, 1997年7月23日他将文件系统在互联网上公布, linux内核从2, 1版本开始支持, 开发者namesys全称发布2001, linux, 分区标识apple, unix, svr2, apple, partition, 0x83, ebd0a0a2, b9e5, 4433, 87c0, 68b6b72699c7, 结构目录内容b, tree文件分配bitm. 提示 此条目的主题不是ReFS ReiserFS 是一种文件系统格式 作者是汉斯 瑞塞尔 Hans Reiser 及其團隊Namesys 1997年7月23日他将ReiserFS文件系统在互联网上公布 Linux内核从2 4 1版本开始支持ReiserFS ReiserFS开发者Namesys全称ReiserFS发布2001 Linux 2 4 1 分区标识Apple UNIX SVR2 Apple Partition Map 0x83 MBR EBD0A0A2 B9E5 4433 87C0 68B6B72699C7 GPT 结构目录内容B tree文件分配Bitmap限制最大文件尺寸8 TiB最大文件数量232 4 billion 最长文件名4032 bytes limited to 255 by Linux VFS最大卷容量16 TiB文件名字符集All bytes except NUL and 功能日期记录modification mtime metadata change ctime access atime 日期范围December 14 1901年12月14日 2038年1月18日日期分辨率1s岔流Extended attributes文件系统权限Unix permissions ACLs and arbitrary security attributes透明压缩No透明加密No操作系统支持LinuxReiserFS的命名是源自作者Hans Reiser的姓氏 這個日誌型檔案系統發展比ext2 3晚近許多 在技術上使用的是B tree為基礎的檔案系統 其特色為能很高效率地處理大型檔案到眾多小檔案 實務上ReiserFS在處理檔案小於1k小檔案時 甚至效率可以比ext3快約10倍 ReiserFS原先是Novell公司的SuSE Linux Enterprise採用的預設檔案系統 直到2006年10月12日其宣稱將在未來的版本改採ext3為預設 1 Novell公司否認這與Hans Reiser被控殺妻案有任何關聯 2 目录 1 功能特點 2 效能表現 3 批評 3 1 磁區檢查 3 2 較早的爭議問題 4 架構設計 5 註解參照 6 外部連結功能特點 编辑與本文撰寫的同期文件系統相比 ReiserFS有著許多其它文件系統所沒有的優點 舉例來說 Metadata only journaling also block journaling since Linux 2 6 8 its most publicized advantage over what was the stock Linux file system at the time ext2 線上調整大小 只能變大 線上 離線代表的是掛載中或非掛載中 可以使用磁碟管理機制如LVM的方式來修改 也可以不用 因為這個緣故 所以Namsys公司有提供在離線時調整大小的工具 可以調整放大空間 也可以縮小空間 後綴包裝 Tail Packing 減少內部磁碟空間分布破碎的情況 這個功能與別的檔案系統相比有著相當明顯的進步 另外值得一提的是 在Reiser4的發展裡頭 這個功能有更強大的進展 將同時保留長處並且不會影響到效能 效能表現 编辑和同樣在Linux Kernel 2 4版本下的ext2及ext3相比較 處理4KB以下的小檔案時 tail packing enable ReiserFS的速度快了10到15倍 3 這對於網路新聞服務 HTTP快取 及電子郵件系統等需要處理大量小檔案的網路服務是相當重要的功能改進 然而因為ReiserFS還在使用BKL the Big Kernel Lock 這個global kernel wide lock 在某些情況下 它無法良好的在某些多核心系統上面執行scale動作 這是因為某些核心的動作一次只能由一個核心進行動作 批評 编辑有些目錄的操作在ReiserFS上面並不同步 包括像unlink 2 可能會導致一些重度依賴檔案鎖 file based lock 機制的應用程式上面資料的毀損 這些應用程式像是MTA的qmail postfix等等 如果這些應用程序在磁碟同步之前就有可能造成這樣的損害 目前還沒有磁碟整理的應用程式是可以對ReiserFS這個檔案系統進行動作 雖然已經有工具是在做自動複製檔案內容以期獲得更多連續性的區塊 在Reiser4釋出的檔案系統會有一個repacker的工具可以對磁碟破碎的情況最佳化 磁區檢查 编辑 ReiserFS索引樹重建的的過程曾經引發過不少的爭議 如果檔案系統被毀壞的很嚴重 那內部的索引樹就失效了 再執行索引樹重建的操作更可能會讓讓這個毀壞的情況變得更嚴重 像是把索引指向不可預期的內容 8 不過這個操作並不是正常操作的一部份 也不是一個正常的檔案系統檢查 在這種操作執行之前 就應該會有明確提示出現 由管理員確認後才可能發生 儘管如此 為避免錯誤引導檔案系統的處理 我們並不建議在一個ReiserFS v3的分割區上面儲存一個原始未經加密或壓縮改變形態的ReiserFS v3的影像檔 在格式化一個現有的ReiserFS v3的分割區也可能會留下資料困擾重建的操作並且讓舊系統上的檔案重現 這個漏洞讓惡意的使用者有機會困擾重建程序 在metadata經過檔案系統檢查之後還會維持舊有的狀態 再破壞這個地方就會讓檔案內容以不可預期的方式結合包含著檔案系統的metadata 好消息是 它的下一代繼承者 ReiserFS 4克服了這一點問題點 較早的爭議問題 编辑 ReiserFS在Linux kernel 2 4 16之前的版本被Namesys視作不穩定的版本 不被當成可以使用產品 特別是在NFS的應用上面 ReiserFS早先的應用 這裡指的是Linux kernel 2 6 2之前 被看作是一堆地雷 像是 檔案很容易就會在系統崩潰的時候意外的接上一堆沒有用的垃圾 不過現在在ReiserFS裡面的日誌型檔案系統的應用已經有一定的穩定 架構設計 编辑ReiserFS在一个单一复合B 树中存储文件的亚数据信息 stat item 目錄文件信息 directory items 索引节点中的块列表 indirect items 这些信息都有唯一的标识号作为B 树的索引值 分配给B 树节点磁盘块称为 格式化的内部块 分配给叶子节点的磁盘块称为 格式化的叶子块 叶子节点中的信息是首尾相连 紧密存储的 其他的块一概称为 未格式化块 用来保存文件内容 如果一个节点带有太多目录项或者太大块列表的目錄文件信息 就会被拆分到它右边的邻居节点中 所有的块分配过程会被跟踪记录到位于固定位置的空闲块位图中 相對的 ext2和其它Berkeley FFS like的檔案系統則只簡單的使用一個固定的方程式來計算節點的劃分大小 這樣的方式限制了檔案系統可以包含的檔案的數量 大多數這種類型的檔案系統也簡單地以线性表的方式儲存目录项 在檔案搜尋及更新的時間随文件系统的规模增加而线性增加 在ReiserFS中的单一B 树設計避免了這些問題 而且更具有彈性 註解參照 编辑 Shankland Stephen Novell makes file storage software shift Business Tech cnet News com 2006 10 12 2009 01 09 原始内容存档于2013 01 19 Mahoney Jeff Announcement was unrelated to Reiser s legal troubles 2006 10 04 2010 05 16 原始内容存档于2006 10 24 Robbins Daniel Common threads Advanced filesystem implementor s guide Part 7 2001 11 01 2012 10 08 原始内容存档于2014 04 24 外部連結 编辑ReiserFS and Reiser4 wiki 页面存档备份 存于互联网档案馆 Namesys web site archived version from 2007 October Theodore Ts o critiques the ReiserFS block journaling implementation convertfs 页面存档备份 存于互联网档案馆 a utility which performs in place conversion between any two file systems with sparse file support An overview of the ReiserFS on disk format Florian Buchholz s The structure of the Reiser file system a very detailed description of the ReiserFS disk structures Gentoo Forum Link 页面存档备份 存于互联网档案馆 Discussion on ReiserFS fragmentation including a script for measuring fragmentation and defragmenting files Reiser4 Future Vision Windows utilities to access ReiserFS RFSGUI amp RFSTOOL Filesystems ext3 reiser xfs jfs comparison on Debian Etch 1 页面存档备份 存于互联网档案馆 取自 https zh wikipedia org w index php title ReiserFS amp oldid 64191738, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。