![]() | 为了确保您查看和写入的设备是您想要操作的设备,最好在开始这些步骤之前,从 USB 总线上移除类似的设备。 |
您的系统可能已经设置为处理 USB 闪存设备。要检查这一点,只需发出命令$ mount从 X 终端。如果出现类似如下的输出
none on /proc/bus/usb type usbfs (rw) |
出现在输出中,您就可以转到 第 7.4 节 并从那里继续。然而,浏览一下中间的章节可能会有好处。如果测试不成功,也不要灰心。请继续阅读。
在/proc目录下可以检查一些内容,以查看内核选项是否已正确包含,或是否已正确插入了适当的模块。作为第一步检查,查看目录/proc/bus/usb是否存在。如果存在,则您的内核正确支持 USB 子系统。如果不是这种情况,则必须重新编译内核并包含适当的 USB 支持(参见 第 5.2.3 节)或必须更新内核。接下来,检查目录/proc/scsi是否存在。如果存在,那就很好。如果不存在,则 SCSI 支持未编译到您的内核中(参见 第 5.2.1 节)。
在/proc中,应该为 USB 文件系统提供一个挂载点。该挂载点是/proc/bus/usb。如果它存在,则内核已正确设置。
如果前面章节的验证是肯定的,那么下一步是挂载 USB 文件系统。这需要以 root 用户身份执行,如下所示
# mount -t usbfs none /proc/bus/usb |
![]() | 在较旧的内核版本中,上面的 mount 命令可能需要通过替换来更改usbfs为usbdevfs。在 Linux-2.4.20 中,两种形式都有效。 |
如果没有报错,请进行更多测试。第一个是快速测试(第 7.1 节)。更深入的探测是发出命令# ls -l /proc/bus/usb。这应该给出类似于下面的内容
dr-xr-xr-x 1 root root 0 Sep 19 14:21 001 dr-xr-xr-x 1 root root 0 Sep 19 14:21 002 -r--r--r-- 1 root root 0 Sep 19 22:30 devices -r--r--r-- 1 root root 0 Sep 19 22:30 drivers |
路径/proc/scsi/usb-storage-0/现在应该存在,并且末尾的文件之一会显示这一点。在我的设置中,命令$ less /proc/scsi/usb-storage-0/1给出
Host scsi1: usb-storage Vendor: Generic Product: Mass Storage Device Serial Number: None Protocol: Transparent SCSI Transport: Bulk GUID: 0ed166800000000000000000 Attached: Yes/No |
如果闪存驱动器已连接,则最后一行将显示 “Yes”。如果未插入,则条目将为 “No”。
您现在可以确定记忆棒是否正常工作。假设您在柜台购买了它。它的说明书很可能会告诉您如何在 Windows 中设置它。这表明它被格式化为 vfat。在您尝试挂载它之前,请为其创建一个挂载点。执行类似如下的操作# mkdir -m 777 /mnt/memstick。挂载命令很可能是
# mount -t vfat /dev/sda1 /mnt/memstick |
如果一切顺利,您应该能够看到设备# ls /mnt/memstick.
现在尝试一些标准操作,例如在设备上创建一个目录,并将您喜欢的文本文件复制到其中
# mkdir /mnt/memstick/apollo # cp /home/myname/myfavourite_file /mnt/memstick/apollo/. |
再次列出 (# ls -l /mnt/memstick) 并注意权限。
卸载设备 (# umount /dev/sda1) 并像上面那样再次挂载它。再次列出并检查权限。您最喜欢的文本文件现在很可能具有 x 权限。它变成了可执行文件。这在 vfat 文件系统中是正常的。如果您对此感到满意,请卸载设备并跳到 第 10 节。