Linux ln 명령어 사용하는 방법 (Hard Link와 Soft Link 만드는 방법)

Linux에서는 파일이나 디렉터리를 효율적으로 관리하기 위해 ln 명령어를 사용합니다. ln 명령어는 Hard Link와 Soft Link(Symbolic Link)를 생성할 수 있으며, 서버 운영과 시스템 관리에서 매우 자주 사용하는 기본 명령어입니다.

Hard Link는 동일한 inode를 공유하는 새로운 파일을 생성하며, Soft Link는 원본 파일이나 디렉터리의 위치를 참조하는 링크를 생성합니다. 두 방식은 동작 원리가 다르기 때문에 목적에 맞게 사용하는 것이 중요합니다.

이번 글에서는 Linux에서 ln 명령어를 사용하는 방법과 Hard Link, Soft Link를 생성하는 방법을 자세히 알아보겠습니다.

ln 명령어란?

ln은 Linux에서 링크를 생성하는 명령어입니다.

기본적으로 Hard Link를 생성하며, -s 옵션을 사용하면 Soft Link를 생성할 수 있습니다.

파일 관리와 서버 운영에서 가장 많이 사용하는 명령어 중 하나입니다.

기본 사용법은 다음과 같습니다.

ln 원본파일 링크이름

Soft Link를 생성하려면 다음과 같이 사용합니다.

ln -s 원본파일 링크이름

Hard Link 생성하기

Hard Link를 만들려면 다음 명령어를 실행합니다.

ln file1.txt file2.txt

file2.txt는 file1.txt와 동일한 inode를 사용하는 Hard Link가 됩니다.

두 파일은 같은 데이터를 공유합니다.

Hard Link 확인하기

Hard Link가 정상적으로 생성되었는지 확인하려면 다음 명령어를 사용합니다.

ls -li

inode 번호가 동일하다면 Hard Link가 정상적으로 생성된 것입니다.

예를 들어 다음과 같이 표시됩니다.

123456 file1.txt
123456 file2.txt

같은 inode 번호를 사용하므로 두 파일은 동일한 데이터를 참조합니다.

Soft Link 생성하기

Soft Link를 생성하려면 -s 옵션을 사용합니다.

ln -s file1.txt file3.txt

file3.txt는 file1.txt를 참조하는 Soft Link가 됩니다.

원본 파일을 복사하지 않고 경로만 연결합니다.

디렉터리 Soft Link 만들기

Soft Link는 디렉터리에도 사용할 수 있습니다.

ln -s /var/www/html /home/user/web

이제 /home/user/web을 통해 /var/www/html 디렉터리에 접근할 수 있습니다.

웹 서버 환경에서 자주 사용하는 방법입니다.

생성된 링크 확인하기

현재 디렉터리의 링크를 확인하려면 다음 명령어를 실행합니다.

ls -l

Soft Link는 권한 앞에 l 문자가 표시됩니다.

예를 들어 다음과 같이 출력됩니다.

lrwxrwxrwx 1 root root 9 Jul 16 file3.txt -> file1.txt

화살표(->) 뒤에 표시되는 경로가 원본 파일입니다.

링크의 실제 경로 확인하기

Soft Link가 연결된 실제 경로를 확인하려면 다음 명령어를 사용합니다.

readlink file3.txt

최종 절대 경로까지 확인하려면 다음 명령어를 실행합니다.

readlink -f file3.txt

원본 파일의 실제 위치를 확인할 수 있습니다.

링크 삭제하기

생성한 링크는 일반 파일처럼 삭제할 수 있습니다.

rm file3.txt

삭제되는 것은 링크만입니다.

원본 파일은 그대로 유지됩니다.

Hard Link와 Soft Link 비교

Hard Link는 동일한 inode를 공유합니다.

Soft Link는 원본 파일의 경로를 참조합니다.

Hard Link는 같은 파일 시스템에서만 생성할 수 있습니다.

Soft Link는 다른 파일 시스템에도 생성할 수 있습니다.

원본 파일이 삭제되면 Hard Link는 계속 사용할 수 있지만 Soft Link는 사용할 수 없습니다.

ln 명령어 사용 시 주의할 점

Hard Link와 Soft Link는 용도가 다릅니다.

데이터를 직접 공유해야 한다면 Hard Link를 사용하는 것이 적합합니다.

파일이나 디렉터리의 위치를 연결해야 한다면 Soft Link를 사용하는 것이 좋습니다.

링크를 생성하기 전에 원본 경로가 올바른지 확인하는 것이 중요합니다.

자주 묻는 질문

Hard Link는 어떻게 생성하나요?

다음 명령어를 사용합니다.

ln file1.txt file2.txt

Soft Link는 어떻게 생성하나요?

다음 명령어를 사용합니다.

ln -s file1.txt file3.txt

링크가 정상적으로 생성되었는지 어떻게 확인하나요?

다음 명령어를 사용합니다.

ls -l

또는 Hard Link는 다음 명령어로 inode를 확인할 수 있습니다.

ls -li

마무리

ln 명령어는 Linux에서 Hard Link와 Soft Link를 생성하는 기본 명령어입니다. Hard Link는 동일한 데이터를 공유할 때 사용하며, Soft Link는 파일이나 디렉터리의 위치를 연결할 때 사용합니다. ln, ls -l, ls -li, readlink 명령어를 함께 활용하면 링크를 효율적으로 관리할 수 있으며, 웹 서버와 개발 환경에서도 매우 유용하게 사용할 수 있습니다.

댓글 남기기