MacOS, 심볼릭 링크 사용하기

2018-02-20

Symbolic Link?

개발을 하던 중 한 파일이 여러 곳에서 필요한 경우가 있다.
물론 모듈을 써서 사용하겠지만 개발 공부할 때는 종종 있는 일이다.

그래서 복사 붙여놓기 보다는 나은 방법이 심볼릭 링크인 것 같아 방법을 소개한다.
개발 외에서도 활용하고 있는 심볼릭 링크도 소개해보겠다.

- ONE
  - index.html
  - style.css
- TWO
- THREE

위와 같은 폴더 구조에서 ONE 폴더에 위치한 style.css 파일이 TWO 폴더안에 필요하다고 해보자. ```shell # 작업 위치를 TWO 폴더로 이동 $ cd TWO/ # 심볼릭 링크 $ ln -s ../ONE/style.css style.css ```
다른 경우로 THREE 폴더에서 ONE폴더가 필요하다고 해보자. 그리고 THREE 폴더의 링크된 ONE폴더의 이름은 _ONE 이라 해보자. ```shell # 작업 위치를 THREE 폴더로 이동 $ cd THREE/ # 심볼릭 링크 $ ln -s ../ONE _ONE ``` 이렇게 간단하게 사용할 수 있다, 어떻게 보면 복사 붙여놓기보다 간단하게 사용할 수 있다.
이렇게 심볼링 링크된 것을 GitHub 웹페이지에서 확인해보면 어떨까? TWO 폴더의 링크된 style.css 파일을 GitHub 웹페이지에서 확인해보면 아래와 같다.
Symbolic link |  1 lines (1 sloc) | 25 Bytes
--------------------------------------------
1 | ../ONE/style.css

클라우드에 활용하기

현재 NAS에 아래에서 소개할 방법으로 심볼릭 링크를 활용하고 있다, 여기서는 구글 드라이브로 예를 들어보겠다.

구글 드라이브와 같은 클라우드에 폴더를 동기화할때도 요긴하게 쓰일 수 있는데,
컴퓨터에 설치하여 사용하는 설치형 구글 드라이브를 예로 들어보겠다.

A 폴더를 구글 드라이브에서 사용하기 위해서 구글 드라이브로 복사한다면,
컴퓨터 저장 공간에 A폴더 용량, 그리고 구글 드라이브의 A폴더 용량.
이렇게 중복되어 많은 용량을 차지하게 된다.

그러나 A 폴더를 심볼릭 링크로 구글 드라이브에 링크를 해놓으면 해결된다.
컴퓨터 내에서 구글 드라이브에 위치한 A폴더 심볼링 링크는 사실상 바로가기라고 보면 된다. 그리고 구글 드라이브는 바로가기라고 해서 바로가기를 동기화해가는 것이 아닌 A폴더 자체를 동기화 하게 된다.
이렇게 하면 용량도 절약하며 링크가 되어있으므로 A폴더를 수정해도 구글 드라이브에 반영되게 된다.