2011년 3월 22일 화요일

C=>D로 가상적 폴더 이동 2 (Local AppData 옮기기)

컴퓨터 C 드라이브에 보통 운영체제를 설치합니다. 
이때 하드 용량의 문제가 생길 때, 다시 포멧을 하느냐 등의 갈등이 생기죠. 

이를 해결하는 두 가지 좋은 방법을 제시합니다. 

가장 중요한 것은 @@@
주로 저장하는 데이터 폴더를 C드라이버가 아닌, 다른 파티션 (예를 들면, D, E 하드 드라이버 HDD) 에 저장하는 것입니다. 

두 번째 방법은 Local Application data 를 C 가 아닌 다른 드라이버로 옮기는 작업입니다. (Symbolic Links)

본 글에서 이 두 가지 방법 중에서 두 번째에 대한 설명을 합니다. 

windows xp, windows 7 에서 모두 해당됩니다.
윈도우 엑스피 윈도우 세븐 윈도7 윈도 7

========================================================================


2.

"Local Application data" 를 
"C:\" 가 아닌 "다른 드라이버" (파티션, partition) 로 옮기는 작업입니다. 


문제의 상황은 이렇습니다.
C에 운영체제를 설치한 후, 특별히 프로그램을 설치하지 않은 상황임에도 
컴퓨터를 사용할수록 C의 용량이 지속적으로 감소한다. 왜 감소하지???

바로 로컬 폴더에 데이터가 쌓이기 때문입니다. 

로컬 폴더를 찾아보면, 
계정 아래 appl (이하 어플) 이라고 하는 어플 폴더가 보입니다. 

(혹시 보이시지 않는 분은...옆의 주소로 넘어가 주세요... )




이를 지우기에는 위험 부담이 크기 때문에
폴더들을 지우지는 않겠습니다. 
잠시 옮기는 척~을 하겠습니다. (아래에서 말하겠어요~)



일단 이 모든 일을 시작하기 위해서 
명령어를 시작합니다. 
저는 도스 세대가 아니라서 울렁증이 있지만, 
쉽게 따라할 수 있습니다. ㅋ

일단 [시작]을 누르셔서 보조프로그램? 악세서리? 폴더로 이동하신 후에,
[명령 프롬프트]에 마우스를 올리시고, 오른쪽 클릭을 해 주세요.. (왼쪽 아닙니다.ㅋ)

[계정 관리자 권한으로 실행하기]를 눌러 줍니다. 



그냥 실행하면....ㅋ 
왼쪽 클릭으로 실행하면, 아래와 같은 메세지가 뜨더군요 ㅋㅋ


you do not have suffucuent privilege to perform this operation



일단 관리자 권한으로 실행을 했습니다. ~~~

다음 아래 폴더로 이동해 주세요.
C:\Users\자신의 계정폴더\AppData\Local 안에 보면
각종 프로그램의 저장 폴더가 있습니다.

이들 폴더의 이름을 우선 바꿔 줍니다.

예를 들면,
"C:\Users\자신의 계정폴더\AppData\Local\Adobe" 의 폴더를
"C:\Users\자신의 계정폴더\AppData\Local\Adobeeee" 로 말이죠.
(현재 사용중인 소프트웨어의 경우 폴더 이름 변경이 불가하므로, 종료시켜 주세요)

자, 폴더 이름을 바꾸었다는 것은,
더이상 그 폴더가 존재하지 않음을 의미합니다.

자, 이제 아까 열었던 프롬프트로 옮겨갑니다.
프롬프트에서 해당 폴더가 있는 위치로 옮겨갑니다.

"C:\Users\자신의 계정폴더\AppData\Local"에서

mklink /D adobe d:\Local\adobe 라고 입력합니다.
혹시 폴더가 띄어 쓰기가 되어 있는 경우에는
mklink /D "mendeley ltd" "d:\Local\mendeley ltd" 처럼, " " 으로 묶어 줍니다.
그렇게 엔터키를 입력하면,

아래와 같이 Symbolic Links 가 성공적으로 마침을 보여줍니다.









확인 작업~!!!!

위에서 옮긴 mendeley ltd 폴더 아래에서 추가적인 폴더를 만들어 봅니다. C드라이버죠.
위의 주소를 보면....

이는 동시에 D드라이버에서도 만들어짐을 알 수 있습니다. 

결국 Symbolic Links 의 기능은
연결해주는, 연결 설정을 바꿔주는 역할입니다. 

소프트웨어에서는 C의 로컬로 저장을 합니다만, 
이를 눈치챈 컴퓨터OS가 D의 바뀐 폴더로 저장해 주는 것입니다. 
하지만 소프트웨어는 그를 모르고 계속 C의 로컬폴더에 저장한다고 생각하는 것입니다.


이 기능은 여러가지로 매우 유용하다고 생각되네요...
C는 단지 OS만 관리하고, 자료 저장은 제발...다른 파티션으로 가라...
그래야 C가 계속 빠르게 유지되지;;;;ㅋㅋ


결과적으로 제 폴더는 이런 모양이 되었네요 ㅋㅋ


많은 도움 되시기 바랍니다. 



아래 링크에서 참고하여 공부했어요~~
참고하세요~~



Jade
아래와 같이 원하는 폴더로 링크거는 방법이 있습니다.
이렇게 하면 프로그램 기본 폴더는 C에 존재하지만 실제적인 읽고 쓰기는 지정한 폴더에서 합니다. 

rmdir /S /Q "C:\Users\Administrator\AppData\Local\GPSoftware"
    → 프로그램 기본 폴더를 제거.
mklink /J "C:\Users\Administrator\AppData\Local\GPSoftware" "D:\Utility\Excution files\2. Setting\GPSoftware"
    →프로그램 기본 폴더를 원하는 폴더로 링크.





댓글 4개:

  1. 좋은 방법 감사합니다. 2번 방법으로 하니 정말 간편하네요 ^^ Autodesk 폴더를 옮겨서 링크 걸었더니 SSD에 3기가가 확보되서 너무 좋습니다. 그런데 JADE님 설명에 폴더에 "" 표시는 빼야 작동되더군요.

    답글삭제
    답글
    1. 부족한 글이었음에도 도움이 되었다니 다행입니다.
      현재, 사진이 블로그로 전환과정에서 다 사라져 안타깝습니다.

      삭제
  2. 이미지가 안나와서 이해할수가없어요 ㅜㅜ 명령프롬트에서 해당폴더로 옮겨가려면 어떻게하나요?

    답글삭제
  3. appdata 폴더를 통째로 넘기는건 안되나요?

    답글삭제