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

第 8 章 使用 USB 设备(任务)

本章提供有关在 Solaris OS 中使用 USB 设备的逐步说明。

有关与使用 USB 设备关联的过程信息,请参见以下主题:

有关 USB 设备的最新信息,请转至以下站点:

http://www.sun.com/io_technologies/USB-Faq.html

有关使用 USB 设备的概述信息,请参见第 7 章,使用 USB 设备(概述)

在 Solaris OS 中管理 USB 设备(指南)

使用本指南可以确定用于在 Solaris OS 中管理 USB 设备的所有任务。每个任务都指向一系列其他任务,如使用 USB 设备、热插拔 USB 设备以及添加 USB 音频设备。

有关在 Solaris OS 中使用 USB 组件的信息,请参见关于 Solaris OS 中的 USB

任务 

说明 

参考 

使用 USB 海量存储设备。 

USB 海量存储设备必须包含文件系统,才能向其中添加数据。此外,必须先格式化 USB 软盘,然后才能在这些软盘上创建和挂载文件系统。 

本节还介绍如何以物理方式在系统中添加或移除 USB 设备。 

使用 USB 海量存储设备(任务列表)

添加 USB 音频设备。 

使用此任务列表可确定与添加 USB 音频设备关联的任务。 

使用 USB 音频设备(任务列表)

使用 cfgadm 命令在系统中添加或删除 USB 设备。

可以使用 cfgadm 命令以逻辑方式在系统中添加或删除 USB 设备。

使用 cfgadm 命令热插拔 USB 设备(任务列表)

使用 USB 海量存储设备(任务列表)

任务 

说明 

参考 

添加或删除 USB 海量存储设备。 

选择以下操作之一可添加 USB 海量存储设备: 

 

 

在不运行 vold 的情况下添加 USB 海量存储设备。

如何在不运行 vold 的情况下添加 USB 海量存储设备

 

添加用于访问数字图像的 USB 相机。 

如何添加 USB 相机

 

在不运行 vold 的情况下删除 USB 海量存储设备。

如何在不运行 vold 的情况下移除 USB 海量存储设备

添加不兼容的 USB 海量存储设备。 

通过向 scsa2usb.conf 中添加项,可以添加不兼容的 USB 海量存储设备。

如何使用不兼容的 USB 海量存储设备

准备使用 USB 海量存储设备。 

在运行 vold 的情况下准备使用 USB 海量存储设备。

在运行 vold 的情况下准备使用 USB 海量存储设备

 

在不运行 vold 的情况下准备使用 USB 海量存储设备。

如何在不运行 vold 的情况下准备使用 USB 海量存储设备

显示 USB 设备信息。 

显示有关 USB 设备的信息。 

如何显示 USB 设备信息

在 USB 海量存储设备中创建文件系统。 

必须先在设备中创建文件系统,然后才能向其中添加数据。 

如何在不运行 vold 的情况下在 USB 海量存储设备中创建文件系统

在 USB 海量存储设备中修改分区并创建文件系统。 

在 USB 海量存储设备中创建文件系统之前,可能需要修改现有的分区。 

如何在不运行 vold 的情况下在 USB 海量存储设备中修改分区和创建 PCFS 文件系统

在 USB 海量存储设备中创建 Solaris 分区并修改相应的片。 

使用 rmformat 修改片信息之前,需要使用片信息创建一个文件。

如何在不运行 vold 的情况下在 USB 海量存储设备中创建 Solaris 分区和修改片

在不运行 vold 的情况下挂载 USB 海量存储设备。

在不运行 vold 的情况下挂载 USB 海量存储设备。

如何在不运行 vold 的情况下挂载或取消挂载 USB 海量存储设备

(可选)禁用 USB 设备驱动程序。 

如果不需要系统支持 USB,可以禁用 USB 设备驱动程序。 

如何禁用特定的 USB 驱动程序

(可选)删除未使用的 USB 设备链路。 

使用 devfsadm 命令删除 USB 设备链路。

如何删除未使用的 USB 设备链路

使用 USB 海量存储设备

从 Solaris 9 发行版开始,支持以下 USB 可移除海量存储设备:

有关将 USB 海量存储设备用于 Solaris ZFS 文件系统的信息,请参见Solaris 10 6/06 发行版在 USB 设备方面的新增功能

有关 Solaris OS 所支持的 USB 设备的完整列表,请参见:

http://www.sun.com/io_technologies/USB.html

在以前的 Solaris 发行版中,所有的 USB 存储设备都被标识为可移除介质设备,这些设备可提供以下许多优点,包括通过 vold 自动挂载。在 Solaris 10 6/06 发行版中,USB 海量存储设备被标识为可热插拔设备,而且具有 USB 可移除设备的优点(如下所述)。有关可热插拔行为的更多信息,请参见USB 和 1394 (FireWire) 支持增强功能

有关使用 USB 海量存储设备的更多信息,请参见 scsa2usb(7D)

使用 USB 软盘设备

USB 软盘设备显示为可移除介质设备。USB 软盘设备不是通过 fd(软盘)驱动程序进行管理的。发出旨在用于 fd(本机软盘)驱动程序的 ioctl(2) 调用的应用程序将失败。仅发出 read(2)write(2) 调用的应用程序将成功。其他应用程序(如 SunPCI 和 rmformat)也将成功。

卷管理 (vold) 会将 USB 软盘设备视为 SCSI 可移除介质设备。通过卷管理可在 /rmdisk 目录下访问该设备。

有关如何使用 USB 软盘设备的更多信息,请参见第 1 章,管理可移除介质(概述)

使用不兼容的 USB 海量存储设备

即使某些设备未将其自身标识为与 USB 海量存储类兼容,或以不正确的方式标识其自身, USB 海量存储驱动程序也仍可能支持这些设备。scsa2usb.conf 文件包含一个属性覆盖列表,其中列有供应商 ID、产品 ID、用于匹配海量存储设备的修订版,以及用于覆盖缺省设备属性的字段。缺省情况下,会注释掉此列表中的项。要启用对特定设备的支持,可以复制并取消注释这些项。

如果将 USB 海量存储设备连接至运行此 Solaris 发行版的系统,但该系统无法使用它,则可以检查 /kernel/drv/scsa2usb.conf 文件,查看是否存在与该设备对应的注释掉的项。根据 scsa2usb.conf 文件中给出的信息,查看是否可以使用覆盖信息支持特定设备。

有关推荐的 USB 海量存储设备的列表,请转至:

