手册页部分 1: 用户命令

退出打印视图

更新时间: 2014 年 7 月
 
 

list_devices(1)

名称

list_devices - 列出可分配的设备

用法概要

list_devices [-s] [-U 
uid] [-z zonename] [
-a [-w]] 
     -l | -n | -u [
device] | [-l | -n | 
-u] -c dev-class
list_devices [-s] -d 
dev-type

描述

list_devices 实用程序可依据指定资格列出系统中可分配的设备。

会列出设备以及与该设备相关联的所有设备特殊文件。设备参数是可选的,如果不存在,会列出所有相关设备。如果存在 dev-class,会列出属于指定 dev-class 的设备。没有缺省的 dev-class

选项

支持以下选项:

–l [–c dev-class | device]

列出与可分配给当前进程的 device 相关联的设备特殊文件的路径名。

如果指定了 dev-class,则只列出与指定设备类的所有设备相关联的文件。

如果指定了 device,则只列出与指定设备相关联的文件。

–n [–c dev-class | device]

列出与可分配给当前进程但当前没有分配的设备相关联的设备特殊文件的路径名。

如果指定了 dev-class,则只列出与指定设备类的所有设备相关联的文件。

如果指定了 device,则只列出与指定设备相关联的文件。

–s

无提示。禁止任何诊断信息的输出。

–u [–c dev-class | device]

列出与分配给当前进程的所有者的设备相关联的设备特殊文件的路径名。

如果指定了 dev-class,则只列出与指定设备类的所有设备相关联的文件。

如果指定了 device,则只列出与指定设备相关联的文件。

–U uid

执行 list_devices 操作时,使用用户 ID uid,而不是当前进程的实际用户 ID。只有拥有 solaris.device.revoke 授权的用户可使用此选项。

以下选项在系统上配置有 Trusted Extensions 时受支持:

–a

列出属性,如授权、清理程序和与设备相关联的标签。

此列表是每个设备的一行以分号 (;) 分隔的=对,格式为:


device=device-name;type=device-type;\
auths=auths;clean=device-exec;\
device-attributes;\
files=device-list

其中,device-attributesdevice_allocate(4)reserved1 字段的内容。字段是以冒号 (:) 分隔的。

有关这些属性及其格式的说明,请参见 device_allocate(4)

–a 输出包含以下键:

auths

指定授权的列表。如 device_allocate(4) 中所述,此值是 auths

clean

指定设备清理脚本。如 device_allocate(4) 中所述,此值是 device-exec

device

指定设备名称。如 device_allocate(4) 中所述,此值是 device-name

files

指定设备文件路径。如 device_maps(4) 中所述,此值是 device-list

type

指定设备类型。如 device_allocate(4) 中所述,此值是 device-type

–d

为设备分配管理的设备类型显示系统提供的缺省属性。如果指定 dev-type,只会列出此设备类型的缺省属性。

–w

此选项与 –a 一起使用可以键值对所有者 =的形式列出设备的当前所有者。是设备当前所有者的 uid。如果设备未被分配,则值为 /FREE。如果设备处于错误状态,则值为 /ERROR。此选项还会抑制任何诊断输出。

–z zonename

如果使用 –l 选项指定,只会列出其标签范围包含区域名称标签的未分配设备,而对于已分配设备,只会列出在与区域名称的标签相同的标签处分配的那些设备。

如果使用 –n 选项指定的、,只会列出其标签范围包含区域名称的标签的未分配设备。

如果使用 –u 选项指定,只会列出在与区域名称相同的标签处分配的设备。

示例

示例 1 列出所有设备

以下示例列出可供调用者用于分配的所有设备。


% list_devices -l
device: audio type: audio \
files: /dev/audio /dev/audioctl /dev/sound/0 /dev/sound/0ctl

示例 2 列出所有设备的属性

在配置有 Trusted Extensions 的系统上,以下示例会列出可供调用者用于分配的所有设备的属性:


% list_devices -al
device=audio1;type=audio;\
auths=solaris.device.allocate;\
clean=/etc/security/lib/audio_clean;\
minlabel=admin_low:maxlabel=admin_high;\
files=/dev/audio1 /dev/audio1ctl /dev/sound/1 /dev/sound/1ctl


示例 3 列出包括设备所有者的属性

在配置有 Trusted Extensions 的系统上,以下示例会列出包括分配给用户的所有设备的设备所有者的属性:


% list_devices -auw
device=audio2;type=audio;auths=solaris.device.allocate;\
clean=/etc/security/lib/audio_clean;\
minlabel=admin_low:maxlabel=admin_high:zone=public;\
owner=1234;\
files=/dev/audio2 /dev/audio2ctl /dev/sound/2 /dev/sound/2ctl

退出状态

将返回以下退出值:

0

成功完成。

20

对于指定的设备没有任何项。

其他值

出现错误。

文件

/etc/security/device_allocate

/etc/security/device_maps

/etc/security/dev/*

/usr/security/lib/*

属性

有关下列属性的说明,请参见 attributes(5)

属性类型
属性值
可用性
system/core-os
接口稳定性
请参见下文。

调用为 "Uncommitted"(未确定)。选项为 "Uncommitted"(未确定)。–a–w 选项的输出为 "Uncommitted"(未确定)。所有其他输出为“非接口”。

另请参见

allocate(1)deallocate(1)device_allocate(1M)dminfo(1M)mkdevalloc(1M)mkdevmaps(1M)device_allocate(4)device_maps(4)attributes(5)

控制对设备的访问

附注

只有 Solaris 审计功能启用后,本手册页中描述的功能才可用。

只有 device_allocate(1M) 服务启用后,本手册页中描述的功能才可用。

在配置有 Trusted Extensions 的系统上,该功能是缺省启用的。

Solaris 操作环境的将来发行版可能不再支持 /etc/security/devmkdevalloc(1M)mkdevmaps(1M)