solaris下使用USB 海量存储设备

第8 章• 使用USB 设备(任务) 139
从Solaris 10 1/06 发行版开始,vold 可自动挂载热插拔设备。有关更多信息,请参见第
124 页中的“vold 用于识别热插拔USB 设备”。
支持使用标准MS-DOS 或Windows (FAT) 文件系统的USB 存储设备。
可以使用用户友好的rmformat 命令来创建片,还可以使用fdisk 命令对USB 设备进行分
区,但决不能使用format 实用程序或rmformat -F 命令以物理方式格式化USB 驱动器。
可使用rmformat 命令显示插入了介质的所有USB 设备。有关示例,请参见第146 页中的
“如何显示USB 设备信息”。
由于不再需要mount 命令,因此非超级用户现在可以访问USB 存储设备。设备将通过
vold 自动挂载并且位于/rmdisk 目录下。如果在系统关闭时连接了一个新设备,可使用
boot -r 命令进行重新配置引导,以便vold 可以识别该设备。
可以通过卷管理来管理这些设备,也可以不通过卷管理。
可以挂载和访问使用FAT 文件系统的磁盘。例如:
mount -F pcfs /dev/dsk/c2t0d0s0:c /mnt
现在,除了支持LOG SENSE 页面的USB 存储设备之外,其他所有USB 存储设备都会进行
电源管理。包含LOG SENSE 页面的设备通常是通过USB-to-SCSI 桥接设备进行连接的
SCSI 驱动器。
使用USB 海量存储设备时,应用程序的工作方式可能有所不同。如果要将应用程序用于
USB 存储设备,请牢记以下问题:
应用程序可能对介质的存储容量作出不正确的假定,因为以前仅有较小存储容量的
设备(如软盘)才是可移除设备。
当应用程序发出请求,要求设备弹出介质,而此移除操作却不适用于该设备(如硬
盘驱动器)时,请求会成功,但不会产生任何结果。
如果要使用以前的Solaris 发行版中的性能,即不将所有的USB 海量存储设备都视为
可移除介质设备,则可通过更新/kernel/drv/scsa2usb.conf 文件来强制使用旧性
能。
有关使用USB 海量存储设备的更多信息,请参见scsa2usb (7D)。
使用USB 软盘设备
USB 软盘设备显示为可移除介质设备。USB 软盘设备不是通过fd(软盘)驱动程序进行管
理的。发出旨在用于fd(本机软盘)驱动程序的ioctl(2) 调用的应用程序将失败。仅发出
read(2) 和write(2) 调用的应用程序将成功。其他应用程序(如SunPCI 和rmformat)也将
成功。
卷管理(vold) 会将USB 软盘设备视为SCSI 可移除介质设备。通过卷管理可在/rmdisk 目录
下访问该设备。
有关如何使用USB 软盘设备的更多信息,请参见第1 章。
使用USB 海量存储设备
140 系统管理指南:设备和文件系统• 2006 年9 月
使用不兼容的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)。
如何使用不兼容的USB 海量存储设备
成为超级用户。
向/kernel/drv/scsa2usb.conf 文件中添加项。
以下项适用于USB 内存条。
attribute-override-list = "vid=* reduced-cmd-support=true";
重新引导系统或执行以下操作:
a. 手动更新驱动程序。
# update_drv -f scsa2usb
b. 移除该设备。
c. 添加该设备。
热插拔USB 海量存储设备
热插拔设备是指在未关闭操作系统或未关闭系统电源的情况下添加或移除设备。所有的
USB 设备都是可热插拔设备。
可移除介质管理器(vold) 现在可以识别热插拔设备。一旦插入该设备,vold 便会在几秒钟
内尝试对其进行挂载。如果未发生任何情况,请查看该设备是否已挂载。
确保vold 正在运行。
1
2
3
使用USB 海量存储设备
第8 章• 使用USB 设备(任务) 141
# 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
此时会以只读方式挂载包含这些文件系统的可移除设备。
使用USB 海量存储设备
142 系统管理指南:设备和文件系统• 2006 年9 月
如何在不运行vold 的情况下添加USB 海量存储设备
(可选)有关禁用vold 的信息,请参见第146 页中的“如何在不运行vold 的情况下准备使
用USB 海量存储设备”。
检验vold 是否未运行。
# svcs volfs
STATE STIME FMRI
disabled 10:39:12 svc:/system/filesystem/volfs:default
连接USB 海量存储设备。
检验是否已添加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
如何添加USB 相机
如果相机的介质使用PCFS 文件系统,则vold 会自动挂载该相机。如果该设备未绑定至
scsa2usb 驱动程序,请使用libusb 应用程序来传送图片。有关更多信息,请参阅
/usr/sfw/share/doc/libusb/libusb.txt 。
成为超级用户。
插入并打开USB 相机。
系统将为相机创建一个逻辑设备。插入相机后,会将输出写入/var/adm/messages 文件,以
确认设备的连接。系统会将相机视为存储设备。
检查写入/var/adm/messages 文件的输出。
# more /var/adm/messages
1
2
3
4
1
2
3
使用USB 海量存储设备
第8 章• 使用USB 设备(任务) 143
通过检查此输出,可以确定已创建的逻辑设备,这样便可以使用该设备来访问图像。其输
入与以下内容类似:
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 1root root 58 Jun 30 2004 c3t0d0p0 ->
../../devices/pci@0,0/pci925,1234@7,2/storage@2/disk@0,0:a
挂载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)。
检验图像文件是否可用。
例如:
# ls /mnt/DCIM/100OLYMP/
P7220001.JPG* P7220003.JPG* P7220005.JPG*
P7220002.JPG* P7220004.JPG* P7220006.JPG*
4
5
使用USB 海量存储设备
144 系统管理指南:设备和文件系统• 2006 年9 月
查看并处理USB 相机创建的图像文件。
例如:
# /usr/dt/bin/sdtimage P7220001.JPG &
断开相机连接之前,取消挂载文件系统。
例如:
# umount /mnt
(可选的)关闭并断开相机连接。
如何在不运行vold 的情况下移除USB 海量存储设备
(可选)有关禁用vold 的信息,请参见第146 页中的“如何在不运行vold 的情况下准备使
用USB 海量存储设备”。
成为超级用户。
检验vold 是否未运行。
# svcs volfs
STATE STIME FMRI
disabled Sep_29 svc:/system/filesystem/volfs:default
停止使用该设备的所有活动应用程序。
取消挂载该设备。
移除该设备。
在运行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)。
6
7
8
1
2
3
4
5
6
使用USB 海量存储设备
第8 章• 使用USB 设备(任务) 145
如何在不运行vold 的情况下准备使用USB 海量存储
设备
可以在不运行卷管理(vold) 的情况下使用USB 海量存储设备。可通过发出以下命令停止
vold:
# svcadm disable volfs
或者,使用以下过程使vold 保持运行,但不使用vold 来注册USB 海量存储设备。
成为超级用户。
检验vold 是否未运行。
# svcs volfs
STATE STIME FMRI
disabled 10:28:23 svc:/system/filesystem/volfs:default
通过对/etc/vold.conf 文件中的以下行进行注释,删除USB 海量存储设备的卷管理注册功
能。
# use rmdisk drive /dev/rdsk/c*s2 dev_rmdisk.so rmdisk%d
注释该行后,重新启动vold。
# svcadm enable volfs
注意– 如果注释掉该行,且其他可移除设备(如SCSI 或Peerless)位于系统上,则这些设备
的vold 注册功能也会被禁用。
有关更多信息,请参见vold.conf(4)。
如何显示USB 设备信息
显示有关USB 设备的信息。
例如,使用prtconf 命令可显示USB 设备信息。本示例中的prtconf 输出已截断为仅显示
USB 设备信息。
$ prtconf
usb, instance #0
hub, instance #2
device, instance #8
1
2
3
4

