这一节里会解释怎样加装一个软盘或一个 Zip 盘,也会讨论关于 /dev 目录,介绍在多个物理设备或分区里较好的分配目录结构。
在 GNU/Linux 系统上,目录结构和物理设备间不一定是完全对应的,
这一点跟 Windows 系统不一样,在 Windows 里,每个驱动器(硬驱,软驱)都有它自己的目录结构,分别以一个字母开头(比如 C:\
)。
而在 GNU/Linux 上,每个驱动设备(一个硬盘或一个软盘)上会有一个或多个文件系统。为了方便访问一个文件系统,它被指定成为另外一个文件系统下的一个目录。为了防止死循环,根文件系统(root filesystem,里面含有根目录 /)是不会被放在任何别的文件系统里的,当您启动 Debian 的时候,您可以直接访问它。
存在于一个文件系统中而又包含另外一个文件系统的目录,我们称这个目录为加载点 (mount point)。一个加载点是第一文件系统中的一个目录,而这个目录又“包含”了另外一个文件系统(这个系统可能在另外一个设备上,比如软盘)。只有为把一个文件系统加载到一个加载点以后,您才能访问那个文件系统。
比如您会把一张光盘加载到 /cdrom 这个加载点上。如果您浏览 /cdrom 这个目录,您会看到这张光盘上的内容。/cdrom 这个目录本身其实是在您的硬盘上,而就实际应用来说,这张光盘上的内容成了根文件系统的一部分,当您键入命令或者执行程序的时候,一个文件的具体物理位置在什么地方对于您是没有分别的。您可以在您的硬盘建立一个 /cdrom 目录,放进一些文件,这些文件更如果您加载您的光盘上的文件没有什么区别。当您加载了一个文件系统后,您根本不用考虑物理设备的问题了。
但是,在您加载一个文件系统或者在一个没有文件系统的设备上建立文件系统前,您需要直接使用这些设备。所有的设备都有特定的名字,这些名字是在目录 /dev 下的。如果您现在输入 ls /dev,您会看到一个相当长的名单,里面有您的 Debian 系统里所有可能的设备名称。第 页,表格 2.1 归纳了其中的一些设备。在您的系统里,文件 /usr/src/linux/Documentation/devices.txt 有更完整的列表。
要加载一个文件系统,我们要让 Linux 把它在指定设备上发现的任何文件系统与一个指定的加载点联系起来,这里,我们可能需要告诉 Linux 去寻找哪种文件系统。
我们在这里演示一下加载光盘的步骤,光可以用您的 Debian 光盘(如果您是用光盘安装的话)。因为您必须是 root 才能加载光盘,所以要尽量小心,做为 root,您拥有操纵整个系统的权力,而不仅仅是您自己的文件,水能载舟,亦能覆舟。以下命令已假定您的光驱里有一张光盘,如果没有,放一个进去。现在可以键入以下命令:
参数选项 -t 指定文件系统类型,在这里用的是 iso9660。大多数的光盘是 iso9660。下一个参数是要加载的设备名称,最后的参数是加载点。mount 命令有很多其他的参数可用,详细说明参看手册 (man mount)。
加载好光盘后,您会发现您的光驱盘打不开了,您需要先卸载光盘,才能把光盘拿走。
在文件 /etc/fstab(缩写:``filesystem table'' 文件系统表)里有对您经常需要加载的文件系统的描述。这些文件系统就可以用一个比较简短的命令进行加载,比如 mount /cdrom 就可以了。您也可以配置系统使文件系统在系统启动时自动加载。您会想要把所以在硬盘上的文件系统在启动时自动加载,所以 Debian 为您自动在 fstab 里加入相应的条款。
现在输入 more /etc/fstab,让我们看看这个文件。它有两条或以上条款,这些条款是您安装时自动配置的。这个文件会是类似这样的:
#
# <file system> <mount point> <type> <options> #<dump > <pass>
/dev/hda1 / ext2 defaults 0 1
/dev/hda3 none swap sw 0 0
proc /proc proc defaults 0 0
/dev/hda5 /tmp ext2 defaults 0 2
/dev/hda6 /home ext2 defaults 0 2
/dev/hda7 /usr ext2 defaults 0 2
/dev/hdc /cdrom iso9660 ro,noauto 0 0
/dev/fd0 /floppy auto noauto,sync 0 0
最后三列需要一些注释:
第五列是给倾卸工具 (dump utility) 用来决定什么时候进行备份的,很多情况下,您可以在这儿使用 0。
第六列是给命令 fsck 使用的,决定在系统启动时的文件系统检查中,应该以什么次序来进行。根文件系统在这项应该使用 1,不用进行检查的文件系统(比如交换分区 swap partition)应该使用 0,其它所有的文件系统应该使用 2。注意其实交换分区 (swap) 在某种意义上来说不算一个真正的文件系统,因为它不含有文件和目录,它只是 Linux 核心用来做次级内存的。但是,因为历史原因,交换分区还是与真正的文件系统列于同一个文件里。
第四列含有一个或以上的加载时的选项。您可以查看 mount 的手册来了解这些选项,参见第 页,第 5.1 节。
/dev/sda4 /mnt/dos msdos noauto,user 0 0
如果您的系统里有 SCSI 硬盘,您要把上例中的 sda 改成 sdb 或者 sdc。
John Goerzen / Ossama Othman / Debian 中文计划