끊어진 심볼릭 링크를 편집하면 이전에 삭제된 대상 파일에 다시 연결됩니다.

끊어진 심볼릭 링크를 편집하면 이전에 삭제된 대상 파일에 다시 연결됩니다.

file4.txt처음에 대상 파일()에 연결된 심볼릭 링크가 있습니다 file3.txt. 대상 파일을 삭제하면 아래 이미지와 같이 예상대로 심볼릭 링크가 깨졌습니다.

여기에 이미지 설명을 입력하세요.

그런데 끊어진 링크에 다시 쓰려고 하면 링크가 같은 이름의 대상 파일(저의 경우 file3.txt)에 다시 연결되어 내용을 모두 복사합니다(아래 이미지 참조). 여기에 이미지 설명을 입력하세요.

저는 Linux를 처음 접했고 왜 이런 일이 발생하는지 알아내려고 노력하고 있습니다. 삭제된 파일이 다시 생성되어 이전에 손상된 동일한 심볼릭 링크에 다시 연결되는 이유. 미리 감사드립니다!

답변1

기호 링크 자체에 대해 작동하지 않는 도구의 경우, then (pathname) 에 대한 기호 링크인 경우 file4.txt(pathname)으로 확인됩니다. 바라보다file3.txtfile4.txtfile3.txt경로명 확인.

이는 당신 이 의도한 대로 이루어 cat > file4.txt졌음 cat > file3.txt을 의미합니다. file3.txt이러한 명령은 아직 존재하지 않는 경우 생성을 시도합니다. 새 파일 (파일) 은 새 파일이 있고 이전 파일에 (경로 이름)으로 액세스할 수 있다는 점을 제외하면 file3.txt이전(삭제된) (파일)과 아무 관련이 없습니다 .file3.txtfile3.txt

모든 심볼릭 링크는 경로를 내부적으로 텍스트로 저장하여 경로를 가리킵니다. 이는 파일이나 inode를 직접적으로 가리키지 않으며, 취해졌든 아니든 디렉토리 트리에서 의미가 있는 일부 경로를 가리킵니다.아니면. 귀하의 경우 file3.txt심볼릭 링크는 다시 생성되면 유효해집니다. 새 파일은 이전 파일이 아니지만 동일한 경로 이름을 통해 액세스할 수 있으며 이는 기호 링크에 중요합니다. then이라는 디렉토리를 생성하면 file3.txt그때부터 심볼릭 링크가 해당 디렉토리를 가리킵니다.

관련 정보