3.5. devices
devices
子系统允许或者拒绝 cgroup 中的任务访问设备。
重要
在红帽企业版 Linux 6 中将设备白名单列表(
devices
)子系统视为技术预览。
目前红帽企业版 Linux 6 订阅服务还不支持技术预览功能,可能功能并不完备,且通常不适合产品使用。但红帽在操作系统中包含这些功能是为了方便用户,并提供更广泛的功能。您会发现这些功能可能在非产品环境中很有用,同时还请提供反馈一件和功能建议,以便今后全面支持这个技术预览。
- devices.allow
- 指定 cgroup 中的任务可访问的设备。每个条目有四个字段:type、major、minor 和 access。type、major 和 minor 字段中使用的值对应 Linux 分配的设备,也称 Linux 设备列表中指定的设备类型和节点数,这两本书可见于 http://www.kernel.org/doc/Documentation/devices.txt。
- type
- type 可以是以下三个值之一:
a
- 应用所有设备,可以是字符设备,也可以是块设备b
- 指定块设备c
- 指定字符设备
- major, minor
- major 和 minor 是由《Linux 分配设备》指定的设备节点数。主设备号和副设备号使用冒号分开。例如:
8
是主设备号,指定 SCSI 磁盘驱动器;副设备号1
指定第一个 SCSI 磁盘驱动器中的第一个分区;因此8:1
完整指定这个分区,对应位于/dev/sda1
的一个文件系统。*
可代表所有主要和次要设备节点,例如:9:*
(所有 RAID 设备)或者*:*
(所有设备)。 - access
- access 是以下一个或者多个字母序列:
r
- 允许任务从指定设备中读取w
- 允许任务写入指定设备m
- 允许任务生成还不存在的设备文件
例如:当将 access 指定为r
时,则只能从指定设备中读取任务,但当将 access 指定为rw
时,则既可从该设备中读取任务,也可向该设备中写入任务。
- devices.deny
- 指定 cgroup 中任务不能访问的设备。条目语法与
devices.allow
一致。 - devices.list
- 报告为这个 cgroup 中的任务设定访问控制的设备。