Linux // 링크파일
링크 파일
- 파일 시스템상에 존재하는 파일에 대한 바로가기(shotcut)를
만들 때 사용되는 파일
1. 심볼릭(소프트) 링크 (Symbolic Link)
- 원본 파일을 가리키는 포인터가 있는 파일을 생성
- 윈도우즈에 바로 가기
#> ln -s [원본 파일] [링크 파일]
링크 테스트
#> mkdir /practice/link_test
#> cd /practice/link_test/
[root@Server-A link_test]# ln -s /etc/sysconfig/network-scripts network
[root@Server-A link_test]# ls
network
[root@Server-A link_test]# ls -F
network@
[root@Server-A link_test]# ll
합계 0
lrwxrwxrwx 1 root root 30 2017-06-15 02:16 network -> /etc/sysconfig/network-scripts
- 링크파일에서 파일을 지우면 원본파일에서도 지워진다.
- 링크파일 자체를 지우면 원본에 영향을 주지 않는다.
- 링크파일로 파일의 내용을 변경하면 원본파일에서도 변경이 되지만 링크파일을 지우면 원본 파일에 영향을 주지 않는다.
- 링크파일은 원본파일의 위치에 대한 정보만 포함한다.
-> 원본파일의 위치가 변경되면 링크가 깨진다.
2. 하드 링크
#> ln [원본 파일] [링크 파일]
[root@Server-A link_test]# ln file1 hard_file1
[root@Server-A link_test]# ls -i
523294 file1 523294 hard_file1 523292 network 523293 passwd
-> 하드링크 시 inode 번호가 같다
파일 이름은 다르지만 inode 번호가 같기 때문에 같은 파일이다.
[root@Server-A link_test]# ll
합계 8
-rw-r--r-- 2 root root 854 2017-06-15 02:30 file1
-rw-r--r-- 2 root root 854 2017-06-15 02:30 hard_file1
lrwxrwxrwx 1 root root 30 2017-06-15 02:16 network -> /etc/sysconfig/network-scripts
lrwxrwxrwx 1 root root 11 2017-06-15 02:23 passwd -> /etc/passwd
하드링크가 1인 파일을 지워도 데이터 블록은 지워지지 않는다.