본문 바로가기
IT일반/Linux

Command Line - 파일과 디렉토리 복사

by 버섯도리 2022. 5. 5.
[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