파일 소유자 및 상위 디렉터리 변경

파일 소유자 및 상위 디렉터리 변경

10개의 상위 디렉토리가 있는 파일이 있습니다. 명령을 사용하여 파일의 소유자를 변경하면 chown파일의 상위 디렉터리에 여전히 다른 소유자가 있으므로 새 소유자는 여전히 파일에 쓸 수 없습니다. 상위 디렉토리의 소유자도 변경할 수 있는 방법이 있습니까?

그렇지 않은 경우 중첩된 디렉터리 내의 파일을 변경할 수 있는 권한을 사용자에게 일시적으로 부여하는 가장 좋은 방법은 무엇입니까?

답변1

사용자는 파일에 액세스하기 위해 파일이 포함된 디렉터리에 실행 비트만 있으면 됩니다. 실행 비트가 디렉터리에 설정되어 있고 사용자에게 파일에 대한 쓰기 권한이 있으면 파일을 편집할 수 있습니다. 디렉토리에 대한 쓰기 권한이 없으면 파일을 생성하거나 삭제할 수 없지만(파일을 소유하고 있더라도) 편집할 수는 있습니다. 읽기 권한이 없더라도(실행만 설정됨) 사용자는 디렉토리 목록을 얻을 수 없지만 액세스하려면 파일의 정확한 파일 이름을 알아야 합니다.

따라서 파일이 있고 dirname/filename.txt사용자가 파일을 소유한 경우:

rwx--x--x 디렉토리 이름
사용자는 편집할 수 있습니다. dirname/filename.txt
사용자는 생성할 수 없습니다. dirname/filename2.txt
사용자는 삭제할 수 없습니다. dirname/filename.txt
사용자는 할 수 없습니다.ls dirname

rwxr-xr-x 디렉토리 이름
사용자는 편집할 수 있습니다. dirname/filename.txt
사용자는 생성할 수 없습니다. 사용자는 dirname/filename2.txt
삭제할 수 없습니다.dirname/filename.txt
ls dirname

rwxrwxrwx 디렉토리 이름
사용자는 무엇이든 할 수 있습니다

노트
디렉터리에 고정 비트가 적용된 경우 이러한 규칙은 적용되지 않습니다. 고정 비트는 동작을 완전히 변경합니다( /tmp디렉토리에 고정 비트가 적용됨).

답변2

귀하의 질문에 답변하려면 ACL을 사용하는 것이 좋습니다액세스 제어 목록

관련 정보