使用USB 海量存储设备
146 系统管理指南:设备和文件系统• 2006 年9 月
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
使用USB 海量存储设备
第8 章• 使用USB 设备(任务) 147
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
如何在不运行vold 的情况下在USB 海量存储设备中
创建文件系统
使用此过程可向USB 海量存储设备中添加文件系统。
必须先格式化USB 软盘,然后才能向其中添加文件系统。所有其他的USB 海量存储设备只
需PCFS 或UFS 文件系统即可使用。格式化USB 软盘时,请牢记以下要点:
除在USB 软盘上以外,请勿使用rmformat -F。
如果缺省的片不可接受,请使用rmformat -s 命令来创建片。使用fdisk 实用程序对USB
设备进行分区(如果需要)。有关逐步说明,请参见:
第150 页中的“如何在不运行vold 的情况下在USB 海量存储设备中修改分区和创建
PCFS 文件系统”
第156 页中的“如何在不运行vold 的情况下在USB 海量存储设备中创建Solaris 分区
和修改片”
注– 仅在需要格式化USB 软盘时,才执行步骤5–6。
(可选)有关禁用vold 的信息,请参见第146 页中的“如何在不运行vold 的情况下准备使
用USB 海量存储设备”。
检验vold 是否未运行。
# svcs volfs
STATE STIME FMRI
disable 10:39:12 svc:/system/filesystem/volfs:default
1
2
使用USB 海量存储设备
148 系统管理指南:设备和文件系统• 2006 年9 月
向系统中添加USB 设备。
有关热插拔USB 设备的信息,请参见:
第141 页中的“热插拔USB 海量存储设备”
第167 页中的“使用cfgadm 命令热插拔USB 设备(任务列表)”
(可选)标识USB 设备。
以下示例标识了USB 软盘设备。
# cd /dev/rdsk
# ls -l c*0 | grep usb
lrwxrwxrwx 1root root 55 Mar 5 10:35 c2t0d0s0 ->
../../devices/pci@1f,0/usb@c,3/storage@3/disk@0,0:a,raw
在本示例中,软盘设备为c2t0d0s0。
将软盘插入软盘驱动器中(如果必要)。
格式化该软盘(如果必要)。
% rmformat -Flong raw-device
例如,在SPARC 系统上:
% rmformat -Flong /dev/rdsk/c2t0d0s2
例如,在x86 系统上:
% rmformat -Flong /dev/rdsk/c3t0d0p0
确定文件系统类型并选择以下操作之一:
创建PCFS 文件系统。
# mkfs -F pcfs -o nofdisk,size=size raw-device
以512 字节块为单位指定-size 选项。
以下示例说明如何在SPARC 系统中的1.4MB软盘上创建PCFS 文件系统:
# mkfs -F pcfs -o nofdisk,size=2880 /dev/rdsk/c4t0d0s2
以下示例说明如何在x86 系统中的1.4MB软盘上创建PCFS 文件系统:
# mkfs -F pcfs -o nofdisk,size=2880 /dev/rdsk/c4t0d0p0
以下示例说明如何在SPARC 系统上的100MBUSB 内存条上创建PCFS 文件系统:
3
4
5
6
7
使用USB 海量存储设备
第8 章• 使用USB 设备(任务) 149
# mkfs -F pcfs /dev/rdsk/c5t0d0s2:c
以下示例说明如何在x86 系统上的100MBUSB 内存条上创建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 文件系统和修改片的详细示例,请参见以下两个过
程。
如何在不运行vold 的情况下在USB 海量存储设备中
修改分区和创建PCFS 文件系统
以下步骤介绍如何删除现有分区,创建新分区,然后在USB 设备中创建PCFS 文件系统。执
行此任务之前,请确保先备份所有数据。
成为超级用户。
启动fdisk 实用程序。
例如:
# fdisk/dev/rdsk /c3t0d0p0
通过选择选项3 来删除分区。
例如:
Total disk size is 29 cylinders
Cylinder size is 2048 (512 byte) blocks
Cylinders
1
2
3
使用USB 海量存储设备
150 系统管理指南:设备和文件系统• 2006 年9 月
Partition Status Type Start End Length %
========= ====== ============ ===== === ====== ===
1Active 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
选择要删除的分区号。
例如:
Total disk size is 29 cylinders
Cylinder size is 2048 (512 byte) blocks
Cylinders
Partition Status Type Start End Length %
========= ====== ============ ===== === ====== ===
1Active Solaris2 1 28 28 97
SELECT ONE OF THE FOLLOWING:
1. Create a partition
2. Specify the active partition
4
使用USB 海量存储设备
第8 章• 使用USB 设备(任务) 151
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.
创建分区。
例如:
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)
5
使用USB 海量存储设备
152 系统管理指南:设备和文件系统• 2006 年9 月
Enter Selection: 1
选择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
6
使用USB 海量存储设备
第8 章• 使用USB 设备(任务) 153
指定此分区所使用的磁盘百分比。
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
选择新分区应为活动分区还是非活动分区。
Total disk size is 29 cylinders
Cylinder size is 2048 (512 byte) blocks
Cylinders
7
8
使用USB 海量存储设备
154 系统管理指南:设备和文件系统• 2006 年9 月
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
更新磁盘配置并退出。
Total disk size is 29 cylinders
Cylinder size is 2048 (512 byte) blocks
Cylinders
Partition Status Type Start End Length %
========= ====== ============ ===== === ====== ===
1Win95 FAT32 128 28 97
9
使用USB 海量存储设备
第8 章• 使用USB 设备(任务) 155
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
在此分区中创建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
如何在不运行vold 的情况下在USB 海量存储设备中
创建Solaris 分区和修改片
以下步骤说明如何创建Solaris 分区和修改片。
有关禁用vold 的信息,请参见第146 页中的“如何在不运行vold 的情况下准备使用USB 海
量存储设备”。
执行此任务之前,请确保先备份所有数据。
成为超级用户。
启动fdisk 实用程序。
例如:
# fdisk/dev/rdsk /c5t0d0s2
No fdisk table exists. The default partition for the disk is:
a 100% "SOLARIS System" partition
10
1
2
使用USB 海量存储设备
156 系统管理指南:设备和文件系统• 2006 年9 月
Type "y" to accept the default partition, otherwise type "n" to edit the
partition table.
y
显示当前的片。
例如:
# 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
3
使用USB 海量存储设备
第8 章• 使用USB 设备(任务) 157
创建包含片信息的文本文件。
例如:
slices: 0 = 0, 5GB, "wm", "home" :
1= 8225280000, 6GB :
2 = 0, 44GB, "wm", "backup" :
6 = 16450560000, 15GB
请确保每个片都从柱面边界开始。例如,片1 的初始大小为822280000 字节,即柱面大小与
1000 的乘积(以字节为单位)。
有关更多信息,请参见rmformat(1) 中的-s 选项说明。
通过包含以上创建的片文件来创建片。
例如:
# rmformat -s slice_file /dev/rdsk/c5t0d0s2
查看新的片信息。
例如:
# 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
4
5
6
使用USB 海量存储设备
158 系统管理指南:设备和文件系统• 2006 年9 月
* 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
如何在不运行vold 的情况下挂载或取消挂载USB 海
量存储设备
有关禁用vold 的信息,请参见第146 页中的“如何在不运行vold 的情况下准备使用USB 海
量存储设备”。
成为超级用户。
检验vold 是否未运行。
# svcs volfs
STATE STIME FMRI
disabled 10:39:12 svc:/system/filesystem/volfs:default
1
2
3
使用USB 海量存储设备
第8 章• 使用USB 设备(任务) 159
(可选)标识该设备。
例如:
# cd /dev/rdsk
# ls -l c*0 | grep usb
lrwxrwxrwx 1root root 55 Mar 5 10:35 c2t0d0s0 ->
../../devices/pci@1f,0/usb@c,3/storage@3/disk@0,0:a,raw
在本示例中,软盘设备为c2t0d0s0。
选择以下操作之一以挂载或取消挂载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
弹出该设备(对于CD 或软盘设备,此操作可选)。
# eject /dev/[r]dsk/cntndnsn
例如:
# eject /dev/rdsk/c1t0d0s2
4
5
6
使用USB 海量存储设备
160 系统管理指南:设备和文件系统• 2006 年9 月
USB 海量存储设备的疑难解答提示
如果在添加或移除USB 海量存储设备时遇到问题,请牢记以下提示。
请检查/var/adm/messages 文件中枚举该设备时出现的故障。对于枚举故障,可能需要插入
USB 集线器,或移除集线器并将其直接连接至根USB 集线器。
如果在系统关闭时添加或移除USB 设备,则必须执行重新配置引导。
ok boot -r
如果系统正在运行时访问连接的设备遇到问题,请尝试以下命令:
# devfsadm
如果因暂停操作关闭了系统电源,请勿来回移动设备。有关更多信息,请参见第134 页
中的“SPARC: USB 电源管理”。
如果应用程序在设备使用时已将其移除并且该设备不再可用,请停止应用程序。使用
prtconf 命令可查看是否已删除了设备节点。
禁用特定的USB 驱动程序
通过禁用USB 设备的客户机驱动程序,可以禁用特定类型的USB 设备。例如,通过禁用驱
动USB 打印机的usbprn 驱动程序,可以禁用这些打印机。禁用usbprn 不会影响其他种类的
设备,如USB 存储设备。
下表提供了一些USB 设备类型及其对应的驱动程序。
设备类型要禁用的驱动程序
音频usb_ac 和usb_as
HID(通常为键盘和鼠标) hid
存储scsa2usb
打印机usbprn
串行usbser_edge
如果禁用仍与系统连接的USB 设备的驱动程序,则会显示类似如下的控制台消息:
usba10: WARNING: usba: no driver found for device name
使用USB 海量存储设备
第8 章• 使用USB 设备(任务) 161
如何禁用特定的USB 驱动程序
成为超级用户。
从/etc/system 文件中排除驱动程序别名项。
例如,包含以下排除语句,用于排除usbprn 驱动程序。
exclude: usbprn
重新引导系统。
# init 6
如何删除未使用的USB 设备链路
如果在系统电源关闭时移除USB 设备,请使用此过程。在系统电源关闭时移除USB 设备可
能会保留不存在设备的设备链路。
成为超级用户。
关闭可能正在访问该设备的所有应用程序。
删除特定USB 类的未使用的链路。
例如:
# devfsadm -C -c audio
或者,直接删除悬而未决的链路:
# devfsadm -C
使用USB 音频设备(任务列表)
任务说明参考
添加USB 音频设备。添加USB 麦克风和扬声器。第164 页中的“如何添加USB
音频设备”
确定系统的主音频设备。确定哪个音频设备是主音频设
备。
第165 页中的“如何确定系统的
主音频设备”
更改主USB 音频设备。如果移除或更改USB 音频设
备,则可能需要使某个音频设备
成为主音频设备。
第166 页中的“如何更改主USB
音频设备”
1
2
3
1
2
3
使用USB 音频设备(任务列表)
162 系统管理指南:设备和文件系统• 2006 年9 月
任务说明参考
删除未使用的USB 设备链路。如果在系统电源关闭时移除USB
音频设备,则/dev/audio 设备
可能会指向不存在的
/dev/sound/* 设备。
第162 页中的“如何删除未使用
的USB 设备链路”
解决USB 音频问题。如果USB 扬声器无法发声,请
使用本部分来解决此问题。
第166 页中的“USB 音频设备问
题疑难解答”
使用USB 音频设备
有关特定Solaris 发行版中的USB 音频支持的信息,请参见第125 页中的“Solaris 对USB 设
备的支持”。
此Solaris 发行版提供了由一对协作驱动程序usb_ac 和usb_as 实现的USB 音频支持。音频
控制器驱动程序usb_ac 是与Solaris USB 体系结构兼容的客户机驱动程序,用于向用户应用
程序提供控制接口。音频流驱动程序usb_as 可在播放和录制期间处理音频数据消息。该驱
动程序将设置样例频率和精度,并对来自usb_ac 驱动程序的请求进行编码。这两个驱动程
序都符合USB 音频类1.0 规范。
某些音频设备可以在软件控制下设置音量。为了管理此功能,可以将STREAMS 模块usb_ah
推送至HID 驱动程序的顶部。
Solaris 支持仅播放、仅录制或同时播放和录制的USB 音频设备, 还支持热插拔USB 音频设
备。
具有USB 连接器的SPARC UltraTM 和x86 平台支持USB 音频设备。
Solaris 8 10/01、Solaris 8 2/02 或Solaris 9 发行版支持的USB 音频设备必须支持固定的
44100 Hz 或48000 Hz 抽样频率以进行播放或录制。Solaris 10 发行版中不再要求44100 Hz
或48000 Hz 抽样频率。
有关完全支持的音频数据格式的信息,请参见usb_ac(7D)。
主音频设备为/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 音频设备
第8 章• 使用USB 设备(任务) 163
连接USB 音频设备后,可以通过/dev/sound/N 设备链路使用audioplay 和audiorecord 命
令对其进行访问。
请注意,/dev/audio 和/dev/sound/N 设备可能是指扬声器、麦克风或组合设备。如果引用
不正确的设备类型,则该命令将失败。例如,如果尝试将其与麦克风一同使用,则
audioplay 命令将失败。
对于大多数Sun 音频应用程序(如audioplay 和audiorecord),通过设置AUDIODEV shell 变
量或为这些命令指定-d 选项,可以选择特定的缺省音频设备。但是,设置AUDIODEV 不适用
于将/dev/audio 硬编码为音频文件的第三方应用程序。
插入USB 音频设备时,如果没有正在使用/dev/audio,则该设备将自动成为主音频设备
/dev/audio。有关将/dev/audio 从板载音频更改为USB 音频或从USB 音频更改为板载音频
的说明,请参阅第166 页中的“如何更改主USB 音频设备”和usb_ac(7D)。
热插拔多个USB 音频设备
如果将USB 音频设备插入系统,该设备将成为主音频设备/dev/audio。即使在重新引导系
统后,该设备也仍为主音频设备。如果插入其他USB 音频设备,则最后一个设备将成为主
音频设备。
有关USB 音频设备问题疑难解答的其他信息,请参见usb_ac(7D)。
如何添加USB 音频设备
插入USB 扬声器。
主音频设备/dev/audio 指向USB 扬声器。
% ls -l /dev/audio
lrwxrwxrwx 1 root root 10 Feb 13 08:46 /dev/audio -> usb/audio0
(可选)移除扬声器。然后,重新插入扬声器。
如果移除扬声器,则/dev/audio 设备将恢复回板载音频。
% ls -l /dev/audio
lrwxrwxrwx 1root root 7 Feb 13 08:47 /dev/audio -> sound/0
添加USB 麦克风。
% ls -l /dev/audio
lrwxrwxrwx 1 root root 10 Feb 13 08:54 /dev/audio -> usb/audio1
1
2
3
使用USB 音频设备
164 系统管理指南:设备和文件系统• 2006 年9 月
如何确定系统的主音频设备
此过程假定已连接USB 音频设备。
检查系统的新音频链路。
使用ls 命令显示系统的新音频链路。
例如:
% ls -lt /dev/audio*
lrwxrwxrwx 1root 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 1root 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 1root other 66 Jul 23 14:21/dev/sound/0 ->
../../devices/pci@1f,4000/ebus@1/SUNW,CS4231@14,200000:sound,audio
lrwxrwxrwx 1root 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 音频设备
第8 章• 使用USB 设备(任务) 165
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
.
.
.
如何更改主USB 音频设备
选择以下操作之一可更改主USB 音频设备。
如果要使板载音频设备成为主音频设备,请移除USB 音频设备。然后,/dev/audio 链接
即会指向/dev/sound/0 项。如果/dev/sound/0 项不是主音频设备,请关闭系统并使用
boot -r 命令,或以超级用户身份运行devfsadm -i 命令。
如果要使USB 音频设备成为主音频设备,只需插入USB 音频设备并检查设备链路即
可。
USB 音频设备问题疑难解答
有时,USB 扬声器不会发出任何声音,即使连接了驱动程序并将音量设置为高也是如此。
热插拔该设备可能不会更改该行为。
解决方法是关闭然后再打开USB 扬声器的电源。
音频设备拥有权要点
使用音频设备时,请牢记音频设备拥有权的以下要点:
插入USB 音频设备并登录控制台后,控制台即是/dev/* 项的属主。此情况表明,只要
登录控制台,便可使用音频设备。

使用USB 音频设备
166 系统管理指南:设备和文件系统• 2006 年9 月
如果插入USB 音频设备时未登录控制台,则超级用户会成为该设备的属主。但是,如果
登录控制台并尝试访问USB 音频设备,则设备拥有权将归控制台所有。有关更多信息,
请参见logindevperm(4)。
如果使用rlogin 命令远程进行登录并尝试访问USB 音频设备,则拥有权不会更改。这
表明,未经授权的用户无法通过他人拥有的麦克风侦听会话。
使用cfgadm 命令热插拔USB 设备(任务列表)
任务说明参考
显示USB 总线信息。显示有关USB 设备和总线的信
息。
第168 页中的“如何显示USB
总线信息(cfgadm)”
取消配置USB 设备。以逻辑方式取消配置仍通过物理
方式连接至系统的USB 设备。
第169 页中的“如何取消配置
USB 设备”
配置USB 设备。配置先前取消配置的USB 设
备。
第170 页中的“如何配置USB
设备”
以逻辑方式断开USB 设备连
接。
如果物理位置远离系统,则可以
逻辑方式断开USB 设备连接。
第171 页中的“如何以逻辑方式
断开USB 设备连接”
以逻辑方式连接USB 设备。以逻辑方式连接先前通过逻辑方
式断开连接或取消配置的USB
设备。
第171 页中的“如何以逻辑方式
连接USB 设备”
断开USB 设备子树连接。断开USB 设备子树连接,该子
树是集线器下的设备分层结构
(或树)。
第172 页中的“如何以逻辑方式
断开USB 设备子树连接”
重置USB 设备。重置USB 设备,以便以逻辑方
式移除和重新创建设备。
第172 页中的“如何重置USB
设备”
更改多重配置USB 设备的缺省
配置。
更改多重配置USB 设备的缺省
配置。
第173 页中的“如何更改多重配
置USB 设备的缺省配置”
使用cfgadm 命令热插拔USB 设备
可以在正在运行的系统中添加或移除USB 设备,而不必使用cfgadm 命令。不过,USB 设备
也可以逻辑方式热插拔,而不必以物理方式移除。在远程位置工作并且需要禁用或重置未
正常运行的USB 设备时,这种方案比较方便。cfgadm 命令还可提供显示USB 设备树(包括
制造商和产品信息)的方法。
cfgadm 命令可以显示有关附着点的信息,附着点是指系统中可以执行动态重新配置操作的
位置。附着点由以下几项组成:
插卡,表示可以配置到系统中的硬件资源,如USB 设备。
使用cfgadm 命令热插拔USB 设备(任务列表)
第8 章• 使用USB 设备(任务) 167
插座,接受插卡的位置,如USB 端口
附着点由逻辑附着点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 设备信息都已截断,以便集中阐明相关信息。
如何显示USB 总线信息(cfgadm)
有关使用prtconf 命令显示USB 配置信息的示例,请参见第146 页中的“如何显示USB 设
备信息”。
显示USB 总线信息。
例如:
% cfgadm
Ap_Id Type Receptacle Occupant Condition
usb0/4.5 usb-hub connected configured ok
usb0/4.5.1usb-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
1
使用cfgadm 命令热插拔USB 设备(任务列表)
168 系统管理指南:设备和文件系统• 2006 年9 月
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。
显示特定USB 设备信息。
例如:
% cfgadm -l -s "cols=ap_id:info"
Ap_Id Information
usb0/4.5.1Mfg: Inside Out Networks Product: Edgeport/421 NConfigs: 1
Config: 0 : ...
usb0/4.5.2 Mfg: Product: NConfigs: 1Config: 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: 1Config: 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
如何取消配置USB 设备
可以取消配置仍通过物理方式连接至系统的USB 设备。但是,无法再将驱动程序连接至该
设备。请注意, prtconf 输出中会始终显示USB 设备,即使已取消配置该设备也是如此。
成为超级用户。
2
1
使用cfgadm 命令热插拔USB 设备(任务列表)
第8 章• 使用USB 设备(任务) 169
取消配置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
验证是否已取消配置该设备。
例如:
# cfgadm
Ap_Id Type Receptacle Occupant Condition
usb0/4.5 usb-hub connected configured ok
usb0/4.5.1usb-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
如何配置USB 设备
成为超级用户。
配置USB 设备。
例如:
# cfgadm -c configure usb0/4.7
2
3
1
2
使用cfgadm 命令热插拔USB 设备(任务列表)
170 系统管理指南:设备和文件系统• 2006 年9 月
检验是否已配置USB 设备。
例如:
# cfgadm usb0/4.7
Ap_Id Type Receptacle Occupant Condition
usb0/4.7 usb-storage connected configured ok
如何以逻辑方式断开USB 设备连接
如果要从系统和prtconf 输出中删除USB 设备,但物理位置远离系统,则只需以逻辑方式
断开USB 设备连接即可。从物理角度来看,该设备仍然处于连接状态。但是,从逻辑角度
来看,对系统而言设备已断开连接、不可用且不可见。
成为超级用户。
断开USB 设备连接。
例如:
# cfgadm -c disconnect -y usb0/4.7
验证是否已断开该设备的连接。
例如:
# cfgadm usb0/4.7
Ap_Id Type Receptacle Occupant Condition
usb0/4.7 unknown disconnected unconfigured ok
如何以逻辑方式连接USB 设备
使用此过程可以逻辑方式连接先前通过逻辑方式断开连接或取消配置的USB 设备。
成为超级用户。
连接USB 设备。
例如:
# cfgadm -c configure usb0/4.7
验证是否已连接该设备。
例如:
# cfgadm usb0/4.7
3
1
2
3
1
2
3
使用cfgadm 命令热插拔USB 设备(任务列表)
第8 章• 使用USB 设备(任务) 171
Ap_Id Type Receptacle Occupant Condition
usb0/4.7 usb-storage connected configured ok
对系统而言设备现在可用且可见。
如何以逻辑方式断开USB 设备子树连接
使用此过程可以断开USB 设备子树连接,该子树是集线器下的设备分层结构(或树)。
成为超级用户。
删除USB 设备子树。
例如:
# cfgadm -c disconnect -y usb0/4
检验是否已断开USB 设备子树连接。
例如:
# cfgadm usb0/4
Ap_Id Type Receptacle Occupant Condition
usb0/4 unknown disconnected unconfigured ok
如何重置USB 设备
如果USB 设备行为异常,请使用cfgadm 命令重置该设备,即以逻辑方式删除并重新创建该
设备。
成为超级用户。
确保设备未被使用。
重置设备。
例如:
# cfgadm -x usb_reset -y usb0/4.7
检验是否已连接设备。
例如:
# cfgadm usb0/4.7
Ap_Id Type Receptacle Occupant Condition
1
2
3
1
2
3
4
使用cfgadm 命令热插拔USB 设备(任务列表)
172 系统管理指南:设备和文件系统• 2006 年9 月
usb0/4.7 usb-storage connected configured ok
如何更改多重配置USB 设备的缺省配置
使用多重配置USB 设备时,请牢记以下要点:
USB 设备配置定义了设备向操作系统显示其本身的方式。此方法不同于其他cfgadm 部
分中介绍的系统设备配置。
某些USB 设备支持多种配置,但一次只能有一种配置处于活动状态。
通过检查cfgadm -lv 输出,可以确定多重配置设备。Nconfigs 将大于1。
缺省USB 配置为配置1。当前配置在cfgadm -lv 输出中反映为Config。
只要将设备重新连接至同一个端口,对缺省配置所做的更改在重新引导、热移除以及重
新配置设备期间就将始终保持不变。
确保设备未被使用。
更改缺省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
检验设备是否已更改。
例如:
# 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
1
2
3
使用cfgadm 命令热插拔USB 设备(任务列表)
第8 章• 使用USB 设备(任务) 173
usb-device n /devices/pci@1f,0/usb@c,3:4
请注意,Config: 现在显示2。
使用cfgadm 命令热插拔USB 设备(任务列表)
174 系统管理指南:设备和文件系统• 2006 年9 月
使用InfiniBand 设备(概述/任务)
InfiniBand (IB) 是一项新的基于Solaris 10 发行版中引入的交换光纤结构的I/O 技术。它为将
I/O 设备连接到主机以及主机到主机通信提供了高带宽、低延迟的互连。
以下是本章中概述信息的列表。
第175 页中的“InfiniBand 设备概述”
第178 页中的“动态重新配置IB 设备(cfgadm)”
有关与使用IB 设备关联的过程的信息,请参见以下内容:
第176 页中的“动态重新配置IB 设备(任务列表)”
第189 页中的“将uDAPL应用程序接口用于InfiniBand 设备”
有关动态重新配置和热插拔的常规信息,请参见第6 章。
InfiniBand 设备概述
IB 设备由Solaris IB 结点驱动程序来管理。此驱动程序支持5 种类型的设备:
IB 端口设备
IB 虚拟物理附着点(virtual physical point of attachment, VPPA) 设备
IB HCA服务(HCA_SVC) 设备
伪设备
I/O 控制器(I/O controller, IOC) 设备
IB 结点驱动程序可查询Solaris IB 设备管理器(IB Device Manager, IBDM) 中的服务(在本指
南中称为通信服务),以枚举IB 端口设备、HCA_SVC 设备和IB VPPA设备。
端口设备会将通信服务绑定至主机通道适配器(Host Channel Adapter, HCA) 的给定port#,
而VPPA设备会将通信服务绑定至port#, p_key# 组合。HCA_SVC 设备会将通信服务绑定
至给定的HCA。请注意,端口设备和HCA_SVC 设备始终使用其值为零的p_key(分区密
钥)。端口、HCA_SVC 和VPPA设备都是HCA的子设备,并且通过ib.conf 文件进行枚
举。有关更多信息,请参见ib(7D)。
9第9 章
175
IOC 设备是IB 结点驱动程序的子程序,同时也是I/O 单元的一部分。伪设备也是IB 结点驱
动程序的子程序,并且指代提供各自要枚举的配置文件的其他所有设备。有关更多信息,
请参见ib(4)。
下表列出了可能的IB 设备树路径名。
IOC 设备 /ib/ioc@1730000007F510C,173000007F50
IB 伪设备/ib/@
IB VPPA设备 /pci@1f,2000/pci@1/pci15b3,5a44@0/ibport@,
,
IB HCA_SVC 设备 /pci@1f,2000/pci@1/pci15bc,5a44@0/ibport@0,0,
IB 端口设备 /pci@1f,2000/pci@1/pci15b3,5a44@0/ibport@,0,

HCA /pci@1f,2000/pci@1/pci15b3,5a44@0
请注意,IB HCA_SVC 设备使用零作为port# 和p_key 的值。
下面介绍了上表中的IB 组件:
通信服务。例如,ipib 是ibd 内核客户机驱动程序所使用的通信服务。
使用的分区密钥值。
端口号。
是指以其driver.conf 文件中指定的名称命名的IB 内核客户机驱动程序
的属性。有关更多信息,请参见driver.conf(4)。
动态重新配置IB 设备(任务列表)
任务说明参考
显示IB 设备信息。显示有关系统中的IB 设备的信
息。
第178 页中的“如何显示IB 设
备信息”
配置或取消配置IOC 设备。选择以下操作之一:
取消配置IOC 设备。第180 页中的“如何取消配置
IOC 设备”
配置IOC 设备。第181 页中的“如何配置IOC
设备”
动态重新配置IB 设备(任务列表)
176 系统管理指南:设备和文件系统• 2006 年9 月
任务说明参考
配置或取消配置端口或VPPA设
备。
选择以下操作之一:
取消配置端口或VPPA设备。第181 页中的“如何取消配置
IB 端口、HCA_SVC 或VPPA设
备”
配置端口或VPPA设备。第182 页中的“如何配置IB 端
口、HCA_SVC 或VPPA设备”
配置或取消配置IB 伪设备。选择以下操作之一:
取消配置IB 伪设备。第183 页中的“如何取消配置
IB 伪设备”
配置IB 伪设备。第183 页中的“如何配置IB 伪
设备”
显示HCA的内核IB 客户机。您可能需要显示有关HCA的内
核IP 客户机的信息,特别是要
取消配置HCA时。
第184 页中的“如何显示HCA
的内核IB 客户机”
配置或取消配置IB HCA。选择以下操作之一:
取消配置与HCA连接的IB 设
备。
第185 页中的“如何取消配置与
HCA连接的IB 设备”
配置与HCA连接的IB 设备。第186 页中的“配置IB HCA”
更新IB p_key 表。如果HCA端口的p_key 表信息
发生更改,则需要通知IBTF 和
IBDM,以便更新其内部p_key
数据库。
第186 页中的“如何更新IB
p_key 表”
显示IB 通信服务显示当前由IBTF 使用的IB 通信
服务。
第186 页中的“如何显示IB 通
信服务”
添加或删除VPPA通信服务。选择以下操作之一:
添加VPPA通信服务。第187 页中的“如何添加VPPA
通信服务”
删除VPPA通信服务。第188 页中的“如何删除现有的
IB 端口、HCA_SVC 或VPPA通
信服务”
更新IOC 配置。可以更新所有IOC 设备节点的
属性,也可以更新特定IOC 的
Ap_Id。
第188 页中的“如何更新IOC
配置”
以上文章转自于 : http://developers.sun.com.cn/

你可能感兴趣的:(运维,人工智能,shell)