[cmd_test@btjeon-naver playground]$ ln fun fun-hard
[cmd_test@btjeon-naver playground]$ ln fun dir1/fun-hard
[cmd_test@btjeon-naver playground]$ ln fun dir2/fun-hard
하드 링크 생성
[cmd_test@btjeon-naver playground]$ ls -l
total 8
drwxrwxr-x 2 cmd_test cmd_test 22 May 5 17:02 dir1
drwxrwxr-x 2 cmd_test cmd_test 22 May 5 17:02 dir2
-rw-r--r-- 4 cmd_test cmd_test 940 May 5 15:46 fun
-rw-r--r-- 4 cmd_test cmd_test 940 May 5 15:46 fun-hard
fun과 fun-sym 파일을 보면 2번째 필드 내용이 4이고 이것은 해당 파일의 하드 링크 개수라는 것이다.
[cmd_test@btjeon-naver playground]$ ls -li
total 8
34714235 drwxrwxr-x 2 cmd_test cmd_test 22 May 5 17:02 dir1
67927453 drwxrwxr-x 2 cmd_test cmd_test 22 May 5 17:02 dir2
383 -rw-r--r-- 4 cmd_test cmd_test 940 May 5 15:46 fun
383 -rw-r--r-- 4 cmd_test cmd_test 940 May 5 15:46 fun-hard
-i 옵션을 주면 1번째 필드에 아이노드 번호가 있으며, fun과 fun-hard 파일이 같은 아이노드 번호를 공유하고 있는 것을 볼 수 있다.
(실제로 하드 링크를 생성할 때, 동일한 데이터 영역을 참조하도록 부가적인 이름 영역들을 생성한다. 시스템은 아이노드(inode)라고 불리는 디스크 블록 체인을 하나 할당하고 이것은 이름 영역과 연결된다.)
[cmd_test@btjeon-naver playground]$ ln -s fun fun-sym
[cmd_test@btjeon-naver playground]$ ln -s ./fun dir1/fun-sym
[cmd_test@btjeon-naver playground]$ ln -s ../fun dir2/fun-sym
심볼릭 링크 생성
[cmd_test@btjeon-naver playground]$ ls -l dir1
total 4
-rw-r--r-- 4 cmd_test cmd_test 940 May 5 15:46 fun-hard
lrwxrwxrwx 1 cmd_test cmd_test 5 May 5 17:13 fun-sym -> ./fun
fun-sym 파일을 보면 처음 표시된 l에 의해 이것이 심볼릭 링크라는 것과 이 심볼릭 링크가 ./fun을 가리키고 있다는 사실을 정확하게 보여주고 있다. 또한 심볼릭 링크 파일의 길이가 5라는 것은 심볼릭 링크가 가리키고 있는 파일의 길이가 아니라 ./fun 문자열 개수를 말해주고 있다.
[cmd_test@btjeon-naver playground]$ ln -s dir1 dir1-sym
[cmd_test@btjeon-naver playground]$ ls -l
total 8
drwxrwxr-x 2 cmd_test cmd_test 37 May 5 17:13 dir1
lrwxrwxrwx 1 cmd_test cmd_test 4 May 5 17:17 dir1-sym -> dir1
drwxrwxr-x 2 cmd_test cmd_test 37 May 5 17:13 dir2
-rw-r--r-- 4 cmd_test cmd_test 940 May 5 15:46 fun
-rw-r--r-- 4 cmd_test cmd_test 940 May 5 15:46 fun-hard
lrwxrwxrwx 1 cmd_test cmd_test 3 May 5 17:13 fun-sym -> fun
심볼릭 링크는 디렉토리도 참조할 수 있다.
출처 : 리눅스 커맨드라인 완벽 입문서
'IT일반 > Linux' 카테고리의 다른 글
Command Line - 고급 키보드 기법 (0) | 2022.05.13 |
---|---|
Command Line - 확장과 인용 (0) | 2022.05.09 |
Command Line - 리다이렉션 (0) | 2022.05.06 |
Command Line - 명령어와 친해지기 (0) | 2022.05.05 |
Command Line - 시스템 살펴보기 (0) | 2022.05.05 |