http://www.sun.com/io_technologies/USB.html

有关更多信息,请参见 scsa2usb(7D)

Procedure如何使用不兼容的 USB 海量存储设备

  1. 成为超级用户。

  2. /kernel/drv/scsa2usb.conf 文件中添加项。

    以下项适用于 USB 内存条。


    attribute-override-list = "vid=* reduced-cmd-support=true";
  3. 重新引导系统或执行以下操作:

    1. 手动更新驱动程序。


      # update_drv -f scsa2usb
      
    2. 移除该设备。

    3. 添加该设备。

热插拔 USB 海量存储设备

热插拔设备是指在未关闭操作系统或未关闭系统电源的情况下添加或移除设备。所有的 USB 设备都是可热插拔设备。

可移除介质管理器 (vold) 现在可以识别热插拔设备。一旦插入该设备,vold 便会在几秒钟内尝试对其进行挂载。如果未发生任何情况,请查看该设备是否已挂载。

确保 vold 正在运行。


# svcs volfs

STATE          STIME    FMRI

online         10:39:12 svc:/system/filesystem/volfs:default

如果文件系统有效并且可由 vold 进行识别,则可以从该设备将其挂载。

如果无法挂载,请停止 vold


# svcadm disable volfs

然后,尝试手动挂载。

热移除设备之前,应在 eject -n 命令的别名中找到该设备的名称。然后,弹出该设备的介质。如果不执行此操作,vold 仍会释放该设备,并且端口可再次使用,但是该设备中的文件系统可能已被破坏。

热插拔 USB 设备时,系统的设备分层结构中会立即显示该设备,如 prtconf 命令输出所示。移除 USB 设备时,如果未使用该设备,则会从系统的设备分层结构中删除该设备。

如果拔除设备时正在使用该设备,则该设备节点仍然存在,但控制该设备的驱动程序将停止该设备中的所有活动。向此设备发出的任何新的 I/O 活动都会返回错误。

在这种情况下,系统会提示插入原始设备。如果该设备不再可用,请停止应用程序。几秒钟后,端口将再次可用。


注 –

移除活动的设备或打开的设备可能会损害数据完整性。移除设备之前应始终先将其关闭,但连接的键盘和鼠标除外(可在活动状态时将其移除)。


以只读方式挂载 USB 海量存储设备

通过更改 /etc/rmmount.conf 文件中的以下行,可以采用只读方式挂载 USB 海量存储设备:


mount * hsfs udfs ufs -o nosuid

更改为:


mount * hsfs udfs ufs -o nosuid,ro

然后重新启动 vold


# svcadm disable volfs

# svcadm enable volfs

此时会以只读方式挂载包含这些文件系统的可移除设备。

Procedure如何在不运行 vold 的情况下添加 USB 海量存储设备

  1. (可选)有关禁用 vold 的信息,请参见如何在不运行 vold 的情况下准备使用 USB 海量存储设备

  2. 检验 vold 是否未运行。


    # svcs volfs
    
    STATE          STIME    FMRI
    
    disabled       10:39:12 svc:/system/filesystem/volfs:default
  3. 连接 USB 海量存储设备。

  4. 检验是否已添加 USB 设备。

    查找 USB 磁盘设备链路,这些链路可能在非 USB 存储设备的设备链路中,如下所示:


    $ rmformat
    
    Looking for devices...
    
    1. Logical Node: /dev/rdsk/c3t0d0p0
    
       Physical Node: /pci@0,0/pci108e,4131@2,1/storage@4/disk@0,0
    
       Connected Device: USB2.0   Flash Disk       2.00
    
       Device Type: Removable

Procedure如何添加 USB 相机

如果相机的介质使用 PCFS 文件系统,则 vold 会自动挂载该相机。 如果该设备未绑定至 scsa2usb 驱动程序,请使用 libusb 应用程序来传送图片。有关更多信息,请参阅 /usr/sfw/share/doc/libusb/libusb.txt

  1. 成为超级用户。

  2. 插入并打开 USB 相机。

    系统将为相机创建一个逻辑设备。插入相机后,会将输出写入 /var/adm/messages 文件,以确认设备的连接。系统会将相机视为存储设备。

  3. 检查写入 /var/adm/messages 文件的输出。


    # more /var/adm/messages
    

    通过检查此输出,可以确定已创建的逻辑设备,这样便可以使用该设备来访问图像。其输入与以下内容类似:


    Jul 15 09:53:35 buffy usba: [ID 349649 kern.info]    OLYMPUS, C-3040ZOOM,
    
     000153719068
    
    Jul 15 09:53:35 buffy genunix: [ID 936769 kern.info] scsa2usb1 is 
    
    /pci@0,0/pci925,1234@7,2/storage@2
    
    Jul 15 09:53:36 buffy scsi: [ID 193665 kern.info] sd3 at scsa2usb1: 
    
    target 0 lun 0

    请通过执行以下操作,使该设备与可挂载的 /dev/dsk 链路项匹配:


    # ls -l /dev/dsk/c*0 | grep /pci@0,0/pci925,1234@7,2/storage@2
    
     lrwxrwxrwx   1 root     root          58 Jun 30  2004 c3t0d0p0 ->
    
     ../../devices/pci@0,0/pci925,1234@7,2/storage@2/disk@0,0:a
  4. 挂载 USB 相机文件系统。

    该相机的文件系统很可能是 PCFS 文件系统。如果文件系统是 PCFS,则该文件系统应由 vold 自动挂载。

    要在 x86 系统上手动挂载文件系统,可以使用如下语法:


    # mount -F pcfs /dev/dsk/c3t0d0p0:c /mnt
    

    要在 SPARC 系统上手动挂载文件系统,可以使用如下语法:


    # mount -F pcfs /dev/dsk/c3t0d0s0:c /mnt
    

    有关挂载文件系统的信息,请参见第 19 章,挂载和取消挂载文件系统(任务)

    有关挂载其他 PCFS 文件系统的信息,请参见 mount_pcfs(1M)

  5. 检验图像文件是否可用。

    例如:


    # ls /mnt/DCIM/100OLYMP/
    
    P7220001.JPG*  P7220003.JPG*  P7220005.JPG*
    
    P7220002.JPG*  P7220004.JPG*  P7220006.JPG*
  6. 查看并处理 USB 相机创建的图像文件。

    例如:


    # /usr/dt/bin/sdtimage P7220001.JPG &
    
  7. 断开相机连接之前,取消挂载文件系统。

    例如:


    # umount /mnt
    
  8. (可选的)关闭并断开相机连接。

