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

使用 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。