现 在 所 有 的 程 序 已 在 GCC 下 编 译, (DOS 下) 运 行 时 需 要 GO32 DOS
扩 展 程 序GO32.EXE. GO32.EXE 包 含 在 EXT2TOOLS 的 发 布 中,做 为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
在运行前设置环境变量:
> SET E2CWD=129:5
或
> SET E2CWD=129:5:234
| | | |__目录的i节点号,缺省为根i节点号2.
| | |_____ EXT2文件系统的LINUX分区.
| |________物理硬盘的代号:
| 0: A软驱
| 1: B软驱
| 128:第一块硬盘
| 129:第二块硬盘
|_____________环境变量
保证 GO32.EXE 在系统PATH中.
运行 e2ls 命令就能列出第二块硬盘的第五分区的文件系统.
运行 e2part 129 命令能列出第二块硬盘的分区情况.
2.1.3. EXT2 TOOLS 可以在Microsoft Windows3x/9x 下运行, Peeter Joot ([email protected], [email protected])把EXT2 TOOLS移植到 NT上. EXT2 TOOLS之 NT版ext2nt-1.06.tar.gz可以从
ftp://sunsite.unc.edu/pub/Linux/utils/dos/ 处 下 载, 安 装 和 使 用 方 法 类 似.
2.1.4 存在的问题
第三块硬盘(IDE)和SCSI硬盘支持否因机器而异.可用与否取决于系统是否依赖中断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 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 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.
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
E2PART 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 文件系统的软件. LREAD是GPL自由软件. v1.0由Jason Hunter and David Lutz 开 发. 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 解开到相应目录,就会发现原码和二进制
程序ldir和lread,一般无须编译和配置就能运行. LREAD在windows 3x/9x 能运行.
2.2.3. 命 令 用 法
命令 ldir [-h | -v] [-s/dev/hd..] [Linux_Directory]列出 ext2 (文件系统)目录
---- 选 项:
---- -h 帮助信息
---- -v 版本信息
---- -s 指定目录所在的硬盘分区,例如/dev/hda5. 缺省值在ldir.h 中指定. 支持软 驱:/dev/fd?. 如果仅指定/dev/hda 或 /dev/hdb, 不给出路经,ldir 将要搜索此驱动器 上的第一个LINUX分区. 须指出, 若省缺选项 -s/dev/...,ldir 会用它在编译时预先指定的硬盘( 通 常 为/dev/hda).ldir 支持SCSI 硬盘分区. 相应上述选项可用/dev/sda
和/dev/sda3.Linux_Directory 要列出的目录名. 省略的话, 则 用'/'. 全LINUX 路经 名定界符用'/'( NOT '\'), 支持匹配符,大小写敏感.
命令 lread [-h | v] [-s/dev/hd..] Linux_File [DOS_File]
列出Linux文件或复制到DOS中.
选项
-h帮助信息
-v版本信息
-s参见ldir
Linux_File 合法的 UNIX源文件名. DOS_File 合法的 DOS目的文件名.省略的话,输出到标准输出(STDOUT)上.
2.3 目前最实用的GPL软件是FSDEXT2
Copyright (C) 1997 by Peter van Sebille.
此软件只能在win32下运行,可以把相应的linux ext2 分区mount 成在windows下只 读的盘,使用极为方便.
2.3.1 安 装 FSDEXT2
展开95ext2fs.zip 到一个目录比如 c:\fsdext,运行install.bat 或直接拷贝相关 驱动程序到相应目录:
vext2d.vxd - > c:\windows\system
tsdext2.vxd - > c:\windows\system\iosubsys
添加 c:\fsdext到系统 PATH后重启动.
2.3.2 Mount/Umount Linux Ext2 文件系统
运行c:\fsdext\mount.exe命令就可以把 Linux ext2分区mount成逻辑分区.
mount /dev/hdb1 g 安上相应分区
| |__ DOS逻辑盘符 d , e, f ...
|
|_________ Linux下相应设备名*
mount /u g 卸掉相应分区
2.3.3. * 存在的问题
假如你的PC 有两块IDE 硬盘和一个IDE光驱.
硬件 | 插槽 | M/S | Linux设备名
------------------------------------------------
第一块硬盘 IDE0 Master /dev/hda
第二块硬盘 IDE1 Master /dev/hdc
光驱 IDE1 Slave /dev/hdd
想把Linux ext2分区/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 debug level
/d=value: set current debug level
/?: show usage
3. 比 较
软件Microsoft平台 易用性 GPL
-----------------------------------------------
ext2 tool DOS/windows9x/NT 是
lread DOS/windows9x 是
95ext2fs windows9x 是