Procedure如何在不运行 vold 的情况下移除 USB 海量存储设备

  1. (可选)有关禁用 vold 的信息,请参见如何在不运行 vold 的情况下准备使用 USB 海量存储设备

  2. 成为超级用户。

  3. 检验 vold 是否未运行。


    # svcs volfs
    
    STATE          STIME    FMRI
    
    disabled       Sep_29   svc:/system/filesystem/volfs:default
  4. 停止使用该设备的所有活动应用程序。

  5. 取消挂载该设备。

  6. 移除该设备。

在运行 vold 的情况下准备使用 USB 海量存储设备

无论是否使用卷管理,都可以访问有关可移除介质的信息。有关使用 GNOME 的文件管理器访问可移除介质相关信息的信息,请参见 GNOME 桌面文档。

格式化 USB 设备后,通常会将该设备挂载于 /rmdisk/label 目录下。有关配置可移除存储设备的更多信息,请参见 rmmount.conf(4)vold.conf(4)

设备节点是在 /vol/dev 目录下创建的。有关更多信息,请参见 scsa2usb(7D)

以下过程介绍如何在不运行 vold 的情况下管理 USB 海量存储设备。对于字符设备,对应的设备节点是在 /dev/rdsk 目录下创建的,而对于块设备,对应的设备节点是在 /dev/dsk 目录下创建的。设备链路是在热插拔设备时创建的。有关更多信息,请参见 scsa2usb(7D)

Procedure如何在不运行 vold 的情况下准备使用 USB 海量存储设备

可以在不运行卷管理 (vold) 的情况下使用 USB 海量存储设备。可通过发出以下命令停止 vold


# svcadm disable volfs

或者,使用以下过程使 vold 保持运行,但不使用 vold 来注册 USB 海量存储设备。

  1. 成为超级用户。

  2. 检验 vold 是否未运行。


    # svcs volfs
    
    STATE          STIME    FMRI
    
    disabled       10:28:23 svc:/system/filesystem/volfs:default
  3. 通过对 /etc/vold.conf 文件中的以下行进行注释,删除 USB 海量存储设备的卷管理注册功能。


    # use rmdisk drive /dev/rdsk/c*s2 dev_rmdisk.so rmdisk%d
  4. 注释该行后,重新启动 vold


    # svcadm enable volfs
    

    注意 – 注意 –

    如果注释掉该行,且其他可移除设备(如 SCSI 或 Peerless)位于系统上,则这些设备的 vold 注册功能也会被禁用。


    有关更多信息,请参见 vold.conf(4)

Procedure如何显示 USB 设备信息

    显示有关 USB 设备的信息。

    例如,使用 prtconf 命令可显示 USB 设备信息。本示例中的 prtconf 输出已截断为仅显示 USB 设备信息。


    $ prtconf
    
            usb, instance #0
    
                     hub, instance #2
    
                         device, instance #8
    
                             interface (driver not attached)
    
                         printer (driver not attached)
    
                         mouse, instance #14
    
                         device, instance #9
    
                             keyboard, instance #15
    
                             mouse, instance #16
    
                         storage, instance #7
    
                             disk (driver not attached)
    
                         communications, instance #10
    
                             modem (driver not attached)
    
                             data (driver not attached)
    
                     storage, instance #0
    
                         disk (driver not attached)
    
                     storage, instance #1
    
                         disk (driver not attached)

    例如,使用 rmformat 命令可显示 USB 设备信息。


    $ rmformat
    
    Looking for devices...
    
         1. Volmgt Node: /vol/dev/aliases/rmdisk3
    
            Logical Node: /dev/rdsk/c1t0d3s2
    
            Physical Node: /pci@1e,600000/usb@a/storage@2/disk@0,3
    
            Connected Device: SMSC     223 U HS-SD/MMC  1.95
    
            Device Type: Removable
    
         2. Volmgt Node: /vol/dev/aliases/cdrom0
    
            Logical Node: /dev/rdsk/c2t2d0s2
    
            Physical Node: /pci@1e,600000/ide@d/sd@2,0
    
            Connected Device: JLMS     XJ-HD166S        D3S4
    
            Device Type: DVD Reader
    
         3. Volmgt Node: /vol/dev/aliases/rmdisk4
    
            Logical Node: /dev/rdsk/c4t0d0s2
    
            Physical Node: /pci@1e,600000/usb@a/storage@1/disk@0,0
    
            Connected Device: IC25T048 ATDA05-0         DA8O
    
            Device Type: Removable

Procedure如何在不运行 vold 的情况下在 USB 海量存储设备中创建文件系统

使用此过程可向 USB 海量存储设备中添加文件系统。

必须先格式化 USB 软盘,然后才能向其中添加文件系统。所有其他的 USB 海量存储设备只需 PCFS 或 UFS 文件系统即可使用。格式化 USB 软盘时,请牢记以下要点:


注 –

仅在需要格式化 USB 软盘时,才执行步骤 5–6。


  1. (可选)有关禁用 vold 的信息,请参见如何在不运行 vold 的情况下准备使用 USB 海量存储设备

  2. 检验 vold 是否未运行。


    # svcs volfs
    
    STATE          STIME    FMRI
    
    disable        10:39:12 svc:/system/filesystem/volfs:default
  3. 向系统中添加 USB 设备。

    有关热插拔 USB 设备的信息,请参见:

  4. (可选)标识 USB 设备。

    以下示例标识了 USB 软盘设备。


    # cd /dev/rdsk
    
    # ls -l c*0 | grep usb
    
    lrwxrwxrwx   1 root  root   55 Mar  5 10:35 c2t0d0s0 ->
    
    ../../devices/pci@1f,0/usb@c,3/storage@3/disk@0,0:a,raw

    在本示例中,软盘设备为 c2t0d0s0

  5. 将软盘插入软盘驱动器中(如果必要)。

  6. 格式化该软盘(如果必要)。


    % rmformat -Flong raw-device
    

    例如,在 SPARC 系统上:


    % rmformat -Flong /dev/rdsk/c2t0d0s2
    

    例如,在 x86 系统上:


    % rmformat -Flong /dev/rdsk/c3t0d0p0
    
  7. 确定文件系统类型并选择以下操作之一:

    • 创建 PCFS 文件系统。


      # mkfs -F pcfs -o nofdisk,size=size raw-device
      

      以 512 字节块为单位指定 -size 选项。

      以下示例说明如何在 SPARC 系统中的 1.4 MB 软盘上创建 PCFS 文件系统:


      # mkfs -F pcfs -o nofdisk,size=2880 /dev/rdsk/c4t0d0s2
      

      以下示例说明如何在 x86 系统中的 1.4 MB 软盘上创建 PCFS 文件系统:


      # mkfs -F pcfs -o nofdisk,size=2880 /dev/rdsk/c4t0d0p0
      

      以下示例说明如何在 SPARC 系统上的 100 MB USB 内存条上创建 PCFS 文件系统:


      # mkfs -F pcfs /dev/rdsk/c5t0d0s2:c
      

      以下示例说明如何在 x86 系统上的 100 MB USB 内存条上创建 PCFS 文件系统:


      # mkfs -F pcfs /dev/rdsk/c5t0d0p0:c
      

      完成此命令可能要用几分钟时间。

    • 创建 UFS 文件系统。


      # newfs raw-device
      

      例如:


      # newfs /dev/rdsk/c4t0d0s7
      

      对于大容量 USB 硬盘,请考虑使用 newfs -f 4096 选项或 newfs -T 选项。


      注 –

      由于软盘的存储容量有限,因此 UFS 文件系统开销会占用软盘上的大部分空间。


    有关在 USB 海量存储设备中创建 PCFS 文件系统和修改片的详细示例,请参见以下两个过程。

