루트인 경우 디렉토리에 대한 하드 링크가 허용되지 않습니다.

루트인 경우 디렉토리에 대한 하드 링크가 허용되지 않습니다.

다음과 같이 디렉토리에 대한 하드 링크를 만들려고 합니다.

root@...:/usr/share/tomcat6/logs# ln --directory /usr/share/tomcat6/skel/conf conf

다음 오류로 인해 실패합니다.

ln: creating hard link `conf' => `/usr/share/tomcat6/skel/conf': Operation not permitted

내가 무엇을 놓치고 있나요? 이 디렉토리 링크에 해당하는 링크를 어떻게 만들 수 있나요?

답변1

로부터매뉴얼 페이지ln:

-d, -F, --directory는
슈퍼유저가 디렉토리에 하드 링크를 시도하도록 허용합니다(참고: 슈퍼유저의 경우에도 시스템 제한으로 인해 실패할 수 있음).

응용 프로그램은 하드 링크가 하드 링크인지 아니면 원본 파일 경로인지 확인할 수 없습니다. 이것이 요구 사항이 아닌 경우 대신 기호 링크를 사용할 수 있습니다.

ln -s /usr/share/tomcat6/skel/conf conf

답변2

그것은 매우 나쁜 생각이지만, debugfs를 사용하여 이를 수행할 수 있습니다:

debugfs -w /dev/sdXY
debugfs: ln /usr/share/tomcat6/skel/conf /usr/share/tomcat6/logs/conf
debugfs: quit
ls -ld conf

관련 정보