不同的操作系统使用不同的文件系统格式,MS-DOS支持FAT16文件系统,Windows98支持FAT16、FAT32文件系统,WindowsNT支持FAT16、NTFS文件系统,Windows2000则支持FAT16、FAT32、NTFS三种文件系统格式,而Linux差不多支持所有的文件系统格式,但一般使用ext2文件系统。
对于普通的PC用户,使用的大多是Microsoft的windows98操作系统,如果想同时使用Linux操作系统的话,一般使用多重启动。这时,用户可能希望在Linux下访问Windows文件,比如原来Windows下的mp3、电影等等。通常,有多种方法实现Linux下对其它文件系统的访问,下面就以在Linux下对Windows98文件系统的访问为例进行介绍:
(一)在安装Linux时进行设置。由于Linux和Windows98两种操作系统使用不同的文件格式,所以在Windows98下安装Linux必须为Linux建立单独的分区,安装过程中有设置分区的步骤,此时,不但可以建立Linux分区,还可以对原FAT文件系统进行挂装,因为Linux把磁盘设备也看成是特殊的文件,这时如果为Windows98操作系统的逻辑分区C、D分别设立如/DOSC、/DOSD的挂装点,那么在安装完Linux后就可以在/DOSC、/DOSD目录下访问原来C、D分区上的文件了。
(二)如果在安装时没有为Windows98分区设立挂装点,也可以在安装完成后进入Linux运行mount命令(必须以root身份登录)挂装,mount命令的具体格式是:
mount〔-afFhnrvVm〕〔-l〕〔-o〕〔-t〕〔设备名称〕〔挂入点〕
比如,用户的Windows98在系统IDE设备上的第一个分区上,如果要将它挂装在/DOSC下,可以使用下面的命令:
mount -t vfat /dev/hda1 /dosc
使用mount挂装设备时会记录信息在/etc/mtab文件中,运行unmount命令时将记录清除。
(三)手动修改/etc/fstab文件。/etc/fstab文件的内容被用来在Linux 下自动挂装各种文件系统,文件中的每一行都提供了一种设备的信息,这种设备可以被挂装在Linux文件系统下的一个目录中。在Linux启动过程中,init进程执行一个脚本文件,该脚本调用带有-a参数的mount命令,用mount来读/etc/fstab,并挂装所有列出的文件系统(带noauto选项的除外)。下面是一个典型的/etc/fstab文件(其中Windows98安装在第一块硬盘上,Linux安装在第二块硬盘上):
ABEL=/ / ext2 defaults 1 1
/dev/hda1 /dosc vfat defaults 0 0
/dev/fd0 /mnt/floppy auto noauto,owner 0 0
none /proc proc defaults 0 0
none /devpts devpts sid=5,mode=620 0 0
/dev/hdb5 swap swap defaults 0 0
/dev/cdrom /mnt/cdrom iso9660 noauto,owner,kud2ure 0/0
/etc/fstab文件的第一列是设备名,第二列是挂装点,第三列表示在设备上的文件系统的类型,第四列是应用于特定设备的一组选项,通常为defaults,表示的含义有:这个设备在引导阶段被挂装、只有root用户可以挂装它、挂装后可以进行读或写操作,此选项如是noauto,则表示引导时该设备不会被自动挂装,而user选项表示任何用户都可以挂装该设备。以上面的etc/fstab文件为例,如果想在Linux下挂装Windows98操作系统的D分区(假设挂装点为/dosd),则可以在上文件中加入一行:
/dev/hda5 /dosd vfat defaults 0 0
然后存盘,重新启动后就可以访问Windows98操作系统的D分区了。
补充:fstab 栏位说明
第一栏(fs_spec): 实际的 device 名称
第二栏(fs_file): 对应到的目录结构(mount point)
第三栏(fs_vfstype):该 partition 的档案系统,常见的有:
minix、ext、ext2、msdos、iso9660、nfs、swap
第四栏(fs_mntops): 在 mount 时的参数
第五栏(fs_freq): 在使用 dump 时是否记录,不需要则输入0
第六栏(fs_passno): 决定在开机时执行 fsck 的先后顺序