Procedure如何在不运行 vold 的情况下在 USB 海量存储设备中修改分区和创建 PCFS 文件系统

以下步骤介绍如何删除现有分区,创建新分区,然后在 USB 设备中创建 PCFS 文件系统。执行此任务之前,请确保先备份所有数据。

  1. 成为超级用户。

  2. 启动 fdisk 实用程序。

    例如:


    # fdisk /dev/rdsk/c3t0d0p0
    
  3. 通过选择选项 3 来删除分区。

    例如:


          Total disk size is 29 cylinders
    
                 Cylinder size is 2048 (512 byte) blocks
    
    
    
                                                   Cylinders
    
          Partition   Status    Type          Start   End   Length    %
    
          =========   ======    ============  =====   ===   ======   ===
    
              1       Active    Solaris2          1    28      28     97
    
    
    
    SELECT ONE OF THE FOLLOWING:
    
       1. Create a partition
    
       2. Specify the active partition
    
       3. Delete a partition
    
       4. Change between Solaris and Solaris2 Partition IDs
    
       5. Exit (update disk configuration and exit)
    
       6. Cancel (exit without updating disk configuration)
    
    Enter Selection: 3
    
  4. 选择要删除的分区号。

    例如:


          Total disk size is 29 cylinders
    
                 Cylinder size is 2048 (512 byte) blocks
    
    
    
                                                   Cylinders
    
          Partition   Status    Type          Start   End   Length    %
    
          =========   ======    ============  =====   ===   ======   ===
    
              1       Active    Solaris2          1    28      28     97
    
    
    
    SELECT ONE OF THE FOLLOWING:
    
       1. Create a partition
    
       2. Specify the active partition
    
       3. Delete a partition
    
       4. Change between Solaris and Solaris2 Partition IDs
    
       5. Exit (update disk configuration and exit)
    
       6. Cancel (exit without updating disk configuration)
    
    Specify the partition number to delete (or enter 0 to exit): 1
    
    
    
    Partition deleted.
  5. 创建分区。

    例如:


          Total disk size is 29 cylinders
    
                 Cylinder size is 2048 (512 byte) blocks
    
    
    
                                                   Cylinders
    
          Partition   Status    Type          Start   End   Length    %
    
          =========   ======    ============  =====   ===   ======   ===
    
    
    
    WARNING: no partitions are defined!
    
    
    
    SELECT ONE OF THE FOLLOWING:
    
       1. Create a partition
    
       2. Specify the active partition
    
       3. Delete a partition
    
       4. Change between Solaris and Solaris2 Partition IDs
    
       5. Exit (update disk configuration and exit)
    
       6. Cancel (exit without updating disk configuration)
    
    Enter Selection: 1
    
  6. 选择 FAT32 分区类型。


          Total disk size is 29 cylinders
    
                 Cylinder size is 2048 (512 byte) blocks
    
    
    
                                                   Cylinders
    
          Partition   Status    Type          Start   End   Length    %
    
          =========   ======    ============  =====   ===   ======   ===
    
    
    
    WARNING: no partitions are defined!
    
    
    
    SELECT ONE OF THE FOLLOWING:
    
       1. Create a partition
    
       2. Specify the active partition
    
       3. Delete a partition
    
       4. Change between Solaris and Solaris2 Partition IDs
    
       5. Exit (update disk configuration and exit)
    
       6. Cancel (exit without updating disk configuration)
    
    Select the partition type to create:
    
       1=SOLARIS2  2=UNIX        3=PCIXOS     4=Other    
    
       5=DOS12     6=DOS16       7=DOSEXT     8=DOSBIG
    
       9=DOS16LBA  A=x86 Boot    B=Diagnostic C=FAT32
    
       D=FAT32LBA  E=DOSEXTLBA   F=EFI        0=Exit? c
    
  7. 指定此分区所使用的磁盘百分比。


           Total disk size is 29 cylinders
    
                  Cylinder size is 2048 (512 byte) blocks
    
    
    
                                                   Cylinders
    
          Partition   Status    Type          Start   End   Length    %
    
          =========   ======    ============  =====   ===   ======   ===
    
    
    
    WARNING: no partitions are defined!
    
    
    
    SELECT ONE OF THE FOLLOWING:
    
       1. Create a partition
    
       2. Specify the active partition
    
       3. Delete a partition
    
       4. Change between Solaris and Solaris2 Partition IDs
    
       5. Exit (update disk configuration and exit)
    
       6. Cancel (exit without updating disk configuration)
    
    Select the partition type to create:
    
    Specify the percentage of disk to use for this partition (or type "c" to 
    
    specify the size in cylinders). 100
    
  8. 选择新分区应为活动分区还是非活动分区。


                  Total disk size is 29 cylinders
    
                  Cylinder size is 2048 (512 byte) blocks
    
    
    
                                                   Cylinders
    
          Partition   Status    Type          Start   End   Length    %
    
          =========   ======    ============  =====   ===   ======   ===
    
    
    
    WARNING: no partitions are defined!
    
    
    
    SELECT ONE OF THE FOLLOWING:
    
       1. Create a partition
    
       2. Specify the active partition
    
       3. Delete a partition
    
       4. Change between Solaris and Solaris2 Partition IDs
    
       5. Exit (update disk configuration and exit)
    
       6. Cancel (exit without updating disk configuration)
    
    Select the partition type to create:
    
    Should this become the active partition? If yes, it  will be activated 
    
    each time the computer is reset or turned on.
    
    Please type "y" or "n". n
    
  9. 更新磁盘配置并退出。


          Total disk size is 29 cylinders
    
                 Cylinder size is 2048 (512 byte) blocks
    
    
    
                                                   Cylinders
    
          Partition   Status    Type          Start   End   Length    %
    
          =========   ======    ============  =====   ===   ======   ===
    
              1                 Win95 FAT32       1    28      28     97
    
    
    
    SELECT ONE OF THE FOLLOWING:
    
       1. Create a partition
    
       2. Specify the active partition
    
       3. Delete a partition
    
       4. Change between Solaris and Solaris2 Partition IDs
    
       5. Exit (update disk configuration and exit)
    
       6. Cancel (exit without updating disk configuration)
    
    Enter Selection: 5
    
  10. 在此分区中创建 PCFS 文件系统。

    例如:


    # mkfs -F pcfs -o fat=32 /dev/rdsk/c3t0d0p0:c
    
    Construct a new FAT file system on /dev/rdsk/c3t0d0p0:c: (y/n)? y
    
    

