배경
RHEL 5 클러스터를 개발 중입니다. 내 Fortran 프로그램이 이 파일을 읽을 수 있기를 원합니다./home/bob/inputs/input_1
Bob에게 다음 내용을 모두 읽을 수 있는 권한을 요청합니다
inputs
.[bob@server]$ chmod -R a+r /home/bob/inputs/*
공유 디렉터리에 연결했습니다.
[david@server]$ ln -s /home/bob/inputs/ /home/share/inputs/
내 (Fortran) 프로그램은 읽기를 시도
/home/share/inputs/input_1
하고 다음과 같이 말합니다.File /home/share/inputs/input_1 not found!
나는 파일을 직접 찾아보았습니다
a+rwx
. (Bob은 그 과정에서 권한을 부여받았습니다.)[david@server]$ls -ltrh /home/share/inputs/input_1 lrwxrwxrwx 1 bob bob 33 Oct 25 15:42 /home/share/inputs/input_1 -> /home/bob/inputs/input_1
이것으로부터 나는 a)
inputs_1
존재하고 b) 모든 사용자가rwx
권한을 가지고 있다는 결론을 내립니다.나는 읽으려고 노력한다:
[david@server]$ more /home/share/inputs/input_1 /home/share/inputs/input_1: No such file or directory
그리고 그것은 존재하지 않는다고 들었습니다.
대상 파일을 찾고 있는데
/home/bob/inputs/input_1
권한이 거부되었습니다.[david@server]$ls -ltrh /home/bob/inputs/input_1 ls: /home/bob/inputs/input_1 Permission denied
ls
디렉토리 내용을 보면 이상한 일이 발생합니다.[david@server]$ls -ltrh /home/bob/inputs/ ?--------- ? ? ? ? ? input_1 ?--------- ? ? ? ? ? input_2 ?--------- ? ? ? ? ? input_3 ... (n-4 lines omitted) ?--------- ? ? ? ? ? input_n
Bob이 이렇게 하면 다음과 같은 결과를 얻게 됩니다.
-rwxrwxrwx 1 bob bob 269 May 24 input_1 ... (n-2 lines omitted) -rwxrwxrwx 1 bob bob 2.0K Jan 19 input_n
질문:
- (나에게) 분명히 일관성이 없는 이 행동에 대한 간단한 설명이 있습니까?
- 난 어디로 가야 해?
답변1
실행 권한이 필요합니다 /home/bob/inputs
. 다음을 통해 이를 설정할 수 있습니다.
chmod a+x /home/bob/inputs
답변2
달리기 ls -ld /home/bob/inputs/
. bob은 디렉토리에 대한 읽기 권한을 부여하지만 실행 권한은 부여하지 않는다는 것을 알게 될 것입니다 drwxr--r--
. 즉, 디렉토리에서 읽기 권한을 사용하면 파일 목록을 볼 수 있고 실행 권한을 사용하면 파일에 액세스할 수 있습니다. 디렉토리에. 드문 경우지만 디렉터리를 실행 가능하게 만드는 것이 유용하지만 그 반대는 쓸모가 없습니다. 거의 항상 디렉토리는 액세스 가능(읽기 및 실행 가능)하거나 액세스 불가능(읽기 가능 또는 실행 불가능)합니다.
바라보다디렉터리를 열려면 실행(X) 권한이 필요한 이유는 무엇입니까?더 많은 설명을 원하시면.
해결 방법: Bob을 실행시키십시오 chmod a+rx ~/inputs
.