공유 파일 시스템의 사용자(user01이라고 함)는 자신만 읽을 수 있도록 파일을 설정하려고 합니다. 디렉토리에 들어가면 ls -l은 다음과 같은 출력을 생성합니다.
ls -l
-rwx------ 1 user01 gp 16035 Dec 21 2015 Output.cpp
분명히 이 파일에 대한 읽기 권한은 없지만 복사/읽기는 가능합니다! (여기서 출력을 게시하지는 않겠지만 문제 없이 파일을 emacs/cat/cp로 볼 수 있고 내용을 볼 수 있습니다.) 참고로 저는 같은 그룹(gp)의 구성원도 아니고 해당 파일 시스템 권한에 대한 특별한 sudo.
어떻게 이럴 수있어?
답변1
간단한 경우, 로컬 디스크의 파일로 구성된 파일 시스템의 경우 파일 시스템 드라이버 1은 파일 시스템 형식(기존 Unix 사용자 및 그룹 소유권 및 rwxrwxrwx 권한, 액세스 제어 목록)에 따라 디스크에 저장된 권한 메타데이터를 읽습니다. 등) 이러한 권한에 따라 액세스 권한을 부여할지 여부를 결정합니다. 그러나 온디스크 표현과 애플리케이션 사이에 더 많은 레이어가 있는 경우 액세스 제어에 사용되는 권한 메타데이터와 메타데이터 공급자를 통해 보고된 권한 메타데이터가 일치하지 않을 수 있습니다.
실행하면 ls
메타데이터 공급자를 사용하여 권한과 소유권을 표시합니다. 파일 시스템이 원격 파일 시스템인 경우 로컬 파일 시스템 드라이버는 원격 파일 시스템에 메타데이터 쿼리를 보냅니다. 원격 파일 시스템을 사용하여 파일에 액세스하려고 하면(예: 응용 프로그램에서 파일을 열어 파일을 읽는 경우) 로컬 파일 시스템 드라이버가 원격 파일 시스템에 읽기 요청을 보냅니다. 원격 파일 시스템의 응답이 일관되지 않으면 두 응답이 일관되지 않을 수 있습니다.
원격 파일 시스템이 로컬 파일 시스템이 지원하지 않는 메타데이터를 지원하는 경우 원격 파일 시스템의 응답이 일관되지 않을 수 있습니다. 예를 들어 원격 서버에 로컬 클라이언트에 없는 계정이 있는 경우 파일 시스템은 메타데이터를 정확하게 보고할 수 없습니다. 이는 서버와 클라이언트가 서로 다른 운영 체제(예: Windows 서버와 Linux 클라이언트 또는 그 반대)를 실행하는 경우 일반적입니다.
귀하의 경우 원격 파일 시스템 서버가 user01이 요구하는 방식으로 구성되지 않았거나 서버에 대한 권한이 예상만큼 엄격하지 않은 것 같습니다. 예를 들어, 추가 항목이 있을 수 있습니다.전방십자인대(특정) 원격 사용자에게 액세스 권한을 부여하는 항목입니다. 원격 파일 시스템이 Unix 권한만 보고할 수 있고 더 풍부한 ACL은 보고할 수 없는 경우 "그룹" 또는 "기타" 권한 없이 사용자가 소유한 파일을 볼 수 있으며 소유자는 귀하가 아니지만 다음에게 부여된 파일이 있을 수 있습니다. 권한에 대한 ACL 항목입니다.
1이는 특정 유형의 파일 시스템 드라이버와 일반 계층(종종가상 FS), 하지만 시스템에 따라 다르므로 여기서는 의도적으로 구분하지 않습니다.