Procedure如何在不运行 vold 的情况下在 USB 海量存储设备中创建 Solaris 分区和修改片

以下步骤说明如何创建 Solaris 分区和修改片。

有关禁用 vold 的信息,请参见如何在不运行 vold 的情况下准备使用 USB 海量存储设备

执行此任务之前,请确保先备份所有数据。

  1. 成为超级用户。

  2. 启动 fdisk 实用程序。

    例如:


    # fdisk /dev/rdsk/c5t0d0s2
    
    No fdisk table exists. The default partition for the disk is:
    
    
    
      a 100% "SOLARIS System" partition
    
    
    
    Type "y" to accept the default partition,  otherwise type "n" to edit the
    
     partition table.
    
    y
    
  3. 显示当前的片。

    例如:


    # prtvtoc /dev/rdsk/c5t0d0s2
    
    * /dev/rdsk/c5t0d0s2 partition map
    
    *
    
    * Dimensions:
    
    *     512 bytes/sector
    
    *      63 sectors/track
    
    *     255 tracks/cylinder
    
    *   16065 sectors/cylinder
    
    *    5836 cylinders
    
    *    5836 accessible cylinders
    
    *
    
    * Flags:
    
    *   1: unmountable
    
    *  10: read-only
    
    *
    
    *                          First     Sector    Last
    
    * Partition  Tag  Flags    Sector     Count    Sector  Mount Directory
    
           0      0    00          0  93755340  93755339
    
           2      0    00          0  93755340  93755339
  4. 创建包含片信息的文本文件。

    例如:


    slices: 0 = 0, 5GB, "wm", "home" :
    
            1 = 8225280000, 6GB :
    
            2 = 0, 44GB, "wm", "backup" :
    
            6 = 16450560000, 15GB

    请确保每个片都从柱面边界开始。例如,片 1 的初始大小为 822280000 字节,即柱面大小与 1000 的乘积(以字节为单位)。

    有关更多信息,请参见 rmformat(1) 中的 -s 选项说明。

  5. 通过包含以上创建的片文件来创建片。

    例如:


    # rmformat -s slice_file /dev/rdsk/c5t0d0s2
    
  6. 查看新的片信息。

    例如:


    # prtvtoc /dev/rdsk/c5t0d0s2
    
    * /dev/rdsk/c5t0d0s2 partition map
    
    *
    
    * Dimensions:
    
    *     512 bytes/sector
    
    *      63 sectors/track
    
    *     255 tracks/cylinder
    
    *   16065 sectors/cylinder
    
    *    5836 cylinders
    
    *    5836 accessible cylinders
    
    *
    
    * Flags:
    
    *   1: unmountable
    
    *  10: read-only
    
    *
    
    * Unallocated space:
    
    *       First     Sector    Last
    
    *       Sector     Count    Sector
    
    *    10485760   5579240  16064999
    
    *    28647912   3482088  32129999
    
    *    63587280  30168060  93755339
    
    *
    
    *                          First     Sector    Last
    
    * Partition  Tag  Flags    Sector     Count    Sector  Mount Directory
    
           0      8    00          0  10485760  10485759
    
           1      3    01   16065000  12582912  28647911
    
           2      5    00          0  92274688  92274687
    
           6      4    00   32130000  31457280  63587279

Procedure如何在不运行 vold 的情况下挂载或取消挂载 USB 海量存储设备

  1. 有关禁用 vold 的信息,请参见如何在不运行 vold 的情况下准备使用 USB 海量存储设备

  2. 成为超级用户。

  3. 检验 vold 是否未运行。


    # svcs volfs
    
    STATE          STIME    FMRI
    
    disabled       10:39:12 svc:/system/filesystem/volfs:default
  4. (可选)标识该设备。

    例如:


    # cd /dev/rdsk
    
    # ls -l c*0 | grep usb
    
    lrwxrwxrwx   1 root  root   55 Mar  5 10:35 c2t0d0s0 ->
    
    ../../devices/pci@1f,0/usb@c,3/storage@3/disk@0,0:a,raw

    在本示例中,软盘设备为 c2t0d0s0

  5. 选择以下操作之一以挂载或取消挂载 USB 海量存储设备:

    • 挂载 USB 海量存储设备。


      # mount [ -F fstype ] block-device mount-point
      

      本示例说明如何挂载包含 UFS 文件系统的设备:


      # mount /dev/dsk/c1t0d0s2 /mnt
      

      本示例说明如何在 SPARC 系统上挂载包含 PCFS 文件系统的设备:


      # mount -F pcfs /dev/dsk/c3t0d0s2:c /mnt
      

      本示例说明如何在 x86 系统上挂载包含 PCFS 文件系统的设备:


      # mount -F pcfs /dev/dsk/c3t0d0p0:c /mnt
      

      本示例说明如何挂载包含只读 HSFS 文件系统的 CD:


      # mount -F hsfs -o ro /dev/dsk/c1t0d0s2 /mnt
      
    • 取消挂载 USB 海量存储设备。

      首先,确保无人正在使用该设备中的文件系统。

      例如:


      # fuser -c -u /mnt
      
      # umount /mnt
      
  6. 弹出该设备(对于 CD 或软盘设备,此操作可选)。


    # eject /dev/[r]dsk/cntndnsn
    

    例如:


    # eject /dev/rdsk/c1t0d0s2
    

