접근할 수 없는 파일에 대한 심볼릭 링크를 만들 수 있나요?

접근할 수 없는 파일에 대한 심볼릭 링크를 만들 수 있나요?

[부인 성명: 이 질문에는 악의적인 의도가 없습니다. 학교 프로젝트에 대한 ln -s 명령을 이해하려고 노력하고 있습니다.]

내 홈 폴더인 /home/anna. /home/bob내가 접근할 수 없는 폴더와 접근할 수 없는 파일이 있는,foo.txt

ln -s /home/bob/foo.txt내 홈 폴더에서 성공적으로 실행할 수 있나요 ? 가능하다면 내가 액세스할 수 없는( 와 동일한 권한으로 foo.txt) 링크를 생성할 것이라고 가정하는 것이 맞습니까?

에 대한 읽기 권한은 있지만 foo.txt에 대한 액세스 권한은 없으면 어떻게 됩니까 /home/bob?

/home/bob접근할 수는 있지만 읽을 수는 없는 반대의 경우는 어떻습니까 foo.txt?

답변1

예,당신은 심볼릭 링크를 만들 수 있습니다어느위치.

ln -s /home/bob/foo.txt내 홈 폴더에서 성공적으로 실행할 수 있나요 ? 가능하다면 내가 액세스할 수 없는( 와 동일한 권한으로 foo.txt) 링크를 생성할 것이라고 가정하는 것이 맞습니까?

옳은. 대상 파일의 액세스 제한이 적용됩니다. 제한된 리소스에 대한 심볼릭 링크를 생성하면 해당 리소스에 액세스할 수 없습니다. 대상 파일이 실제로 존재할 필요도 없습니다.

데모:

$ ln -s /etc/shadow foo
$ file foo
foo: symbolic link to /etc/shadow
$ cat foo
cat: foo: Permission denied

$ ln -s /etc/nonexistent bar
$ file bar
bar: broken symbolic link to /etc/nonexistent

에 대한 읽기 권한은 있지만 foo.txt에 대한 액세스 권한은 없으면 어떻게 됩니까 /home/bob?

상위 디렉터리에 대한 권한이 없는 경우포함된 파일에 접근할 수 없습니다. 따라서 심볼릭 링크를 사용하면 여전히 액세스할 수 없습니다. 심볼릭 링크를 생성해도 권한에는 영향이 없습니다.

/home/bob접근할 수는 있지만 읽을 수는 없는 반대의 경우는 어떻습니까 foo.txt?

다시 말하지만, 심볼릭 링크를 만들 수 있지만 파일에 액세스할 수는 없습니다.

관련 정보