Linuxpia/Linux 명령어

[리눅스 명령어] 파일을 연결시키는, ln

Linuxpia4U 2023. 10. 9. 20:37
반응형

파일을 연결시키는, ln

`ln` 명령어는 리눅스와 유닉스에서 링크를 생성하는 데 사용됩니다. 링크에는 하드 링크와 심볼릭(또는 소프트) 링크 두 가지 유형이 있습니다.

1. 하드 링크

하드 링크는 파일의 두 번째 이름을 생성하는 것과 같으며, 원본 파일과 동일한 inode 번호를 가지고 있습니다. 하드 링크는 원본 파일이 삭제되더라도 계속 유효하며, 원본 파일과 동일한 데이터에 대한 포인터입니다. 하지만 다른 파일 시스템에는 하드 링크를 생성할 수 없으며, 디렉터리에도 사용할 수 없습니다.

2. 심볼릭 링크

심볼릭 링크는 원본 파일을 가리키는 별도의 파일입니다. 원본 파일이 삭제되면 심볼릭 링크는 더 이상 유효하지 않습니다. 심볼릭 링크는 다른 파일 시스템과 디렉터리에도 생성할 수 있습니다.

기본 사용법

- 하드 링크 생성

ln target link_name


    이 명령은 `target` 파일에 대한 하드 링크를 생성하고, 그 링크에 `link_name` 이름을 부여합니다.
    
- 심볼릭 링크 생성

ln -s target link_name2


    이 명령은 `target` 파일 또는 디렉터리에 대한 심볼릭 링크를 생성하고, 그 링크에 `link_name2` 이름을 부여합니다.

예제

1. 하드 링크 생성 예제

ln file.txt link_to_file.txt


    이 명령은 `file.txt`에 대한 하드 링크 `link_to_file.txt`를 생성합니다.

2. 심볼릭 링크 생성 예제

ln -s file.txt symlink_to_file.txt


    이 명령은 `file.txt`에 대한 심볼릭 링크 `symlink_to_file.txt`를 생성합니다.

주요 옵션

- -s: 심볼릭 링크를 생성합니다.
- -f: 링크가 이미 존재하는 경우 덮어씁니다.
- -i: 링크를 덮어쓰기 전에 사용자에게 확인을 요청합니다.
- -v: 수행된 작업을 설명하는 메시지를 출력합니다.

주의사항

- 하드 링크는 원본 파일과 동일한 inode를 공유하므로, 하나의 링크가 수정되면 모든 링크가 영향을 받습니다.
- 심볼릭 링크는 원본 파일을 "가리키는" 특별한 파일이므로, 원본이 삭제되면 심볼릭 링크는 더 이상 유효하지 않습니다.

반응형