USB 海量存储设备的疑难解答提示

如果在添加或移除 USB 海量存储设备时遇到问题,请牢记以下提示。

请检查 /var/adm/messages 文件中枚举该设备时出现的故障。对于枚举故障,可能需要插入 USB 集线器,或移除集线器并将其直接连接至根 USB 集线器。

禁用特定的 USB 驱动程序

通过禁用 USB 设备的客户机驱动程序,可以禁用特定类型的 USB 设备。例如,通过禁用驱动 USB 打印机的 usbprn 驱动程序,可以禁用这些打印机。禁用 usbprn 不会影响其他种类的设备,如 USB 存储设备。

下表提供了一些 USB 设备类型及其对应的驱动程序。

设备类型 

要禁用的驱动程序 

音频 

usb_acusb_as

HID(通常为键盘和鼠标) 

hid

存储 

scsa2usb

打印机 

usbprn

串行 

usbser_edge

如果禁用仍与系统连接的 USB 设备的驱动程序,则会显示类似如下的控制台消息:


usba10: WARNING: usba:    no driver found for device name

Procedure如何禁用特定的 USB 驱动程序

  1. 成为超级用户。

  2. /etc/system 文件中排除驱动程序别名项。

    例如,包含以下排除语句,用于排除 usbprn 驱动程序。


    exclude: usbprn
  3. 重新引导系统。


    # init 6
    

Procedure如何删除未使用的 USB 设备链路

如果在系统电源关闭时移除 USB 设备,请使用此过程。在系统电源关闭时移除 USB 设备可能会保留不存在设备的设备链路。

  1. 成为超级用户。

  2. 关闭可能正在访问该设备的所有应用程序。

  3. 删除特定 USB 类的未使用的链路。

    例如:


    # devfsadm -C -c audio
    

    或者,直接删除悬而未决的链路:


    # devfsadm -C
    

使用 USB 音频设备(任务列表)

任务 

说明 

参考 

添加 USB 音频设备。 

添加 USB 麦克风和扬声器。 

如何添加 USB 音频设备

确定系统的主音频设备。 

确定哪个音频设备是主音频设备。 

如何确定系统的主音频设备

更改主 USB 音频设备。 

如果移除或更改 USB 音频设备,则可能需要使某个音频设备成为主音频设备。 

如何更改主 USB 音频设备

删除未使用的 USB 设备链路。 

