일부는 파일 시스템에 대한 권한을 정의한다는 것을 알고 있습니다 (예 : www-data). 그러나 “Video”그룹에 사용자를 추가 하여이 질문에 성공적으로 답변 한 이유를 이해하지 못합니다 .
문제는 주로 사전 구축 된 모든 그룹이 우분투에서 무엇을 하는가입니다. 더 합리적으로 너무 많은 수가 있기 때문에 어떤 “특별한”그룹이 존재하며 어떻게 또는 언제 사용되어야합니까?
답변
일부 그룹은 파일 또는 디렉토리에 대한 www-data
액세스를 허용합니다 ( 예 : 웹 파일에 대한 액세스 또는 adm
그룹이 파일을 읽을 수 있도록 허용) /var/log
. 이것은 사소한 사용입니다.
그러나 일부 그룹은 특정 장치에 대한 액세스를 허용합니다. 예를 들어 dialout
그룹은 /dev
다음의 파일을 통해 직렬 포트에 액세스 할 수 있습니다 .
$ find /dev -group dialout -exec ls -ld {} \;
crw-rw---- 1 root dialout 4, 64 Jan 19 12:51 /dev/ttyS0
crw-rw---- 1 root dialout 4, 67 Jan 19 12:51 /dev/ttyS3
crw-rw---- 1 root dialout 4, 66 Jan 19 12:51 /dev/ttyS2
crw-rw---- 1 root dialout 4, 65 Jan 19 12:51 /dev/ttyS1
따라서 dialout
그룹의 구성원 인 경우 장치 파일을 읽고 쓰면 직렬 포트를 사용할 수 있습니다 echo "Hello world" > /dev/ttyS0
. video
그룹은 비디오 하드웨어에 액세스 할 수 있습니다.
각 그룹에 대한 설명은 파일을 읽으십시오. /usr/share/doc/base-passwd/users-and-groups.html
첫 코멘트에 대한 편집 :
실제로, 일반적으로 사용자 관점에서 하드웨어 리소스에 “액세스”하기 위해 해당 그룹에있을 필요는 없습니다. 일반적인 관행은 데몬 / 서버가 관리하는 데 가장 제한적인 그룹의 구성원이되어 데몬 / 서버에 액세스 할 수 있도록하는 것입니다.
귀하의 경우, video
그룹의 구성원이 되면 X 서버를 통하지 않고 그래픽 하드웨어에 직접 액세스 할 수 있습니다. 일반적으로 데스크탑 / 노트북 컴퓨터에서는 그래픽 하드웨어 ( glxinfo | grep "direct rendering"
)에 직접 액세스 할 수 있습니다.
참고로 직접 렌더링이 가능하지만 video
그룹 ( id | grep --color video
)의 구성원이 아닌 경우 /dev
파일 ( find /dev/ -group video -exec getfacl {} \; | grep $USERNAME
)에 의해 하드웨어 액세스가 허용됩니다 .
답변
일반적으로 그룹 분리 개념은 다음과 관련이 있습니다.
http://en.wikipedia.org/wiki/Principle_of_least_privilege
대안이 보안 악몽 일 수있는 단일 공통 레벨의 높은 특권 (예 : sudo / root)이라는 사실을 알 때까지 이러한 그룹을 모두 갖는 것은 어리석은 것처럼 보입니다.
게시물에 표시된 대부분의 그룹이 존재하므로 다양한 OS가 최소 권한으로 공통 기능에 액세스 할 수 있습니다. 사용자는 이것에 대해 너무 걱정할 필요가 없습니다. 일부 관리 작업 중에 일부 기능에 액세스하려면 개인을 위로 설정해야 할 수 있으며 이는 일반적으로 짧은 일회 작업에는 sudo를 사용하고 반복 작업을 위해 특정 그룹에 자신을 추가하여 수행됩니다.