3.5. devices

devices 서브시스템은 cgroup의 작업을 사용하여 장치에 대한 액세스를 허용하거나 거부합니다.

중요

Red Hat Enterprise Linux 6에서 Device Whitelist (devices) 서브시스템은 기술 프리뷰로 간주됩니다.
기술 프리뷰 기능은 현재 Red Hat Enterprise Linux 6 서브스크립션 서비스에서는 지원되지 않으며, 기능적으로 완전하지 않고 프로덕션 환경에서 사용하기에는 적합하지 않을 수 있습니다. 하지만 Red Hat은 고객의 편의를 위해 이러한 기능을 운영 체제에서 폭넓게 공개하고 있습니다. 이러한 기능은 비프로덕션 환경에서 유용하게 사용될 수 있으며 완전 지원되기 전에 기술 프리뷰 기능에 대한 피드백 또는 기능적 제안을 해주시기 바랍니다.
devices.allow
cgroup 내의 작업에 대한 액세스가 허용되야 하는 장치를 지정합니다. 각각의 항목은 4개의 필드가 있습니다: type, major, minor, access. type, major, minor 필드에 사용된 값은 Linux 할당 장치에 지정된 장치 유형 및 노드 번호에 해당합니다. (http://www.kernel.org/doc/Documentation/devices.txt에서는 Linux 장치 목록이라고 부릅니다)
type
type은 다음 세가지 값 중 하나일 수 있습니다:
  • a문자 장치(character devices)블럭 장치(block devices) 모두에 대응됩니다
  • b는 블럭 장치를 지정합니다
  • c는 문자 장치를 지정합니다
major , minor
majorminorLinux 할당 장치에 지정된 장치 노드 번호입니다. 메이저와 마이너 번호는 콜론으로 구분됩니다. 예를 들어 8은 SCSI 디스크 드라이브를 표시하는 메이저 번호이고, 1은 첫번째 SCSI 디스크 드라이브의 첫번째 파티션을 지정하는 마이너 번호입니다; 따라서 8:1은 전체적으로 파일시스템에서 /dev/sda1에 있는 파티션을 지정합니다.
*는 모든 메이저, 마이너 노드에 대응합니다. 예: 9:*(모든 RAID 장치), *:*(모든 장치)
access
access는 다음 문자들이 하나 이상 포함된 문자열입니다:
  • r은 태스크가 지정된 장치에서 읽는것을 허용합니다
  • w는 태스크가 지정된 장치에 쓰는것을 허용합니다
  • m는 아직 존재하지 않는 장치를 만드는 것을 허용합니다
예를 들어 accessr로 지정되면, 태스크는 해당 장치에서 읽을 수만 있습니다. 만약 accessrw로 지정되었다면, 태스크는 그 장치에 읽기와 쓰기가 모두 가능합니다.
devices.deny
cgroup의 작업에 액세스할 수 없는 장치를 지정합니다. 항목의 구문은 devices.allow와 동일합니다.
devices.list
이 cgroup에 있는 작업에 대해 액세스 제어가 설정된 장치를 보고합니다.