如果在系统电源关闭时移除 USB 音频设备,则 /dev/audio 设备可能会指向不存在的 /dev/sound/* 设备。

如何删除未使用的 USB 设备链路

解决 USB 音频问题。 

如果 USB 扬声器无法发声,请使用本部分来解决此问题。 

USB 音频设备问题疑难解答

使用 USB 音频设备

有关特定 Solaris 发行版中的 USB 音频支持的信息,请参见Solaris 对 USB 设备的支持

此 Solaris 发行版提供了由一对协作驱动程序 usb_acusb_as 实现的 USB 音频支持。 音频控制器驱动程序 usb_ac 是与 Solaris USB 体系结构兼容的客户机驱动程序,用于向用户应用程序提供控制接口。音频流驱动程序 usb_as 可在播放和录制期间处理音频数据消息。该驱动程序将设置样例频率和精度,并对来自 usb_ac 驱动程序的请求进行编码。这两个驱动程序都符合 USB 音频类 1.0 规范。

某些音频设备可以在软件控制下设置音量。为了管理此功能,可以将 STREAMS 模块 usb_ah 推送至 HID 驱动程序的顶部。

Solaris 支持仅播放、仅录制或同时播放和录制的 USB 音频设备, 还支持热插拔 USB 音频设备。

主音频设备为 /dev/audio。通过使用以下命令,可以检验 /dev/audio 是否指向 USB 音频:


% mixerctl

Device /dev/audioctl:

  Name    = USB Audio

  Version = 1.0

  Config  = external



Audio mixer for /dev/audioctl is enabled

连接 USB 音频设备后,可以通过 /dev/sound/N 设备链路使用 audioplayaudiorecord 命令对其进行访问。

请注意,/dev/audio/dev/sound/N 设备可能是指扬声器、麦克风或组合设备。 如果引用不正确的设备类型,则该命令将失败。例如,如果尝试将其与麦克风一同使用,则 audioplay 命令将失败。

对于大多数 Sun 音频应用程序(如 audioplayaudiorecord),通过设置 AUDIODEV shell 变量或为这些命令指定 -d 选项,可以选择特定的缺省音频设备。但是,设置 AUDIODEV 不适用于将 /dev/audio 硬编码为音频文件的第三方应用程序。

插入 USB 音频设备时,如果没有正在使用 /dev/audio,则该设备将自动成为主音频设备 /dev/audio。有关将 /dev/audio 从板载音频更改为 USB 音频或从 USB 音频更改为板载音频的说明,请参阅如何更改主 USB 音频设备usb_ac(7D)

热插拔多个 USB 音频设备

如果将 USB 音频设备插入系统,该设备将成为主音频设备 /dev/audio。即使在重新引导系统后,该设备也仍为主音频设备。如果插入其他 USB 音频设备,则最后一个设备将成为主音频设备。

有关 USB 音频设备问题疑难解答的其他信息,请参见 usb_ac(7D)

Procedure如何添加 USB 音频设备

  1. 插入 USB 扬声器。

    主音频设备 /dev/audio 指向 USB 扬声器。


    % ls -l /dev/audio
    
    lrwxrwxrwx   1 root     root    10 Feb 13 08:46 /dev/audio -> usb/audio0
  2. (可选)移除扬声器。然后,重新插入扬声器。

    如果移除扬声器,则 /dev/audio 设备将恢复回板载音频。


    % ls -l /dev/audio
    
    lrwxrwxrwx   1 root     root   7 Feb 13 08:47 /dev/audio -> sound/0
  3. 添加 USB 麦克风。


    % ls -l /dev/audio
    
    lrwxrwxrwx   1 root     root    10 Feb 13 08:54 /dev/audio -> usb/audio1

Procedure如何确定系统的主音频设备

此过程假定已连接 USB 音频设备。

    检查系统的新音频链路。

    • 使用 ls 命令显示系统的新音频链路。

      例如:


      % ls -lt /dev/audio*
      
      lrwxrwxrwx   1 root  root      7 Jul 23 15:46 /dev/audio -> usb/audio0
      
      lrwxrwxrwx   1 root  root     10 Jul 23 15:46 /dev/audioctl -> 
      
      usb/audioctl0/
      
      % ls -lt /dev/sound/*
      
      lrwxrwxrwx   1 root  root     74 Jul 23 15:46 /dev/sound/1 -> 
      
      ../../devices/pci@1f,4000/usb@5/hub@1/device@3/sound-control@0:...
      
      lrwxrwxrwx   1 root  root     77 Jul 23 15:46 /dev/sound/1ctl -> 
      
      ../../devices/pci@1f,4000/usb@5/hub@1/device@3/sound-control@0:...
      
      lrwxrwxrwx   1 root  other    66 Jul 23 14:21 /dev/sound/0 -> 
      
      ../../devices/pci@1f,4000/ebus@1/SUNW,CS4231@14,200000:sound,audio
      
      lrwxrwxrwx   1 root  other    69 Jul 23 14:21 /dev/sound/0ctl -> 
      
      ../../devices/pci@1f,4000/ebus@1/SUNW,CS4231@14,200000:sound,audioctl
      
      % 

      请注意,主音频设备 /dev/audio 指向新插入的 USB 音频设备 /dev/usb/audio0

    • 还可以使用 prtconf 命令来检查系统的 USB 音频设备,并查找 USB 设备信息。


      % prtconf
      
      .
      
      .
      
      .
      
      usb, instance #0
      
         hub, instance #0
      
              mouse, instance #0
      
              keyboard, instance #1
      
              device, instance #0
      
                  sound-control, instance #0
      
                  sound, instance #0
      
                  input, instance #0
      
      .
      
      .
      
      .

Procedure如何更改主 USB 音频设备

    选择以下操作之一可更改主 USB 音频设备。

    • 如果要使板载音频设备成为主音频设备,请移除 USB 音频设备。然后,/dev/audio 链接即会指向 /dev/sound/0 项。如果 /dev/sound/0 项不是主音频设备,请关闭系统并使用 boot -r 命令,或以超级用户身份运行 devfsadm -i 命令。

    • 如果要使 USB 音频设备成为主音频设备,只需插入 USB 音频设备并检查设备链路即可。

USB 音频设备问题疑难解答

有时,USB 扬声器不会发出任何声音,即使连接了驱动程序并将音量设置为高也是如此。热插拔该设备可能不会更改该行为。

解决方法是关闭然后再打开 USB 扬声器的电源。

音频设备拥有权要点

使用音频设备时,请牢记音频设备拥有权的以下要点:

使用 cfgadm 命令热插拔 USB 设备(任务列表)

任务 

说明 

参考 

显示 USB 总线信息。 

显示有关 USB 设备和总线的信息。 

如何显示 USB 总线信息 (cfgadm)

取消配置 USB 设备。 

以逻辑方式取消配置仍通过物理方式连接至系统的 USB 设备。 

如何取消配置 USB 设备

配置 USB 设备。 

配置先前取消配置的 USB 设备。 

如何配置 USB 设备

以逻辑方式断开 USB 设备连接。 

如果物理位置远离系统,则可以逻辑方式断开 USB 设备连接。 

如何以逻辑方式断开 USB 设备连接

以逻辑方式连接 USB 设备。 

以逻辑方式连接先前通过逻辑方式断开连接或取消配置的 USB 设备。 

如何以逻辑方式连接 USB 设备

断开 USB 设备子树连接。 

断开 USB 设备子树连接,该子树是集线器下的设备分层结构(或树)。 

如何以逻辑方式断开 USB 设备子树连接

重置 USB 设备。 

重置 USB 设备,以便以逻辑方式移除和重新创建设备。 

如何重置 USB 设备

更改多重配置 USB 设备的缺省配置。 

更改多重配置 USB 设备的缺省配置。 

如何更改多重配置 USB 设备的缺省配置

使用 cfgadm 命令热插拔 USB 设备

可以在正在运行的系统中添加或移除 USB 设备,而不必使用 cfgadm 命令。不过,USB 设备也可以逻辑方式热插拔,而不必以物理方式移除。在远程位置工作并且需要禁用或重置未正常运行的 USB 设备时,这种方案比较方便。cfgadm 命令还可提供显示 USB 设备树(包括制造商和产品信息)的方法。

cfgadm 命令可以显示有关附着的信息,附着点是指系统中可以执行动态重新配置操作的位置。附着点由以下几项组成:

附着点由逻辑附着点 ID 和物理附着点 ID (Ap_Id) 表示。物理 Ap_Id 是附着点的物理路径名。逻辑 Ap_Id 是物理 Ap_Id 的用户友好替代项。有关 Ap_Id 的更多信息,请参见 cfgadm_usb(1M)

cfgadm 命令提供了以下 USB 设备状态信息。

插座状态 

说明 

empty/unconfigured

设备不是通过物理方式连接的。 

disconnected/unconfigured

设备以逻辑方式断开连接且不可用,即使仍可以通过物理方式连接设备也是如此。 

connected/unconfigured

设备以逻辑方式建立连接但不可用。设备在 prtconf 输出中可见。

connected/configured

设备已连接并且可用。 

以下各小节介绍如何使用 cfgadm 命令通过软件热插拔 USB 设备。这些小节中的所有样例 USB 设备信息都已截断,以便集中阐明相关信息。

Procedure如何显示 USB 总线信息 (cfgadm)

有关使用 prtconf 命令显示 USB 配置信息的示例,请参见如何显示 USB 设备信息

  1. 显示 USB 总线信息。

    例如:


    % cfgadm
    
    Ap_Id                    Type         Receptacle   Occupant     Condition
    
    usb0/4.5                 usb-hub      connected    configured   ok
    
    usb0/4.5.1               usb-device   connected    configured   ok
    
    usb0/4.5.2               usb-printer  connected    configured   ok
    
    usb0/4.5.3               usb-mouse    connected    configured   ok
    
    usb0/4.5.4               usb-device   connected    configured   ok
    
    usb0/4.5.5               usb-storage  connected    configured   ok
    
    usb0/4.5.6               usb-communi  connected    configured   ok
    
    usb0/4.5.7               unknown      empty        unconfigured ok
    

    在前面的示例中,usb0/4.5.1 标识连接至二级外部集线器的端口 1 的设备,二级外部集线器连接至一级外部集线器的端口 5,而一级外部集线器连接至第一个 USB 控制器的根集线器端口 4。

  2. 显示特定 USB 设备信息。

    例如:


    % cfgadm -l -s "cols=ap_id:info"
    
    Ap_Id       Information
    
     usb0/4.5.1  Mfg: Inside Out Networks Product: Edgeport/421 NConfigs: 1 
    
    Config: 0  : ...
    
     usb0/4.5.2  Mfg: <undef> Product: <undef>   NConfigs: 1 Config: 0 ...
    
     usb0/4.5.3  Mfg: Mitsumi Product: Apple USB Mouse NConfigs: 1
    
    Config: 0 ...
    
     usb0/4.5.4  Mfg: NMB  Product: NMB USB KB/PS2 M NConfigs: 1 Config: 0
    
     usb0/4.5.5  Mfg: Hagiwara Sys-Com  Product: SmartMedia R/W  NConfigs: 1 
    
    Config: 0 : ...
    
     usb0/4.5.6  Mfg: 3Com Inc.  Product: U.S.Robotics 56000 Voice USB Modem 
    
    NConfigs: 2 ...
    
     usb0/4.5.7

Procedure如何取消配置 USB 设备

可以取消配置仍通过物理方式连接至系统的 USB 设备。但是,无法再将驱动程序连接至该设备。请注意, prtconf 输出中会始终显示 USB 设备,即使已取消配置该设备也是如此。

  1. 成为超级用户。

  2. 取消配置 USB 设备。

    例如:


    # cfgadm -c unconfigure usb0/4.7
    
    Unconfigure the device: /devices/pci@8,700000/usb@5,3/hub@4:4.7
    
    This operation will suspend activity on the USB device
    
    Continue (yes/no)? y
    
  3. 验证是否已取消配置该设备。

    例如:


    # cfgadm  
    
    Ap_Id                    Type         Receptacle   Occupant     Condition
    
    usb0/4.5                 usb-hub      connected    configured   ok
    
    usb0/4.5.1               usb-device   connected    configured   ok
    
    usb0/4.5.2               usb-printer  connected    configured   ok
    
    usb0/4.5.3               usb-mouse    connected    configured   ok
    
    usb0/4.5.4               usb-device   connected    configured   ok
    
    usb0/4.5.5               usb-storage  connected    configured   ok
    
    usb0/4.5.6               usb-communi  connected    configured   ok
    
    usb0/4.5.7               unknown      empty        unconfigured ok
    
    usb0/4.6                 usb-storage  connected    configured   ok
    
    usb0/4.7                 usb-storage  connected    unconfigured ok

Procedure如何配置 USB 设备

  1. 成为超级用户。

  2. 配置 USB 设备。

    例如:


    # cfgadm -c configure usb0/4.7 
    
  3. 检验是否已配置 USB 设备。

    例如:


    # cfgadm usb0/4.7
    
    Ap_Id                  Type         Receptacle  Occupant    Condition
    
    usb0/4.7               usb-storage  connected   configured  ok

Procedure如何以逻辑方式断开 USB 设备连接

如果要从系统和 prtconf 输出中删除 USB 设备,但物理位置远离系统,则只需以逻辑方式断开 USB 设备连接即可。从物理角度来看,该设备仍然处于连接状态。但是,从逻辑角度来看,对系统而言设备已断开连接、不可用且不可见。

  1. 成为超级用户。

  2. 断开 USB 设备连接。

    例如:


    # cfgadm -c disconnect -y usb0/4.7
    
  3. 验证是否已断开该设备的连接。

    例如:


    # cfgadm usb0/4.7
    
    Ap_Id                  Type      Receptacle    Occupant      Condition
    
    usb0/4.7               unknown   disconnected  unconfigured  ok

Procedure如何以逻辑方式连接 USB 设备

使用此过程可以逻辑方式连接先前通过逻辑方式断开连接或取消配置的 USB 设备。

  1. 成为超级用户。

  2. 连接 USB 设备。

    例如:


    # cfgadm -c configure usb0/4.7
    
  3. 验证是否已连接该设备。

    例如:


    # cfgadm usb0/4.7
    
    Ap_Id                  Type         Receptacle  Occupant    Condition
    
    usb0/4.7               usb-storage  connected   configured  ok

    对系统而言设备现在可用且可见。

Procedure如何以逻辑方式断开 USB 设备子树连接

使用此过程可以断开 USB 设备子树连接,该子树是集线器下的设备分层结构(或树)。

  1. 成为超级用户。

  2. 删除 USB 设备子树。

    例如:


    # cfgadm -c disconnect -y usb0/4
    
  3. 检验是否已断开 USB 设备子树连接。

    例如:


    # cfgadm usb0/4
    
    Ap_Id                  Type       Receptacle   Occupant     Condition
    
    usb0/4                 unknown    disconnected unconfigured ok

Procedure如何重置 USB 设备

如果 USB 设备行为异常,请使用 cfgadm 命令重置该设备,即以逻辑方式删除并重新创建该设备。

  1. 成为超级用户。

  2. 确保设备未被使用。

  3. 重置设备。

    例如:


    # cfgadm -x usb_reset -y usb0/4.7
    
  4. 检验是否已连接设备。

    例如:


    # cfgadm usb0/4.7
    
    Ap_Id                  Type         Receptacle   Occupant     Condition
    
    usb0/4.7               usb-storage  connected    configured   ok

Procedure如何更改多重配置 USB 设备的缺省配置

使用多重配置 USB 设备时,请牢记以下要点:

  1. 确保设备未被使用。

  2. 更改缺省 USB 配置。

    例如:


    # cfgadm -x usb_config -o config=2 usb0/4
    
       Setting the device: /devices/pci@1f,0/usb@c,3:4
    
       to USB configuration 2
    
       This operation will suspend activity on the USB device
    
       Continue (yes/no)? yes
    
  3. 检验设备是否已更改。

    例如:


    # cfgadm -lv usb0/4
    
    Ap_Id  Receptacle   Occupant     Condition  Information When  Type    
    
         Busy     Phys_Id
    
    usb0/4 connected    unconfigured ok         Mfg: Sun  2000   
    
    Product: USB-B0B0 aka Robotech
    
    With 6 EPPS High Clk Mode   NConfigs: 7  Config: 2  : EVAL Board Setup  
    
    unavailable
    
    usb-device   n        /devices/pci@1f,0/usb@c,3:4

    请注意,Config: 现在显示 2。