3-8. 링크
리눅스에서는 파일에 링크를 생성할 수 있는데요.
총 두 가지의 링크가 있습니다.
링크는 일종의 명찰인데요.
위의 두 링크는 이 명찰을 붙이는 방식에서 차이가 있습니다.
우선 링크를 만드는 명령어는 ln입니다.
ln [옵션] <파일> <링크명>
3-9. 하드 링크
하드 링크는 원본 파일에 직접적으로 명찰을 붙이는 방식입니다.
그래서 어느 링크를 조회해도 원본의 정보가 나오게 됩니다.
또 링크를 다 지우기 전까지는 원본이 삭제되지 않고요.
그런데 하드 링크에는 몇 가지 문제가 있습니다.
먼저, 디렉터리는 하드 링크를 할 수가 없고요.
그리고 서로 다른 디스크에는 하드 링크를 생성할 수 없습니다.
우선 예시를 들기에 앞서 file1.txt 파일을 하나 만들고요.
여기에 'this is file1.txt'이라는 내용을 집어넣어서 file1 임을 표시하겠습니다.
다음, 하드 링크를 만들어보죠.
file1.txt에 ln_file1이라는 링크를 걸어볼게요.
ln file1.txt ln_file1
그러면 ln_file1이 새로 생성되고, cat으로 조회하니 원본인 file1.txt의 내용이 출력되는 것을 볼 수 있습니다.
앞서 하드 링크는 모든 링크를 지워야 원본도 삭제된다고 했었는데요.
rm file1.txt
그런데 반대로 위와 같이 file.txt를 지우더라도, ln_file1이라는 링크가 남아있기 때문에 파일의 실체는 남아있게 됩니다.
3-10. 심볼릭 링크
심볼릭 링크는 원본 파일의 정보를 갖는 일종의 특수파일입니다.
하드 링크처럼 원본에 명찰을 붙이는 것이 아니라서 원본과 구별됩니다.
심볼릭 링크는 기존 ln 명령어에 -s 옵션을 붙이면 만들 수 있습니다.
file1.txt에 sln_file1이라는 심볼릭 링크를 거는 작업을 해볼게요.
ln -s file1.txt sln_file1
그리고 이번에는 ls 명령어에 -l 옵션을 붙여 다시 확인해볼게요.
그럼 위의 사진처럼 sln_file1 -> file1.txt라고 연결되어있는 표시를 볼 수 있습니다.
심볼릭 링크도 rm 명령어로 지울 수 있는데요.
하드 링크와 다른 점은 위와 같이 원본을 먼저 지울 경우, 심볼릭 링크가 깨져서 나오게 됩니다.
Linux - 텍스트 에디터 Vim (1) (0) | 2022.12.07 |
---|---|
Linux - 기본적인 파일 명령어 (4) (0) | 2022.12.06 |
Linux - 기본적인 파일 명령어 (2) (0) | 2022.12.04 |
Linux - 기본적인 파일 명령어 (1) (0) | 2022.12.03 |
Linux - 기본적인 명령어 (0) | 2022.11.25 |
댓글 영역