歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 如何在windows裡掛載linux分區

如何在windows裡掛載linux分區

日期:2017/2/28 18:02:46   编辑:Linux教程

在 Linux 下訪問 Win 分區,不管是 fat 還是 ntfs 已經比較完善了,而且方法統一,文檔豐富,驅動也很容易找。
但在 Win 下訪問 Linux 各種分區就很不容易,只讀然後導出文件的工具還好,無縫訪問工具更難找。
所謂“無縫訪問”,seamless access ,就是掛載到本地文件系統,不需要導出後才能讀或寫。以 iso 為例,比較用 winiso 導出文件再讀,用 daemon 掛載成虛擬光驅就能直接讀了,這就是“無縫訪問”。
Win 實現無縫訪問本地 ext2/3 xfs reiserfs 分區,一般是通過 win 的 IFS KIT 對各種文件系統分別實現驅動來實現的。一般是把一個分區映射成一個比如 J: K: 等的盤符。
這有一個很嚴重的問題,許可證問題,MS 的 IFS KIT 是商業軟件,不能和 Linux 下 GPL 的 ext2/3 reiserfs xfs jfs 驅動代碼編譯到一起的。要法律上沒有瑕疵,只有兩種方案,重新發明和 IFS 同功能的接口,或者重新發明 linux 文件驅動。法律上,只能用“淨室方法”在完全沒有接觸過替代代碼的情況下,通過反向工程作出。
開源的同志們已經作出了 a free version ntifs.h 。許多開源驅動都是用這個的,所以不叫 IFS 叫 FSD 。只要用 GPL,就可以直接用 Linux kernel 裡的文件驅動代碼。
但許多不開源的,不管是商業還是免費,我覺得裡面用的文件系統驅動代碼很可疑。
還有一些驅動,不合法的用了 MS 的東西。
各種文件系統的支持程度大不一樣,ext2/3 只讀訪問比較完善,驅動較多,reiserfs 較少,xfs 只有一個不能工作的雛形,ufs 有兩個驅動,jfs 根本就沒聽說過有。
ext2 的驅動有 Ext2IFS , FSDExt2 , Ext2FSD , ext2fsnt 等等。
ext2/3 可以用 ltools , explorer2fs 導出 ext2/3 中的文件,不能無縫訪問。
paragon-software.com 就是 partition manager 的公司,有個 Partition Explorer 可以導入,我記得以前好像有驅動的。
reiserfs 驅動只有 rfsd ,導入工具可以用 ltools + GUI 和 rfstool + GUI 。
Total Commander Plugins 支持 ext2/3 和 reiserfs ,據說就是兩個開源驅動的組合,所以還是 GPL 的。
xfs 在 win 下有個 xfs32 ,只是雛形,連導入都不能工作。
usf 驅動有 ffsdrv 和 ufs2tools 。
這些軟件肯定是要能獨得,至於能不能寫,我認為任何宣稱可寫的都值得懷疑,我是不會測試寫的,就像 Linux 下我也不會寫 ntfs 。至於 fat ,那不是現代的文件系統,結構很簡單,我相信 linux 裡的實現。
而 crossmeta 雖然用了 MS IFS 和 GPL 文件系統代碼,卻用一種巧妙的方式避開了法律問題,而且更具擴展性。
首先, crossmeta 用 MS IFS 實現了一個商業的核心程序,掛載了一個 V: 盤符的核心文件系統,布局類似 *nix 系統。在這個系統之上,提供另一個文件系統接口,把其他文件系統掛載到 V:\mnt\xxx 裡。
支持 NTFS, FAT and CDFS ,還有 Win 不支持的 NFS version 2 and 3 over UDP 。
而 BSD License 的 UFS/FFS 代碼也已經集成。
這個核心是不開源,但免費的。
然後,用自己的文件系統接口,加上 Linux kernel 裡的文件驅動代碼,作出 EXT2, XFS 和 Reiserfs 的驅動,這是 GPL 的。
Win 的文件系統接口跟 Linux 的是大不一樣的,而 crossmeta 的文件系統接口可以更接近 Linux ,移植 Linux 文件系統會比較方便。加上 jfs 支持也不會太難。

Copyright © Linux教程網 All Rights Reserved