본문 바로가기

BackEnd/Linux

심볼릭 링크(Symbolic Link)

심볼릭 링크를 알아볼거다

구글링 하면서 명령어만 알고 싶었던 적이 더 많아서, 명령어->설명 순으로 정리해야겠다

 

- 심볼릭 링크 생성 커맨드(생성, 변경, 삭제)

- 심볼릭 링크란 무엇일까


1. 심볼릭 링크(Symbolic Link) Command

1) 심볼릭 링크 생성

 

CMD> ln -s {링크걸고 싶은 파일} {링크 이름}

 

위와 같이 쓸 수 있다

 

합계 0
drwxr-xr-x. 2 pp pp 48 12월 17 17:17 .
drwxr-xr-x. 3 pp pp 17 12월 17 16:58 ..
-rw-r--r--. 1 pp pp  0 12월 17 16:59 library.so.0
-rw-r--r--. 1 pp pp  0 12월 17 17:17 library.so.0.1.0

 

만약 링크 걸고 싶은 파일이 library.so.0.1.0 이고 >> {링크 걸고 싶은 파일}

링크 이름으로 지정하고 싶은 이름이 link_test 라면 >> {링크 이름}

 

CMD> ln -s library.so.0.1.0 link_test

 

요롷게 해주면 끝이다

아래는 결과 모습이다

 

링크 완성~

 

2) 심볼릭 링크 변경

 

CMD> ln -Tfs {바꾸고 싶은 파일} {기존 링크 이름}

 

옵션만 -Tfs로 바꿔주면 되고, 파라미터 순서는 똑깥다

 

만약에 바꾸고 싶은 파일이 library.so.0.2.0 이고 >> {바꾸고 싶은 파일}

관련된 기존 링크 이름이 link_test 라면 >> {기존 링크 이름}

 

CMD> ln -Tfs library.so.0.2.0 link_test

 

오나성

 

3) 심볼릭 링크 제거

 

CMD> rm {제거할 링크 이름}

 

링크 제거는 엄청 간단하다 rm 명령어에 (rm 명령어는 항상 조심하자)

제거할 링크 이름 >> link_test 만 적어주면 끝이다

 

CMD> rm link_test

 

ㅇㅅ

 


2. 심볼릭 링크(Symbolic Link)

심볼릭 링크는 말 그대로 '상징적 연결고리'이다

우리가 컴퓨터를 킬 때, 바탕화면에 바로가기 아이콘을 이것저것 만들어 놓았는데

그게 바로 링크이다!

 

심볼릭 링크를 그럼 언제 사용하면 좋을까.

나는 보통 아래의 경우 때 많이 쓴다

 

1) 라이브러리 버전 관리할 때 >> 라이브러리에 심볼릭 링크 생성

2) 디렉터리에 편하게 접근하고 싶을 때 >> 디렉터리에 심볼릭 링크 생성

 

1) 라이브러리 심볼릭 링크

 

위에서 예시로 든 내용이 라이브러리 버전을 바꾸는 내용이었다

라이브러리는 계속 업데이트 될거고, 그 때마다 파일명도 바뀔텐데

그 때마다 해당 라이브러리를 사용하는 곳에서 이름을 0.0.1, 0.0.2.... 0.1.1 이렇게 바꾸는건 좀 아니다 (그래도 되긴된다)

그래서 link_test 라는 이름 하나만 바라보고, 링크 연결만 바꿔주면 편하다

 

 

2) 디렉터리 심볼릭 링크

 

만약에 개발해야하는 디렉터리가 root 밑에 sub1이라는 디렉터리 안에 sub2 디렉터리 안에,,, sub100 디렉터리에 있다고 생각해보자

새로 쉘을 킬 때마다 cd root/sub1/sub2/......sub100 이렇게는 안하고 싶다

 

이럴 때 개발 디렉터리를 원하는 위치에 링크를 걸어 놓으면

편리하게 이동할 수 있다 (텔레포트 하듯이~)

 

예시를 들어보자면,,

 

요기서 subs3이 개발 디렉터리라면, 그냥 develop이라는 이름만 정해 놓고

한번에 들어가도록 하면 되는거다

 

CMD> ln -s {불편한 디렉터리 경로} {링크 이름}

 

파일에 링크 걸어주는거랑 소름끼칠 정도로 똑같다

파일도 경로/파일이름 요렇게 하는데 사실 다를게 없다 ㅋ

 

CMD> ln -s root/sub1/sub2/sub3/ develop

 

텔포 가능요

 

그러면 cd develop/ 만 해도 된다