동일한 파일 시스템에서 하드 링크할 때 장치 간 링크가 작동하지 않습니다.

동일한 파일 시스템에서 하드 링크할 때 장치 간 링크가 작동하지 않습니다.

나는 가지고있다/홈/myuser/데스크탑/rc/.netrc하드링크하고 싶은 파일/뿌리, 즉 홈 디렉토리입니다.뿌리사용자. 내가 할 때 :

ln /home/user/Destkop/rc/.netrc /root

다음과 같은 오류가 발생합니다.

ln: 하드 link.netrc 생성 중 /root/.netrc' =>': 잘못된 장치 간 링크

하지만 파일을 하드링크하면 작동합니다.내 사용자의 집, 즉/홈/myusers.

그렇다면 문제는 무엇입니까? 파일 시스템이 하나만 있을 때 여러 장치에서 유효하지 않다고 말하는 이유는 무엇입니까?

추신.나는 사용하고있다RHEL6

답변1

/home귀하의 디렉토리는 이 디렉토리와 동일한 파티션에 없을 가능성이 높습니다 /root.

cat /etc/fstab 서로 다른 파티션 간에는 하드 링크를 만들 수 없고 심볼릭 링크만 만들 수 있으므로 이를 쉽게 확인할 수 있습니다 .

답변2

내 생각에는 가장 좋은 방법은 하드 링크가 아닌 심볼릭 링크를 사용하는 것입니다. 번거로움이 덜하고 모든 것이 잘 작동한다는 것을 알게 될 것입니다. 당신이 깨닫지 못했다면, 하드 링크에는 몇 가지 흥미로운 문제가 있습니다.

이 옵션을 확인 man ln하고 확인하세요 -s!

일반적으로 하드 링크보다는 기호 링크를 사용합니다.

답변3

이 오류는 복사된 원본 또는 대상 폴더가 fscrypt로 암호화된 폴더인 경우에도 발생할 수 있습니다.

하드 링크는 동일한 fscrypt 폴더 내에서 올바르게 작동해야 합니다(즉, 원본과 대상이 모두 동일한 fscrypt 폴더 또는 하위 디렉터리에 있음).

답변4

아마도 이전에는 심볼릭 링크 폴더가 소스의 실제 대상 폴더로 대체되었을 것입니다. 이제 백업 스크립트가 실패합니다.

관련 정보