系统管理指南:设备和文件系统

第 10 章 访问设备(概述)

本章提供有关如何访问系统上的设备的信息。

以下是本章中概述信息的列表。

有关配置设备的概述信息,请参见第 5 章,管理设备(概述/任务)

访问设备

使用命令管理磁带、文件系统和其他设备时,需要了解如何指定设备名称。在大多数情况下,可以使用逻辑设备名称来表示与系统连接的设备。逻辑设备名称和物理设备名称在系统中分别由逻辑设备文件和物理设备文件表示。

如何创建设备信息

首次引导系统时,将会创建设备分层结构,用于表示与系统连接的所有设备。内核使用设备分层结构信息将驱动程序与其相应的设备关联起来。内核还提供了一组指向执行特定操作的驱动程序的指针。有关设备分层结构的更多信息,请参见《OpenBoot 3.x Command Reference Manual》。

如何管理设备

devfsadm 命令用于管理 /dev/devices 目录中的特殊设备文件。缺省情况下,devfsadm 命令会尝试在系统中装入每个驱动程序,并连接至所有可能的设备实例。然后,devfsadm 将在 /devices 目录中创建设备文件并在 /dev 目录中创建逻辑链接。除了管理 /dev/devices 目录以外,devfsadm 命令还可维护 path_to_inst 实例数据库。有关更多信息,请参见 path_to_inst(4)

为响应动态重新配置事件而执行的重新配置引导处理以及对 /dev/devices 目录的更新,都将通过 devfsadmd(即 devfsadm 命令的守护进程版本)进行处理。引导系统时将从 /etc/rc* 脚本启动此守护进程。

由于 devfsadmd 守护进程会自动检测任何重新配置事件产生的设备配置变化,因此无需交互运行此命令。

有关更多信息,请参见 devfsadm(1M)

设备命名约定

在 Solaris OS 中以三种方式对设备进行引用。

前面的设备名称信息是使用以下命令显示的:

逻辑磁盘设备名称

执行以下任务时可使用逻辑设备名称访问磁盘设备:

许多管理命令都会使用引用磁盘片或文件系统的参数。

通过指定以符号形式与磁盘设备链接的子目录(/dev/dsk/dev/rdsk),后跟标识特定控制器、磁盘和片的字符串来引用磁盘设备。

图 10–1 逻辑设备名称的说明

逻辑设备名称组成部分图解:原始磁盘设备目录、逻辑控制器、物理总线目标、驱动器,以及片或 fdisk 分区。

指定磁盘子目录

磁盘和文件管理命令需要使用原始(或字符)设备接口,或设备接口。该区别是由从设备读取数据的方式导致的。

原始设备接口一次仅传输少量数据。块设备接口包括一次从中读取大数据块的缓冲区。

不同的命令需要不同的接口:

下表显示了某些常用磁盘和文件系统命令所需的接口。

表 10–1 一些常用命令所需的设备接口类型

命令参考 

接口类型 

用法示例 

df(1M)

块 

df /dev/dsk/c0t3d0s6

fsck(1M)

原始 

fsck -p /dev/rdsk/c0t0d0s0

mount(1M)

块 

mount /dev/dsk/c1t0d0s7 /export/home

newfs(1M)

原始 

newfs /dev/rdsk/c0t0d1s1

prtvtoc(1M)

原始 

prtvtoc /dev/rdsk/c0t0d0s2

直接控制器和面向总线的控制器

根据磁盘设备连接至直接控制器还是面向总线的控制器,可能要采用不同方式访问磁盘分区或磁盘片。通常,直接控制器在逻辑设备名称中不包括目标标识符。

有关这两种类型控制器的约定将在以下小节中加以说明。


注 –

控制器编号是在系统初始化过程中自动指定的。这些编号为严格的逻辑编号,表示不会直接映射到物理控制器。


x86: 带有直接控制器的磁盘

要在基于 x86 的系统中带有 IDE 控制器的磁盘上指定片,请遵循下图中显示的命名约定。

图 10–2 x86: 带有直接控制器的磁盘

带有直接控制器(包括逻辑控制器、驱动器,以及片或 fdisk 分区)的磁盘的设备名称图。

要指示整个 Solaris fdisk 分区,请指定片 2 (s2)。

如果系统中仅有一个控制器,则 w 通常为 0。

带有面向总线的控制器的磁盘

要在带有面向总线的控制器(例如 SCSI)的磁盘上指定片,请遵循下图中显示的命名约定。

图 10–3 带有面向总线的控制器的磁盘

带有面向总线的控制器(包括逻辑控制器、物理总线目标,驱动器以及片或 fdisk 分区)的磁盘的设备名称。

在带有直接连接磁盘(如 UltraSPARC® 系统上的 IDE 磁盘)的基于 SPARC 的系统上,命名约定与带有面向总线的控制器的系统的命名约定相同。

如果系统中仅有一个控制器,则 w 通常为 0。

对于 SCSI 控制器,x 是通过装置背面的开关设置的目标地址,y 是连接至目标的驱动器的逻辑单元号 (logical unit number, LUN)。如果磁盘具有嵌入式控制器,则 y 通常为 0。有关基于 SPARC 的系统上的 SCSI 地址的更多信息,请参见 SunSolveSM 信息文档 48041 和 scsi_address(9S)

要指示整个磁盘,请指定片 2 (s2)。

逻辑磁带设备名称

逻辑磁带设备文件位于 /dev/rmt/* 目录中,作为 /devices 目录的符号链接。

图 10–4 逻辑磁带设备名称

包括磁带设备目录、磁带机及可选密度值的逻辑磁带设备名称图。

连接至系统的第一个磁带设备为 0 (/dev/rmt/0)。磁带密度值(lmhcu)在第 30 章,管理磁带机(任务)中介绍。

逻辑可移除介质设备名称

由于可移除介质由卷管理 (vold) 来进行管理,因此除非要手动挂载介质,否则通常不会使用逻辑设备名称。

表示系统上的可移除介质设备的逻辑设备名称在第 3 章,访问可移除介质(任务)中加以介绍。