确定设备名称
有时很难确定设备的名称。 回到过去,这并不难。 一个设备总是在同一个地方,它没有改变。 类 Unix 系统喜欢这种方式。 在开发 Unix 时,“更换磁盘驱动器”涉及使用叉车从计算机房中移除一台洗衣机大小的设备。 近年来,典型的桌面硬件配置变得非常动态,Linux 已经发展成为比其祖先更加灵活。
在上面的示例中,我们利用了现代 Linux 桌面“自动”挂载设备的能力,然后在事后确定名称。 但是,如果我们正在管理服务器或其他一些不会发生这种情况的环境呢? 我们怎样才能弄清楚呢?
首先,让我们看看系统如何命名设备。 如果我们列出内容 的/ dev 目录(所有设备所在的位置),我们可以看到有很多很多设备:
[我@linuxbox ~]$ ls / 开发
[我@linuxbox ~]$ ls / 开发
此列表的内容揭示了设备命名的一些模式。 这里有一些:
表 15-2:Linux 存储设备名称
图案装置
图案装置
/dev/fd* 软盘驱动器。
/开发/高清* 旧系统上的 IDE (PATA) 磁盘。 典型的主板包含两个 IDE 连接器或 通道,每条电缆都带有两个驱动器连接点。 电缆上的第一个驱动器称为 主 设备,第二个称为 奴隶 设备。 设备名称的顺序是这样的 /开发/ hda 指的是第一个通道上的主设备, /开发/硬盘 是第一个通道上的从设备; /开发/硬盘,第二通道上的主设备,依此类推。 尾随数字表示设备上的分区编号。 例如, /开发/ hda1 指系统上第一个硬盘驱动器上的第一个分区,而
/dev/hda 是指整个驱动器。
/开发/lp* 打印机。
/开发/SD* SCSI 磁盘。 在现代 Linux 系统上,内核将所有类似磁盘的设备(包括 PATA/SATA 硬盘、闪存驱动器和 USB 大容量存储设备,例如便携式音乐播放器和数码相机)视为 SCSI 磁盘。 其余的命名系统类似于旧的 /开发/高清* 上面描述的命名方案。
/dev/sr* 光驱(CD/DVD 阅读器和刻录机)。
另外,我们经常看到符号链接,比如 的/ dev / CDROM, /开发/DVD和
/dev/floppy,它指向实际的设备文件,为方便起见提供。
如果您正在使用不自动装载可移动设备的系统,您可以使用以下技术来确定可移动设备在连接时如何命名。 首先,开始实时查看 / var / log /消息 or
/var/log/syslog 文件(您可能需要超级用户权限):
[我@linuxbox ~]$ 须藤尾 -f /var/log/messages
[我@linuxbox ~]$ 须藤尾 -f /var/log/messages
将显示文件的最后几行,然后暂停。 接下来,插入可移动设备。 在此示例中,我们将使用 16 MB 闪存驱动器。 几乎立即,内核会注意到该设备并对其进行探测:
23 月 10 日 07:53:3 linuxbox 内核:usb 2-2:使用 uhci_hcd 和地址 XNUMX 的新全速 USB 设备
23 月 10 日 07:53:3 linuxbox 内核:usb 2-1:选择了配置 #XNUMX
从 1 个选择
23 月 10 日 07:53:3 linuxbox 内核:scsiXNUMX:USB 大容量存储设备的 SCSI 仿真
23 月 10 日 07:58:5 linuxbox 内核:scsi 扫描:INQUIRY 结果太短 (36),使用 XNUMX
23 月 10 日 07:58:3 linuxbox 内核:scsi 0:0:0:XNUMX:直接访问简单
磁盘 1.00 PQ:0 ANSI:2
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:31263:[sdb] 512 16 字节硬件扇区 (XNUMX MB)
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:XNUMX:[sdb] 写保护关闭
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:XNUMX:[sdb] 假设驱动器缓存:直写
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:31263:[sdb] 512 16 字节硬件扇区 (XNUMX MB)
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:XNUMX:[sdb] 写保护关闭
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:XNUMX:[sdb] 假设驱动器缓存:直写
23 月 10 日 07:59:1 linuxbox 内核:sdb:sdbXNUMX
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:XNUMX:[sdb] 附加的 SCSI 可移动磁盘
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:3:附加 scsi 通用 sg0 类型 XNUMX
23 月 10 日 07:53:3 linuxbox 内核:usb 2-2:使用 uhci_hcd 和地址 XNUMX 的新全速 USB 设备
23 月 10 日 07:53:3 linuxbox 内核:usb 2-1:选择了配置 #XNUMX
从 1 个选择
23 月 10 日 07:53:3 linuxbox 内核:scsiXNUMX:USB 大容量存储设备的 SCSI 仿真
23 月 10 日 07:58:5 linuxbox 内核:scsi 扫描:INQUIRY 结果太短 (36),使用 XNUMX
23 月 10 日 07:58:3 linuxbox 内核:scsi 0:0:0:XNUMX:直接访问简单
磁盘 1.00 PQ:0 ANSI:2
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:31263:[sdb] 512 16 字节硬件扇区 (XNUMX MB)
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:XNUMX:[sdb] 写保护关闭
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:XNUMX:[sdb] 假设驱动器缓存:直写
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:31263:[sdb] 512 16 字节硬件扇区 (XNUMX MB)
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:XNUMX:[sdb] 写保护关闭
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:XNUMX:[sdb] 假设驱动器缓存:直写
23 月 10 日 07:59:1 linuxbox 内核:sdb:sdbXNUMX
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:XNUMX:[sdb] 附加的 SCSI 可移动磁盘
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:3:附加 scsi 通用 sg0 类型 XNUMX
显示再次暂停后,按 Ctrl-c 得到提示。 输出中有趣的部分是对“[sdb]”的重复引用,这符合我们对 SCSI 磁盘设备名称的期望。 知道这一点,两条线变得特别有启发性:
23 月 10 日 07:59:1 linuxbox 内核:sdb:sdbXNUMX
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:XNUMX:[sdb] 附加的 SCSI 可移动磁盘
23 月 10 日 07:59:1 linuxbox 内核:sdb:sdbXNUMX
23 月 10 日 07:59:3 linuxbox 内核:sd 0:0:0:XNUMX:[sdb] 附加的 SCSI 可移动磁盘
这告诉我们设备名称是 的/ dev / sdb的 对于整个设备和 的/ dev / sdb1 对于设备上的第一个分区。 正如我们所见,使用 Linux 充满了有趣的侦探工作!
提示: 使用 tail -f / var / log /消息 技术是近乎实时地观察系统正在做什么的好方法。
有了我们的设备名称,我们现在可以挂载闪存驱动器:
[我@linuxbox ~]$ 须藤 mkdir /mnt/flash [我@linuxbox ~]$ 须藤挂载 /dev/sdb1 /mnt/flash [我@linuxbox ~]$ df
文件系统 | 1K 块 | 旧 | 可提供 | 用% | 镶嵌在 |
/ dev / sda2 | 15115452 | 5186944 | 9775164 | 35% | / |
/ dev / sda5 | 59631908 | 31777376 | 24776480 | 57% | /主页 |
/ dev / sda1 | 147764 | 17277 | 122858 | 13% | /启动 |
临时文件系统 | 776808 | 0 | 776808 | 0% | /开发/shm |
的/ dev / sdb1 | 15560 | 0 | 15560 | 0% | /mnt/闪光 |
只要设备与计算机保持物理连接并且计算机没有重新启动,设备名称就会保持不变。