1. 簡介
Linux內(nèi)核支持眾多的文件系統(tǒng)類型,目前它可以讀寫(至少是讀)大部分的文件 系統(tǒng).Linux經(jīng)常與Microsoft Windows共存于一個系統(tǒng)或者硬盤中.Linux對 windows9x/NT的文件系統(tǒng)支持的很好,反之你想在windows下用Visual C++ 編程的同時能看一看Linux的GCC-HOWTO則必須得費點勁.本文試圖給你一個簡 單的幫助.
這份文件的作者是: Liu Jingwen liujw@ihepa.ac.cn
最新的版本v0.1及相應(yīng)軟件:
Web Site : http://www.ihepa.ac.cn/~liujw/ 目前只有中文版可以下載.
這份 HOWTO 是免費文件(free documentation); 你可以在FSF 出版的 GNU GPL 之規(guī)定下重新散播及/或修改它; 您可以自由決定適用 GPL 2.0 或之後的任何 版本.
希望這份文件的發(fā)布能對您有幫助, 但我們不提供任何保證, 即使是商業(yè)上或 某特殊用途的隱含保證亦然. 詳! 情請參見 GNU 一般公開授權(quán)書.
本文在不影響理解的前提下,不區(qū)分文件系統(tǒng)和分區(qū)的概念.
1. Linux 存取 FAT/FAT32/NTFS 分區(qū).
Linux 內(nèi)核應(yīng)至少支持 fat/msdos 文件系統(tǒng)(安裝后). Vfat文件系統(tǒng) 一般編譯為 Module , 可以用 modprobe vfat 裝入. Ntfs 在版本較高 的內(nèi)核里可以支持. 如果你用的是2.0.3?,就需要到這
ftp://sunsite.unc.edu/pub/Linux/system/filesystems/ntfs.tar.gz
下載一份回來, 然后 patch 到內(nèi)核中再編譯.
Fat/vfat 分區(qū)可以 mount 成可讀寫的文件系統(tǒng)(rw). Ntfs分區(qū)目前只 能mount 成只讀(ro)的文件系統(tǒng).
2. Microsoft 存取 ext2 分區(qū).
2.1. EXT2 TOOLS v1.1 EXT2 TOOLS 是一組在 DOS 下可以讓你讀 LINUX EXT2 文件系 統(tǒng)的工具包.它由以下程! 序組成: E2CAT 類似于 Linux 的 cat ? ?nbsp; E2CD 類似于 Linux 的 cd 命令 E2CP 類似于 Linux 的 cp 命令 E2LS 類似于 Linux 的 ls 命令 E2PART 列出硬盤的分區(qū)信息 E2PWD 類似于 Linux 的 pwd 命令
EXT2 TOOLS 是 GNU General Public License 軟件, 版權(quán)所有 (C) 1995 Claus Tondering (ct@login.dknet.dk), ext2tool_1_1.zip 可以從
ftp://sunsite.unc.edu/pub/Linux/system/filesystems/ext2/
處匿名下載.
現(xiàn)在所有的程序已在 GCC 下編譯, (DOS下)運行時需要 GO32 DOS 擴(kuò)展程序GO32.EXE. GO32.EXE 包含在 EXT2TOOLS 的發(fā)布中, 做為DJGPP 的一部分, GO32.EXE 還可以從
ftp://oak.oakland.edu/SimTel/venders/djgpp
匿名下載.
2.1.1. ! ;安裝 EXT2 TOOLS [MSDOS] >mkdir c:ext2l >pkunzip -d ext2tool_1_1.zip >dir
2.1.2. 運行 EXT2 TOOLS
在運行前設(shè)置環(huán)境變量:
>SET E2CWD=129:5 或 >SET E2CWD=129:5:234 | | | |__ 目錄的I節(jié)點號, 缺省為根I節(jié)點號2. | | |_____ EXT2文件系統(tǒng)的LINUX分區(qū). | |________ 物理硬盤的代號: | 0: A 軟驅(qū) | 1: B 軟驅(qū) | 128: 第一塊硬盤 | 129: 第二塊硬盤 |_____________ 環(huán)境變量
保證 GO32.EXE 在系統(tǒng) PATH 中. 運行 e2ls 命令就能列出第二塊硬盤的第五分區(qū)的文件系統(tǒng). 運行 e2part 129 命令能列出第二塊硬盤的分區(qū)情況.
2.1.3. EXT2 TOOLS 可以在 Microsoft&! nbsp;Windows3x/9x 下運行, Peeter Joot (peeter @accessv.com, peeter_joot@vnet.ibm.com) 把 EXT2 TOOLS 移植到 NT 上. EXT2 TOOLS 之 NT 版 ext2nt-1.06.tar.gz 可以從
ftp://sunsite.unc.edu/pub/Linux/utils/dos/
處下載,安裝和使用方法類似.
2.1.4 存在的問題
第三塊硬盤 (IDE) 和 SCSI 硬盤支持否因機(jī)器而異.可用與否 取決于系統(tǒng)是否依賴中斷13訪問硬盤.
2.1.5 命令用法 # Will translate into chinese soon. # Sorry for my laziness. E2CAT -----
SYNOPSIS E2CAT [-bt] pathname
DESCTIPTION The E2CAT program will copy the contents of the file identified by ext2 pathname to the standard output.
The following&! nbsp;options are available:
-b Binary mode. No translation performed.
-t Text mode (default). LF translated to CR/LF.
E2CD ----
SYNOPSIS E2CD pathname
DESCRIPTION The pathname must identify an ext2 directory. That directory is made the current working directory.
NOTE E2CD is a .BAT file that creates another .BAT file (called ___E2CD.BAT) that modifies the E2CWD envir- onment variable. It then executes ___E2CD.BAT and deletes it. (So beware if you already have a file called ___E2CD.BAT.) ! For use with 4DOS, an E2CD.BTM file& nbsp;is also included. 4DOS will use that instead of E2CD.BAT.
E2CP ----
SYNOPSIS E2CP [-bt] file1 file2
DESCTIPTION The E2CP program will copy the contents of the file identified by ext2 pathname 'file1' to the MSDOS file 'file2'.
The following options are available:
-b Binary mode (default). No translation performed.
-t Text mode. LF translated to CR/LF.
E2LS ----
SYNOPSIS E2LS [-adiltr] pathname ...
DESCRIPTION The pathnames may identify ext2 directories or files.&nb! sp; Wildcard characters (*, [], ?, etc.) may be used in a manner similar to what the Linux shell allows.
The E2LS program provides a directory listing of the specified pathnames in a manner similar to the Linux ls program.
The following options are supported:
-a Include file names starting with . In listing. -d List only pathname, even if it is a directory. -I Include inode number in listing. -l Produce a long listing. -t Sort by modification time. -r Reverse the sort order.
E2PART ------
SYNOPSIS E 2PART diskno
DESCRIPTION The E2PART program lists the partitions that are available on a particular physical disk. This program does not use the E2CWD environment variable, instead the disk number is given as an argument to the E2PART program.
BUGS The program is not very good at identifying MSDOS file systems.
E2PWD -----
SYNOPSIS E2PWD
DESCRIPTION The E2PWD program prints the current directory.
2.2. LREAD 2.3
另一個 DOS 下讀 LINUX EXT2 文件系統(tǒng)的軟件. LREAD 是 GPL 自由軟件! . V1.0 由 Jason Hunter and David Lutz開發(fā). V2.X 由 Werner Zimmermann 修改. Lread-2.23.zip 可以從
ftp://sunsite.unc.edu/pub/Linux/utils/dos/
處匿名下載.
2.2.1. 安裝 LREAD
十分簡單, 只要在 DOS 下把 LREAD-2.3.zip解開到相應(yīng)目錄, 就會發(fā)現(xiàn)原碼和二進(jìn)制程序 ldir 和 lread,一般無須編譯和配 置就能運行. LREAD 在windows 3x/9x 能運行.
2.2.3. 命令用法
命令 ldir [-h | -v] [-s/dev/hd..] [Linux_Directory] 列出 ext2 (文件系統(tǒng))目錄 選項: -h 幫助信息 -v 版本信息 -s 指定目錄所在的硬盤分區(qū),例如/dev/hda5.缺省值在 ldir.h 中指定.支持軟驅(qū):/dev/fd?.如果僅指定/dev/had 或 /dev/hdb, 不給出路經(jīng),ldir將要搜索? 飼魃系牡諞桓?nbsp; LINUX分區(qū).須指出,若省缺選項 -s/dev/.. ,ldir會用它在 編譯時預(yù)先指定的硬盤(通常為/dev/had).ldir支持SCSI硬 盤分區(qū).相應(yīng)上述選項可用/dev/sda和/dev/sda3. Linux_Directory 要列出的目錄名. 省略的話,則用'/'.全LINUX路經(jīng)名定界符 用'/'( NOT ''), 支持匹配符,大小寫敏感.
命令 lread [-h | v] [-s/dev/hd..] Linux_File [DOS_File]
列出Linux文件或復(fù)制到DOS中. 選項 -h 幫助信息 -v 版本信息 -s 參見ldir Linux_File 合法的 UNIX 源文件名. DOS_File 合法的 DOS 目的文件名. 省略的話, 輸出到 標(biāo)準(zhǔn)輸出(STDOUT)上.
2.3 目前最實用的 GPL 軟件是 FSDEXT2
Copyright (C) 1997 by Peter van Sebille. 此軟件只能在 win32 下運行, 可以把相應(yīng)的 linux ext2 分區(qū) mount! 成在windows下只讀的盤,使用極為方便.
2.3.1 安裝 FSDEXT2
展開 95ext2fs.zip 到一個目錄比如 c:fsdext, 運行 install.bat 或直接拷貝相關(guān)驅(qū)動程序到相應(yīng)目錄:
vext2d.vxd -> c:windowssystem tsdext2.vxd -> c:windowssystemiosubsys
添加 c:fsdext 到系統(tǒng) PATH 后重啟動.
2.3.2 Mount/Umount Linux Ext2 文件系統(tǒng)
運行c:fsdextmount.exe 命令就可以把 Linux ext2 分區(qū) mount 成邏輯分區(qū).
Mount /dev/hdb1 g 安上相應(yīng)分區(qū) | |__ DOS 邏輯盤符 d , e, f ... | |_________ Linux 下相應(yīng)設(shè)備名*
mount /u g 卸掉相應(yīng)分區(qū)
2.3.3. *存在的問題
假如你的PC有兩塊IDE硬盤和一個IDE光驅(qū).
硬? ?nbsp;| 插槽 | M/S | Linux 設(shè)備名 ---------------------------------------------------------------- 第一塊硬盤 IDE0 Master /dev/had 第二塊硬盤 IDE1 Master /dev/hdc 光驅(qū) IDE1 Slave /dev/hdd
想把 Linux ext2 分區(qū) /dev/hdc1 mount 到 windows 9X 下時必須用
mount /dev/hdb1 g
而不是
mount /dev/hdc1 g !!
2.3.4. 命令用法(mount /?) :
Ext2 file system mount for Windows 95 Version 0.17 by Peter van Sebille
Usage: MOUNT [[devicename] driverletter] [options] options: /r: relax partition ID check when mounting /u: unload drive (drive letter required) /d: get current&nb! sp;debug level /d=value: set current debug level /?: show usage
3. 比較
軟件 Microsoft 平臺 易用性 GPL ------------------------------------------------------------------ ext2 tool DOS/windows9x/NT ++ 是
lread DOS/windows9x ++ 是
95ext2fs windows9x +++ 是
|
|