디렉토리와 그 안에 있는 모든 파일에 대한 액세스를 제어하려면 AFS는 UNIX 파일 시스템(UFS)에서 개별적인 파일이나 디렉토리에 연관시키는 모드 비트 대신 액세스 제어 목록(ACL)을 연관시킵니다. AFS ACL은 UFS의 3가지 권한 대신 7가지 액세스 권한이 있고 3개의 UFS 항목(owner, group 그리고 other) 대신 ACL에 약 20명의 사용자나 항목을 위한 공간이 있으므로 더 세련되게 액세스를 제어할 수 있습니다.
이 장에서는 지정된 명령을 사용하여 다음 타스크를 수행하는 방법을 설명합니다.
| 액세스 제어 목록 조사 | fs listacl |
| ACL의 표준 권한 섹션 편집 | fs setacl |
| ACL의 부정적인 권한 섹션 편집 | -negative 플래그가 있는 fs setacl |
| ACL 대체 | -clear 플래그가 있는 fs setacl |
| ACL 복사 | fs copyacl |
| 필요없는 AFS UID 제거 | fs cleanacl |
이 절에서는 AFS와 UFS 파일 보호 시스템간의 주요 차이점을 설명하며, 디렉토리 레벨의 보호를 논의하고 7가지 액세스 권한을 설명합니다.
UFS 모드 비트 데이터 보호 시스템과 AFS ACL 시스템은 다음과 같이 다릅니다.
UFS는 9개의 모드 비트 집합을 각 파일 요소에 연관시키고 각 요소의 소유자, 소유 그룹 그리고 다른 모든 사용자에게 3개(rwx)를 연관시킵니다. 파일 디렉토리의 비슷한 모드 비트 집합은 간접적인 방법으로만 파일에 적용합니다.
대신 AFS ACL은 같은 방법으로 디렉토리에 있는 모든 파일을 보호합니다. 특정 파일이 다른 파일보다 더 민감하면 더 제한적인 ACL를 가지고 디렉토리에 저장합니다.
디렉토리 레벨에서 액세스를 정의하는 것은 중요한 결과를 가져옵니다.
일반적으로, 높은 레벨의 디렉토리(사용자 홈 디렉토리 포함)에 꽤 자유로운 액세스 권한을 지정하는 것이 최상의 방법입니다. 특히, 최소한 l 권한을 system:anyuser나 높은 레벨 디렉토리의 system:authuser 그룹에 부여하는 것이 좋습니다. 더 자세한 내용은 ACL에서 그룹 사용을 참조하십시오.
모드 비트는 UFS에서 유일한 파일 보호 시스템입니다. AFS를 통해 사용자는 ACL 디렉토리의 ACL에 추가로 UNIX 모드 비트를 설정할 수 있지만 이를 다르게 해석합니다. AFS가 UNIX 모드 비트를 해석하는 방법을 참조하십시오.
UFS는 모드 비트의 양식으로 3가지 액세스 권한을 정의합니다. r(읽기), w(쓰기) 그리고 x(실행). AFS는 액세스를 더 정확하게 제어할 수 있게 해 주는 7가지 권한을 정의합니다. 자세한 설명은 AFS ACL 권한을 참조하십시오.
a(관리)
d(삭제)
i(삽입)
k(잠금)
l(조회)
r(읽기)
w(쓰기)
UFS는 하나의 사용자와 두 개의 그룹 각각에 모드 비트를 설정하여 액세스를 제어합니다. 사용자는 파일이나 디렉토리를 소유한 사람이고 그룹은 정의된 단일 그룹과 시스템에 대해 계정을 가지고 있는 모든 사람들입니다.
이와 달리 AFS를 사용하면 많은 항목(개별적인 사용자 또는 그룹)을 ACL에 배치하여 각각에게 액세스 권한 집합을 부여할 수 있습니다. 가능한 항목의 수는 약 20개이고 ACL 자체에 할당된 메모리에서 각 항목이 차지하는 공간에 따라 달라집니다.
AFS는 system:anyuser와 system:authuser의 두 시스템 그룹을 정의합니다. 이는 각각 모든 사용자와 인증된 모든 사용자를 나타냅니다. 더 자세한 내용은 ACL에서 그룹 사용을 참조하십시오. 이 외에도, 사용자는 개별 사용자나 기계 IP 주소로 구성된 보호 데이터베이스에서 자체 그룹을 정의할 수 있습니다. ACL에 a 권한을 가지고 있는 사용자는 시스템 그룹뿐만 아니라 자신이나 다른 사용자가 정의한 그룹에 대해서도 항목을 작성할 수 있습니다. 그룹 정의에 대한 내용은 보호 데이터베이스 관리를 참조하십시오.
사용자가 파일이나 디렉토리에 대한 액세스를 요청하면 파일 서버는 관련 ACL이 사용자와 사용자가 속한 그룹으로 확장하는 모든 권한을 모읍니다. 그룹 항목을 ACL에 배치하면 ACL이 개별 항목으로 제공할 수 있는 사용자보다 더 많은 사용자에 대한 액세스를 제어할 수 있습니다.
기능적으로 7가지 표준 ACL 권한을 두 그룹을 형성합니다. 하나는 디렉토리 자체에 적용되고 다른 하나는 가지고 있는 파일에 적용됩니다.
이 그룹에 있는 4가지 권한은 디렉토리 자체에 대해 의미가 있습니다. 예를 들어, i(삽입) 권한은 데이터를 파일에 추가하는 작업을 제어하지 않지만 새 파일이나 하위 디렉토리의 작성 작업을 제어합니다.
이 권한을 통해 사용자는 다음 명령을 실행할 수 있습니다.
이 권한으로 사용자는 디렉토리에 있는 파일의 내용을 읽을 수 없고 디렉토리에 있는 파일에서 ls -l 명령을 실행하거나 파일 이름을 -path 인수로 사용하여 fs listacl 명령을 실행할 수 없습니다. 이런 조작은 3가지 파일 권한에 설명되어 있는 r(읽기) 권한이 필요합니다.
이와 비슷하게, 이 권한을 통해 사용자는 디렉토리의 하위 디렉토리에 대해 ls, ls -l, ls -ld 또는 fs listacl 명령을 실행할 수 없습니다. 이런 조작은 하위 디렉토리 자체의 ACL에 대해 l 권한이 필요합니다.
이 그룹에 있는 3가지 권한은 디렉토리 자체나 그 하위 디렉토리 보다 디렉토리에 있는 파일에 대해 의미를 가지고 있습니다.
AFS는 대문자 A, B, C, D, E, F, G 그리고 H로 표시되며 정의된 의미가 있는 8가지 추가 권한을 제공합니다.
권한 중 두 개 이상에 의미를 지정하는 응용프로그램을 작성한 다음 이를 ACL에 배치하여 이에 의해 파일 액세스를 제어할 수 있습니다. 예를 들어, 인쇄 프로그램을 수정하여 권한을 인식하고 해석한 다음 프로그램이 액세스하는 파일을 보관하는 디렉토리에 이를 배치할 수 있습니다. fs listacl과 fs setacl 명령을 사용하여 표준 7가지 권한과 마찬가지로 보조 권한을 표시하고 설정합니다.
ACL 항목에서 7가지 권한을 어느 방법으로나 결합할 수 있지만 특정 조합을 다른 조합보다 더 유용합니다. 좀 더 일반적인 4가지 조합에는 해당 속기 양식이 있습니다. fs setacl 명령을 사용하여 ACL 항목을 정의할 때 권한을 나타내는 각각의 글자 중 두 개 이상을 제공하거나 다음 속기 양식 중 하나를 제공할 수 있습니다.
ACL을 통해 사용자는 디렉토리와 그 안에 있는 파일에 액세스를 부여하고 거부할 수 있습니다. 액세스를 부여하려면 fs setacl 명령을 사용하여 ACL 항목 설정의 설명 대로 권한 집합을 사용자나 그룹과 연관시키는 ACL 항목을 작성합니다. fs listacl 명령을 사용하여 ACL을 표시할 때(ACL 표시의 설명 대로) 이런 항목은 권한의 의미로 rights라는 용어를 사용하는 다음 헤더 밑에 표시됩니다.
Normal rights
다음과 같이 두 가지 방법으로 액세스를 거부할 수 있습니다.
Negative rights
사용자에게 부여할 액세스 유형을 결정할 때 파일 서버는 먼저 ACL의 Normal right 섹션에 있는 모든 항목을 조사하여 권한 집합을 컴파일합니다. 그런 다음 ACL의 Negative right 섹션의 사용자(또는 사용자가 속한 그룹)와 연관된 모든 권한을 삭제합니다. 그러므로, 부정적 권한은 항상 표준 권한을 없앱니다.
부정적 권한을 사용하면 fs setacl 명령의 일반 의미를 반전시키면서 잠재적 혼란을 일으킵니다. 특히, none 속기와 -negative 플래그를 결합시키면 두 번 부정하게 됩니다. ACL의 Negative right 섹션에서 항목을 제거하면 사용자는 다시 한번 표준 권한 섹션의 항목을 통해 권한을 얻을 수 있습니다. all 속기를 -negative 플래그와 결합시키면 모든 권한을 확실하게 거부하게 됩니다.
Normal rights 섹션에 있는 항목이 거부된 권한을 system:anyuser 그룹에 부여하는 경우 Negative rights 섹션에서 항목을 작성하는 것은 아무 의미가 없습니다. 이런 경우 사용자는 unlog 명령을 사용하여 토큰을 버림으로써 권한을 얻을 수 있습니다. 이렇게 하면, 파일 서버는 이를 system:anyuser 그룹에 속하지만 ACL의 Negative rights 섹션에 있는 항목과 일치하지 않는 anonymous 사용자로 인식합니다.
앞에서 언급했듯이 그룹 항목을 ACL에 배치하면 많은 사용자에 대한 액세스를 한번에 제어할 수 있습니다. 사용자를 관련 ACL에 나타나는 그룹에 추가하여 새 사용자 액세스 권한을 여러 파일과 디렉토리에 부여할 수 있습니다. 또한 기계 그룹을 작성할 수도 있는 데, 여기서 기계에 로그온된 사용자는 그룹에 부여된 액세스 권한을 얻게 됩니다. ACL에 대해 a 권한을 가지고 있는 디렉토리에서 사용자는 자체 그룹을 정의하고 작성하거나 스스로 소유하고 있는 그룹만이 아니라 모든 그룹에 대해 ACL 항목을 작성할 수 있습니다. 사용자나 기계 그룹을 작성하는 방법이나 여러 가지 그룹 유형을 사용할 수 있는 가장 효과적인 방법은 보호 데이터베이스 관리를 참조하십시오.
AFS는 또한 다음과 같은 두 시스템 그룹을 정의합니다. 이는 잠재적으로 규모가 큰 사람 그룹을 나타내므로 ACL에서 매우 유용할 수 있습니다. 이런 그룹에 대한 자세한 내용은 시스템 그룹을 참조하십시오.
이 그룹에 대해 ACL 항목을 작성하는 것은 AFS 사용자를 위해 로컬 인증 계정을 작성하지 않는 이상 외부 셀에서 AFS 사용자에 대한 액세스를 확장하는 유일한 방법입니다.
특히, 상위 레벨에서 파일 시스템에 있는 대부분의 디렉토리의 ACL에 대한 system:anyuser 그룹에 l(조회) 권한을 부여할 때 유용합니다. 이 권한을 통해 사용자는 디렉토리에 있는 파일과 하위 디렉토리의 이름만 배울 수 있지만 이 권한이 없으면 경로의 디렉토리를 통해 목표 파일로 이동할 수 없습니다.
약간 더 제한적인 대체 방법은 l 권한을 system:authuser 그룹에 부여하는 것입니다. 이것만으로도 부족하면 l을 주어진 ACL에서 20을 넘길 수 없는 특정 사용자나 그룹에 부여할 수 있습니다.
특정 권한을 system:anyuser 그룹에 부여하는 또 다른 이유는 인쇄 및 메일 배달과 같은 서비스를 제공하는 프로세스를 올바로 수행하기 위해서입니다. 예를 들어, l 권한 외에 인쇄 프로세스는 아마도 파일의 내용을 액세스하기 위해 r(읽기) 권한이 필요하고 메일 배달 프로세스는 아마도 새 메일을 배달하기 위해 i(삽입) 권한이 필요할 것입니다.
새로 작성된 모든 볼륨의 루트 디렉토리의 ACL은 system:administrators 그룹에 모든 권한을 부여합니다. 원하는 경우 이 항목을 제거할 수 있지만 system:administrators 그룹의 구성원은 항상 모든 디렉토리의 ACL에 묵시적으로 a(관리) 권한을 가지고 있고 기본적으로 l 권한을 가지고 있습니다. a 권한을 통해 필요한 경우 스스로 기타 권한을 명시적으로 부여할 수 있습니다. 이 권한 기본 집합 변경에 대한 내용은 system:administrators 그룹 관리를 참조하십시오.
파일, 디렉토리 또는 심볼릭 링크와 연관된 ACL을 표시하려면 fs listacl 실행합니다. 심볼릭 링크의 출력은 심볼릭 링크가 있는 디렉토리의 ACL 대신 목표 파일이나 디렉토리에 적용하는 ACL을 표시합니다.
AFS/DFS 이주 툴킷 사용자 주: fs listacl 명령을 실행한 기계가 AFS/DFS 이주 툴킷을 통해 DCE 셀의 DFS 파일 공간을 액세스할 수 있도록 구성된 경우 명령을 사용하여 DFS 파일과 디렉토리의 ACL을 표시할 수 있습니다. 일반적인 것 대신 DFS 디렉토리의 초기 컨테이너와 초기 오브젝트 ACL을 표시하려면 fs listacl 명령의 -id나 -if 플래그를 포함하십시오. 자세한 정보는 AFS/DFS Migration Toolkit Administration Guide and Reference를 참조하십시오. fs 명령 인터프리터는 AFS ACL을 표시할 때 이를 포함하면 -id와 -if 플래그를 무시합니다.
% fs listacl [<dir/file path>+]
여기서,
다음 오류 메시지는 ACL을 표시하는 데 필요한 권한이 없음을 나타냅니다. 디렉토리 이름을 dir/file path 인수로 지정하려면 ACL에서 l(조회) 권한이 있어야 합니다. 파일 이름을 지정하려면 그 디렉토리의 ACL에 r(읽기) 권한도 있어야 합니다.
fs: You don't have the required access permissions on 'dir/file path'
system:administrators 그룹의 구성원과 디렉토리의 소유자(ls -ld 명령에 의해 보고된 대로)는 모든 디렉토리의 ACL에 묵시적으로 a(관리) 권한을 가지고 있고 fs setacl 명령을 사용하여 필요한 권한을 스스로 부여할 수 있습니다. 자세한 내용은 ACL 항목 설정을 참조하십시오.
dir/file path로 지정된 각 파일이나 디렉토리의 출력은 다음 헤더로 시작하여 이를 식별합니다.
Access list for dir/file path is
Normal rights 헤더는 다음 행에 나타나며 그 다음에 사용자나 그룹 이름과 권한 집합을 짝지어 주는 행이 옵니다. 권한은 AFS ACL 권한에서 정의된 대로 문자 하나로 표시되고 항상 rlidwka 순서로 나타납니다. 부정적 권한이 있는 Negative rights 헤더가 그 다음에 나타나고 부정적 권한 쌍이 따라옵니다.
다음 예는 ABC Corporation 셀에 있는 사용자 terry의 홈 디렉토리를 표시합니다.
% fs la /afs/abc.com/usr/terry
Access list for /afs/abc.com/usr/terry is
Normal permissions:
system:authuser rl
pat rlw
terry rlidwka
Negative permissions:
terry:other-dept rl
jones rl
여기서 pat, terry 그리고 jones는 개별적인 사용자이고 system:authuser는 시스템 그룹이며 terry:other-dept는 terry가 소유하는 그룹입니다. 표준 권한의 목록은 모든 권한을 terry에게 부여하고 r(읽기), l(조회) 그리고 w(쓰기) 권한을 pat에게 부여하며 r과 l 권한을 system:authuser 그룹의 구성원에게 부여합니다.
부정적 권한의 목록은 r과 l 권한을 jones와 terry:other-dept 그룹의 구성원에게 부여하지 못하도록 거부합니다. 이런 항목은 이들이 어떤 방법으로든 terry의 홈 디렉토리를 액세스하지 못하게 효과적으로 막습니다. 이들이 액세스하면 ACL의 Normal rights 섹션에서 system:authuser 그룹에 적용될 수 있는 유일한 권한인 r과 l을 취소하기 때문입니다.
ACL 항목을 추가, 제거 또는 편집하려면 fs setacl 명령을 사용하십시오. 기본적으로, 명령은 ACL의 표준 권한 섹션의 항목을 처리합니다. 부정적 권한 섹션의 항목을 처리하려면 -negative 플래그를 포함시키십시오.
ACL에 a(관리) 권한이 있어야 이를 편집할 수 있습니다. 디렉토리 명령 소유자(ls -ld에서 보고한 대로)와 system:administrators 그룹의 구성원은 항상 묵시적으로 모든 ACL에서 이를 가지고 있습니다. 기본적으로, system:administrators 그룹의 구성원 또한 묵시적으로 l(조회) 권한을 가지고 있습니다.
AFS/DFS 이주 툴킷 사용자 주: fs setacl 명령을 실행한 기계가 AFS/DFS 이주 툴킷을 통해 DCE 셀의 DFS 파일 공간을 액세스할 수 있도록 구성된 경우 명령을 사용하여 DFS 파일과 디렉토리의 ACL을 표시할 수 있습니다. 일반적인 것 대신 DFS 디렉토리의 초기 컨테이너와 초기 오브젝트 ACL을 설정하려면 fs setacl 명령의 -id나 -if 플래그를 포함하십시오. 자세한 정보는 AFS/DFS Migration Toolkit Administration Guide and Reference를 참조하십시오. fs 명령 인터프리터는 AFS ACL을 설정할 때 이를 포함하면 -id와 -if 플래그를 무시합니다.
% fs listacl [<dir/file path>]
% fs setacl -dir <directory>+ -acl <access list entries>+
여기서,
각 디렉토리에 읽기/쓰기 경로를 지정하여 읽기 전용 볼륨을 변경하려고 할 때 실패하지 않도록 합니다. 일반적으로, 경로 이름의 두 번째 레벨에서 셀 이름 앞에 점을 찍어 읽기/쓰기 경로를 표시합니다(예를 들어, /afs/.abc.com). 파일 공간을 통한 읽기/쓰기와 읽기 전용 경로의 개념에 대한 내용은 마운트 포인트 통과 규칙을 참조하십시오.
다음 표기법을 자체 경로 이름이나 경로 이름의 일부에 사용할 수도 있습니다.
fs: 'filename': Not a directory
디렉토리나 파일 이름을 하나만 지정하면 -dir와 -acl 스위치를 생략할 수 있습니다.
권한을 정의하려면 다음을 입력하십시오.
권한과 속기 표기법에 대한 자세한 내용은 AFS ACL 권한을 참조하십시오.
하나의 명령행에서 사용자와 그룹 항목을 결합할 수 있습니다. 일부 쌍과 다른 쌍에 있는 속기 표기법에서 개별적인 문자를 사용할 수도 있지만 하나의 쌍에서 문자와 속기 표기법을 결합할 수는 없습니다.
다음 예는 둘다 실행자의 홈 디렉토리에 있는 notes 하위 디렉토리의 ACL에서 사용자 pat에게 r(읽기)와 l(조회) 권한을 부여합니다. 이는 디렉토리를 하나만 명명할 때 -dir과 -acl 스위치를 생략할 수 있는 방법을 보여줍니다.
% fs sa ~/notes pat rl % fs sa ~/notes pat read
다음 예는 현재 작업 디렉토리에 대해 ACL을 편집합니다. 이는 system:anyuser 그룹에 대한 항목을 제거하고 두 항목을 추가합니다. 하나는 a(관리)를 제외한 모든 권한을 terry:colleagues 그룹의 구성원에게 부여하고 다른 하나는 r(읽기)과 l(조회) 권한을 system:authuser 그룹에게 부여합니다. 명령은 읽기 쉽게 두 행에 걸쳐 표시됩니다.
% fs sa -dir . -acl system:anyuser none terry:colleagues write \
system:authuser rl
% fs listacl [<dir/file path>]
% fs setacl -dir <directory>+ -acl <access list entries>+ -negative
여기서,
다음 예는 현재 작업 디렉토리의 project 하위 디렉토리에 대해 w(쓰기)와 d(삭제) 권한을 사용자 pat에서 거부합니다.
% fs sa project pat wd -neg
예를 들어, 표준과 부정적 권한이 섞여 있어 그 상호작용으로 디렉토리에 대한 사용자 액세스가 어떤 영향을 받는지 이해하기 어려울 경우 때때로 ACL에 새 권한을 정의하기 전에 ACL을 완전히 지우는 것이 가장 간단한 방법입니다. 새 항목을 정의하는 중에 ACL을 완전히 지우려면 fs setacl 명령에 -clear 플래그를 포함하십시오. 이 플래그를 포함하면 ACL의 표준 권한이나 부정적 권한 섹션에 항목을 작성할 수 있지만 한번에 양쪽에 다 작성할 수는 없습니다.
디렉토리 소유자에게 적합한 권한을 부여하는 항목을 작성하도록 하십시오. 소유자는 묵시적으로 삭제된 항목을 대체하는 데 필요한 a(관리) 권한을 가지고 있지만 ACL 항목(특히, 조회 권한의 부족)이 누락되면 소유자가 항목이 누락되어 문제가 일어나고 있다는 것을 인식하기 어렵게 만들 수 있습니다.
% fs listacl [<dir/file path>]
% fs setacl -dir
<directory>+ -acl <access list entries>+ -clear \
[-negative]
여기서,
fs copyacl 명령은 원본 디렉토리의 ACL을 두 개 이상의 목적지 디렉토리에 복사합니다. 이는 원본 ACL에 전혀 영향을 주지 않지만 다음과 같이 각 목적지 ACL을 변경합니다.
AFS/DFS 이주 툴킷 사용자 주: fs setacl 기계가 AFS 사용자가 AFS/DFS 이주 툴킷을 통해 DCE 셀의 DFS 파일 공간을 액세스할 수 있도록 구성된 경우 fs copyacl 명령을 사용하여 DFS 파일과 디렉토리간에 ACL을 복사할 수 있습니다. 명령은 DFS 디렉토리의 초기 컨테이너와 초기 오브젝트 ACL뿐만 아니라 그 일반 ACL을 변경하기 위해 -id와 -if 플래그를 포함합니다. AFS/DFS Migration Toolkit Administration Guide and Reference를 참조하십시오. AFS와 DFS 디렉토리는 서로 다른 ACL 형식을 사용하므로 이 사이에서 ACL을 복사할 수 없습니다. fs 명령 인터프리터는 AFS ACL을 복사할 때 -id와 -if 플래그를 포함하면 이를 무시합니다.
% fs listacl [<dir/file path>]
% fs copyacl -fromdir <source directory> -todir <destination directory>+ \
[-clear]
여기서,
각 디렉토리에 읽기/쓰기 경로를 지정하여 읽기 전용 볼륨을 변경하려고 할 때 실패하지 않도록 합니다. 일반적으로, 경로 이름의 두 번째 레벨에서 셀 이름 앞에 점을 찍어 읽기/쓰기 경로를 표시합니다(예를 들어, /afs/.abc.com). 파일 공간을 통한 읽기/쓰기와 읽기 전용 경로의 개념에 대한 내용은 마운트 포인트 통과 규칙을 참조하십시오.
다음 예는 현재 작업 디렉토리의 notes 하위 디렉토리에서 ACL을 plans 하위 디렉토리로 복사합니다. 실행자는 -clear 플래그를 포함하지 않으므로 사용자 pat에 대한 항목은 notes 디렉토리의 ACL에 해당 항목이 없어도 plans 디렉토리의 ACL에 남습니다.
% fs la notes plans
Access list for notes is
Normal permissions:
terry rlidwka
smith rl
jones rl
Access list for plans is
Normal permissions:
terry rlidwk
pat rlidwk
% fs copyacl notes plans
% fs la notes plans
Access list for notes is
Normal permissions:
terry rlidwka
smith rl
jones rl
Access list for plans is
Normal permissions:
terry rlidwka
pat rlidwk
smith rl
jones rl
보호 데이터베이스에서 사용자나 그룹 항목을 제거할 때 fs listacl 명령은 이름 대신 ACL 항목에 있는 사용자의 AFS UID(또는 그룹의 AFS GID)를 표시합니다. 다음 예에서 사용자 terry는 ABC사 셀에 있는 자신의 홈 디렉토리에 terry:friends 그룹(AFS GID -567)에 대한 ACL 항목이 있으므로 보호 데이터베이스에서 그룹을 제거합니다.
% fs listacl /afs/abc.com/usr/terry
Access list for /afs/abc.com/usr/terry is
Normal permissions:
terry:friends rlik
system:anyuser l
terry rlidwka
% pts delete terry:friends
% fs listacl /afs/abc.com/usr/terry
Access list for /afs/abc.com/usr/terry is
Normal permissions:
-567 rlik
system:anyuser l
terry rlidwka
AFS ID를 ACL에 남겨 놓으면 ID가 더 이상 활성화된 사용자나 그룹에 해당하지 않으므로 아무런 기능도 제공하지 못합니다. 더군다나, ID가 새 사용자나 그룹에 지정되면 ID의 새 소유자는 디렉토리의 소유자가 실제로 이전 소유자에 부여하려고 했던 액세스 권한을 받게 됩니다(AFS ID 재사용은 이런 이유로 권장하지 않습니다).
ACL에서 쓸모없는 AFS UID를 제거하려면 fs cleanacl 명령을 사용하십시오.
% fs listacl [<dir/file path>]
% fs cleanacl [<dir/file path>+]
여기서,
각 디렉토리에 읽기/쓰기 경로를 지정하여 읽기 전용 볼륨을 변경하려고 할 때 실패하지 않도록 합니다. 일반적으로, 경로 이름의 두 번째 레벨에서 셀 이름 앞에 점을 찍어 읽기/쓰기 경로를 표시합니다(예를 들어, /afs/.abc.com). 파일 공간을 통한 읽기/쓰기와 읽기 전용 경로의 개념에 대한 내용은 마운트 포인트 통과 규칙을 참조하십시오.
다음 표기법을 자체 경로 이름이나 경로 이름의 일부에 사용할 수도 있습니다.
fs: 'filename': Not a directory
디렉토리에 쓸모없는 AFS ID가 있으면 명령 인터프리터는 다음 헤더 밑에 지워진 ACL을 표시합니다.
Access list for directory is now
디렉토리의 ACL에 쓸모없는 AFS ID가 없으면 다음 메시지가 각각에 대해 나타납니다.
Access list for directory is fine.
비록 AFS에서 UFS가 사용하는 모드 비트 대신 ACL을 사용하여 파일 데이터를 보호해도 이는 모드 비트를 전적으로 무시합니다. AFS 파일이나 디렉토리에서 chmod 명령을 실행하면 AFS는 비트를 적절히 변경합니다. 파일의 모드 비트를 변경하려면 파일 디렉토리의 ACL에 w(쓰기) 권한이 있어야 합니다. 디렉토리의 모드 비트를 변경하려면 그 ACL에 d(삭제), i(삽입) 그리고 l(조회) 권한이 있어야 합니다.
AFS는 다음과 같이 UNIX 모드 비트를 사용하기도 합니다.