파이노드 심볼릭 링크 : C용량 부족시 D의 폴드를 C에 있는것 처럼

파이노드

파이노드 심볼릭 링크 : C용량 부족시 D의 폴드를 C에 있는것 처럼

다오(DAO) 2023. 5. 24. 09:02

D드라이브의 폴더를 C드라이브에 심볼릭 링크로 만드는 방법은 다음과 같습니다.

1. 명령 프롬프트를 엽니다.
2. 아래 명령어를 입력합니다.
```
mklink /D [링크 폴더 경로] [원본 폴더 경로]
```
예를 들어, D드라이브의 myfolder 라는 폴더에 대한 심볼릭 링크를 C드라이브의 mylink 라는 폴더로 만들고 싶다면 다음과 같이 입력합니다.
```
mklink /D C:\mylink D:\myfolder
```

참고로, mklink 명령어는 관리자 권한으로 실행해야 합니다. 또한, 원본 폴더가 삭제되면 링크 폴더도 사용할 수 없게 됩니다. 이 점 유의하시기 바랍니다.

 

다음은 파이노드의 상황으로 보겠습니다.
파이노드의 데이터가 쌓여 C드리이버 용량이 부족해지는 경우 볼륨을 확장하고 연결(link)시켜 주면 됩니다. 

파이노드 프로그램이 원격으로 데이터를 만들기 때문에 절대경로에 대한 정션(junction), 디렉터리 교차방식을 적용해야 합니다. 따라서 mklink를 사용하되 j라는 옵션을 넣어서 디렉터러 교차점으로 만들어야 파이노드가 정상 작동합니다.

C에서 D로 교차점 디렉터리를 만들고자할 때, 아래와 같이 지정합니다.

(윈도우에서 절대경로란 드라이브명으로 시작하는 경로)

mklink /j "<C의 절대경로>" "<D의 절대경로>"

실제 적용사례는 아래 URL을 참조하였습니다.

예시 1)
mklink /J "C:\Program Files\Docker" "D:\PiNode\Docker"

 

(실제 노드 데이타가 저장된 폴드는 Docker 폴드가 아닌 C:\Users\계정명\appdata 폴드임)

; 이 경우는 용량이 많은 D드라이브를 활용하는 경우입니다.


에시 2)
mklink /J "C:\Program Files\Docker" "C:\PiNode\Docker"

이 경우는 실제로 물리적인 드라이브를 추가해서 볼륨을 확장시켜, 논리적으로 단일 드라이브인 C로만 사용 경우에 해당합니다. 


이렇게 지정을 하게되면 파이노드 프로그램이 원격서버를 통해서 생성되는 데이터들은 C드리이버가 아닌 D드라이버에 저장됩니다.

옵션 j를 사용하는 것은 필수입니다.