当前位置:Linux教程 - Linux - 在Linux下使用DOS/Windows磁盘

在Linux下使用DOS/Windows磁盘

  对大多数Linux用户,特别是我等Linux爱好者来说,往往需要在Linux系统下使用DOS/Windows文档,这就涉及到如何在Linux环境下使用DOS/Windows磁盘的问题。下面从如何在Linux下使用DOS/Windows硬盘分区和软盘两个方面对这个问题作一个简单的介绍。

1.在Linux下使用DOS/Windows硬盘分区

  Linux有一个在根目录下启动的文件系统,根目录用一个斜线(/)表示。要在Linux下使用一个物理存储设备(如硬盘分区或CD-ROM),必须先把该设备安装成为Linux文件系统的一部分。

  可以用mount命令在Linux文件系统的指定目录(安装点)下手工安装设备。比如笔者的机器上安装了一块IDE硬盘,在上面安装有WindowsMe和Linux系统。WindowsMe的主分区(C盘)是该硬盘的第一个分区,也就是Linux下的/dev/hda1。为了在Linux系统下访问WindowsMe的C盘,笔者在Linux的根目录下建立了名为/mswin/c:目录,并用如下的带分区类型选项 -t msdos(WindowsNT/2000的类型选项为 -t ntfs)的mount命令:

  mount -t msdos /dev/hda1 /mswin/c:

  安装该分区。现在WindowsMe的C盘就被映射到了Linux的/mswin/c:目录下,用户可以通过该目录访问WindowsMe的C盘上的数据,并且可以把数据保存到该目录下,以使WindowsMe可以在C盘上访问这些数据,达到在两个系统之间交换数据的目的。

  如果用户经常需要在Linux下访问DOS/Windows分区(笔者在使用Linux时多数情况下都用XMMS听保存在WindowsMe的D盘(/dev/hda5)上的MP3音乐),则可以通过在/etc/fstab文件中添加一行数据,使Linux在启动时自动安装该分区。比如,在笔者系统的fatab文件末尾添加了如下一行:

  /dev/hda5 /mswin/d: msdos defaults 0 0

  其中第一个参数指明了要安装的分区,第二个参数指定了安装点,第三个参数指定了分区类型,第四个参数表示按缺省方式安装。在以后启动Linux后,就可以在目录/mswin/d:下访问WindowsMe的D盘上的数据了。

  笔者曾经试用过几个Linux版本。有的Linux版本的安装程序会提示用户在安装的时候设置需要在Linux下访问的DOS/Windows分区。在使用冲浪Xteam3.0的时候,可以安装FAT32分区和NTFS分区,但是可能是内码不兼容的原因,在Linux下Windows文件的中文名字显示为乱码。更让人难以理解的是,在Redhat Linux 7.0下居然不支持NTFS分区。

2.在Linux下使用DOS软盘

  正如在可以在Linux系统中安装DOS硬盘分区一样,也可以安装DOS软盘。在缺省状态下,Linux定义了通用的软盘设备名:

  /dev/fd0,它是A驱动器(第一个软驱)

  并且系统通常还建立了安装点/mnt/floppy。因此,用如下命令就可以把DOS软盘安装到/mnt/floppy:

  mount -t msDOS /dev/fd0 /mnt/floppy

  安装成功后,就可以用常规的Linux命令访问DOS软盘。当要取出软盘时,首先应该卸载软盘。用umount命令卸载设备,如下所示:

  umount /dev/fd0

  但是,如果要频繁地更换软盘,上面的过程就显得十分繁琐。因此,通常都用mtools软件包来访问软盘。mtools软件包可以执行大多数常用的DOS命令,这些命令名除了要在每个命令前添加m前缀外,与DOS中相同。例如命令

  mdir a:
  mcd ""a:sample""
  mcopy ""a:*.dat"" .

  分别列出A盘上的文件、进入A盘的sample目录、将A盘上的所有以.dat为扩展名的文件拷贝到Linux的当前目录下。需要说明的是,上面之所以用到了双引号,是为了避免shell错误地解释通配符""*""和DOS地目录分隔符""/""。

  在Linux下格式化DOS软盘的时候,尽管mtools工具包提供了mformat实用程序,它可以格式化用于DOS的软盘。但是不像DOS的format命令那样,mformat命令需要执行两步过程来准备软盘:用fdformat命令(Linux命令)低级格式化软盘;用mformat a:命令把DOS文件系统放在低级格式化过的软盘上。