6. 一些基本概念

在本节中,我们将以非常简要的方式讨论一些基本的 Linux 概念,这些概念应有助于理解下述步骤。

6.1. /proc 文件系统

/proc 文件系统充当一个窗口,通过它可以查看 Linux 设置的运行情况。本文档最感兴趣的对象是以下目录/proc/bus/usb//proc/scsi/。这些将用于验证内核是否已为我们的目的正确设置(第 7.2 节)。

6.2. SCSI 设备

您的闪存盘将被视为伪装成可移动 SCSI 磁盘 (sd) 的 USB 大容量存储设备。SCSI 磁盘设备映射到/dev(设备) 目录下的/dev/sda , /dev/sdb,... 当存在不同的磁盘设备时,它们将被映射到/dev/sda, /dev/sdb,等等。例如,如果插入了闪存盘和数码相机,则一个将被映射到/dev/sda,另一个将被映射到/dev/sdb。测试表明,检测到的第一个设备被映射到sda,并在目录中表示/proc/scsi/usb-storage-0。第二个将被映射到sdb,并在中表示/proc/scsi/usb-storage-0。当两个设备在启动时都存在时会发生什么,尚不清楚。本文档相关的分区概述,文件/proc/partitions可以查阅。查找如下条目sda, sda1, sdb。在 Linux-2.6 系列内核下,这个问题可以非常巧妙地解决(第 12 节)。

在接下来的描述中,将假定只有一个闪存盘存在,因此映射到/dev/sda.

。在大多数发行版中,这些点大量存在。您应该检查您的设置中是否是这种情况(ls /dev/sda*)。如果没有,您可以执行以下操作来创建它们(以 root 用户身份,用井号表示)。

             # mknod /dev/sda  b 8 0
             # mknod /dev/sda1 b 8 1
             # mknod /dev/sda2 b 8 2
   

等等,直到/dev/sda15,如果必要。整个设备映射到/dev/sda,而/dev/sdax (x = 1 ... 15)表示设备的各个分区。稍后我们将描述如何为不同的文件系统创建不同的分区(请参阅 第 8 节第 9 节)。如果您打算将闪存盘与单个分区(文件系统)一起使用,/dev/sda1就足够了。

6.3. USB 设备文件系统

这个动态生成的文件系统应该挂载到/proc/bus/usb/。因此,这个挂载点必须存在。一旦挂载,就应该在以下位置看到更多内容/proc/bus/usb/,和在/proc/scsi/第 7.3 节)。要查找存在的 USB 设备,请读取文件/proc/bus/usb/devices less /proc/bus/usb/devices)。解释屏幕上的文字需要一点努力,但并不困难。闪存盘用Mass Storage Device表示。

6.4. ext2 文件系统

ext2(第二扩展)文件系统仍然是 Linux 设置中最普遍的文件系统。它功能最多样且复杂,带有权限(读-写-执行,谁被允许做什么)、所有权(用户、组、其他)、时间戳(上次修改时间)等。此外,存在用于正确维护配备 ext2 的设备的工具(第 11 节)。如果闪存设备仅在 Linux 设置中使用,则最好将其格式化为 ext2(请参阅 第 8 节)。

6.5. vfat 文件系统

在内核中启用 vfat 使得可以将 Dos/Windows 下创建的文件系统挂载到 Linux 系统中。大多数闪存盘都格式化为可在 Windows 上直接使用,因此应视为 vfat 格式。vfat 文件系统不如 ext2 复杂,因此在内存空间方面更经济。它不以与 ext2 相同的方式携带权限,导致保存在 vfat 中的 ext2 文件重新出现时其权限会发生更改。尽管如此,如果闪存盘要用于在 Linux 和 Windows 机器之间传输数据,最好将其保持 vfat 格式。一个折衷方案是将闪存盘分区为两部分:一部分为 vfat,另一部分为 ext2。至少 Linux 机器应该能够处理两者。这在 第 9 节 中描述。

6.6. 命令选项说明

以下是本文档中出现的一些命令选项的简短列表