심볼릭 링크 (심볼릭 링크라고도 함)는 컴퓨터의 다른 파일이나 폴더를 가리키는 Linux의 파일 유형입니다. Symlink는 Windows의 바로 가기와 유사합니다.
어떤 사람들은 심볼릭 링크를 "하드 링크"가 아닌 Linux / UNIX 시스템의 링크 유형 인 "소프트 링크"라고 부릅니다.
소프트 링크와 하드 링크의 차이점
소프트 링크는 바로 가기와 유사하며 모든 파일 시스템의 다른 파일이나 디렉토리를 가리킬 수 있습니다.
하드 링크는 파일 및 폴더의 바로 가기이기도하지만 다른 파일 시스템의 폴더 또는 파일에 대해서는 하드 링크를 만들 수 없습니다.
심볼릭 링크 생성 및 제거와 관련된 단계를 살펴 보겠습니다. 또한 끊어진 링크가 무엇인지, 삭제하는 방법도 알아 봅니다.
Symlink를 만드는 방법
심볼릭 링크를 만드는 구문은 다음과 같습니다.
ln -s
ln
링크 명령입니다. -s
플래그 지정 링크는 부드러운 것을. -s
로 입력 할 수도 있습니다 -symbolic
.
기본적으로 ln
command는 하드 링크를 만듭니다. 다음 인수는 path to the file (or folder)
연결하려는 것입니다. (즉, 바로 가기를 만들려는 파일 또는 폴더입니다.)
그리고 마지막 인수는 그 path to link
자체입니다 (단축키).
파일에 대한 Symlink를 만드는 방법 – 예제 명령
ln -s /home/james/transactions.txt trans.txt
이 명령을 실행 한 후, 당신은이 액세스 할 수 있습니다 /home/james/transactions.txt
로 trans.txt
. 에 대한 수정 사항 trans.txt
은 원본 파일에도 반영됩니다.
위의이 명령은 trans.txt
현재 디렉토리에 링크 파일 을 생성합니다 . 다음과 같이 폴더 링크에 링크 된 파일을 만들 수도 있습니다.
ln -s /home/james/transactions.txt my-stuffs/trans.txt
현재 디렉토리에 이미 "my-stuffs"라는 디렉토리가 있어야합니다. 그렇지 않으면 명령에서 오류가 발생합니다.
폴더에 대한 Symlink를 만드는 방법 – 예제 명령
위와 유사하게 다음을 사용합니다.
ln -s /home/james james
이렇게하면의 내용을 포함하는 'james'라는 심볼릭 링크 폴더가 생성 /home/james
됩니다. 이 링크 된 폴더에 대한 모든 변경 사항은 원본 폴더에도 영향을 미칩니다.
심볼릭 링크를 제거하는 방법
심볼릭 링크를 제거하기 전에 파일 또는 폴더가 심볼릭 링크인지 확인하여 파일을 변경하지 않도록 할 수 있습니다.
이를 수행하는 한 가지 방법은 다음과 같습니다.
ls -l
터미널에서이 명령을 실행하면 파일의 속성이 표시됩니다. 결과적으로 첫 번째 문자가 소문자 L ( 'l')이면 파일 / 폴더가 심볼릭 링크임을 의미합니다.
또한 끝에 simlink가 가리키는 파일 / 폴더를 나타내는 화살표 (->)가 표시됩니다.
심볼릭 링크를 제거하는 방법에는 두 가지가 있습니다.
Unlink를 사용하여 Symlink를 제거하는 방법
구문은 다음과 같습니다.
unlink
프로세스가 성공하면 심볼릭 링크가 삭제됩니다.
심볼릭 링크가 폴더 형태 인 경우에도 '/'를 추가하지 마십시오. Linux는이를 디렉토리라고 가정하고 디렉토리를 unlink
삭제할 수 없기 때문입니다.
rm을 사용하여 Symlink를 제거하는 방법
지금까지 살펴본 것처럼 심볼릭 링크는 원본 파일 또는 폴더를 가리키는 다른 파일 또는 폴더입니다. 해당 관계를 제거하려면 링크 된 파일을 제거 할 수 있습니다.
따라서 구문은 다음과 같습니다.
rm
예를 들면 :
rm trans.txt rm james
참고하려고 노력하는 것이 rm james/
리눅스 가정 때문에, 오류를 초래할 것 '제임스 /'같은 다른 옵션이 필요 디렉토리입니다 r
및 f
. 그러나 그것은 우리가 원하는 것이 아닙니다. 심볼릭 링크는 폴더 일 수 있지만 이름에만 관심이 있습니다.
rm
over 의 주요 이점은 unlink
파일 에서처럼 한 번에 여러 심볼릭 링크를 제거 할 수 있다는 것입니다.
끊어진 링크를 찾고 삭제하는 방법
끊어진 링크는 심볼릭 링크가 가리키는 파일 또는 폴더가 경로를 변경하거나 삭제 될 때 발생합니다.
예를 들어 'transactions.txt'가에서 /home/james
로 이동 /home/james/personal
하면 'trans.txt'링크가 끊어집니다. 파일에 대한 액세스를 시도 할 때마다 '해당 파일 또는 디렉토리 없음'오류가 발생합니다. 링크에 자체 내용이 없기 때문입니다.
끊어진 링크를 발견하면 파일을 쉽게 삭제할 수 있습니다. 끊어진 심볼릭 링크를 찾는 쉬운 방법은 다음과 같습니다.
find /home/james -xtype l
그러면 james
파일에서 디렉토리, 하위 디렉토리에 이르기까지 디렉토리 에있는 모든 끊어진 심볼릭 링크가 나열됩니다 .
-delete
옵션을 전달하면 다음 과 같이 삭제됩니다.
find /home/james -xtype l -delete
마무리
심볼릭 링크는 Linux 및 UNIX 시스템의 흥미로운 기능입니다.
쉽게 액세스 할 수있는 심볼릭 링크를 만들어 액세스하기 편리하지 않은 파일 또는 폴더를 참조 할 수 있습니다. 약간의 연습을 통해 이러한 기능이 직관적 인 수준에서 어떻게 작동하는지 이해하고 파일 시스템을 훨씬 더 효율적으로 관리 할 수 있습니다.