mklink 오류 : 해당 파일이 이미 존재하는 경우 파일을 작성할 수 없습니다


27

iTunes 백업 데이터를 다른 드라이브로 리디렉션하기 위해 win7 64 비트 시스템에 심볼릭 링크를 만들려고합니다. 구문이 정확하지만이 오류를 지우는 방법을 이해할 수 없습니다. 동일한 오류가있는 두 가지 명령을 모두 시도했습니다. 관리자 명령 창에서 실행 중입니다. 이 명령을 실행하지 못하게하는 회사 그룹 정책이 있습니까?

mklink /D "C:\Users\odellt1\AppData\Roaming\Apple Computer\MobileSync\Backup" "E:\Apple Computer\MobileSync\Backup" 

또는

mklink /J "C:\Users\odellt1\AppData\Roaming\Apple Computer\MobileSync\Backup" "E:\Apple Computer\MobileSync\Backup"

오류

해당 파일이 이미 존재하면 파일을 작성할 수 없습니다.


원래 디렉토리는 어느 것입니까?
Akram Berkawy

원래 디렉토리는 C : \ Users \ odellt1 \ AppData \ Roaming \ Apple Computer \ MobileSync \ Backup입니다.
ChiliYago

E 드라이브에 연결중인 폴더가 있습니까? 링크와 동일한 이름의 폴더가 C 드라이브에 있습니까? E 드라이브는 NTFS로 포맷되어 있습니까?
Harry Johnston

1
이 명령을 실행하기 전에 구문이 올바른지 다음 단계를 수행하십시오. 현재 mobilesync 백업 폴더의 모든 내용을 E : \ Apple Computer \ MobileSync \ Backup으로 이동하십시오. 완료되면 "C : \ Users \ odellt1 \ AppData \ Roaming \ Apple Computer \ MobileSync"에서 빈 백업 하위 폴더를 삭제하십시오. 정션은 이름이 같은 하위 폴더가 해당 위치에없는 경우에만 만들 수 있습니다.
Karanvir Kang

답변:


29

구문이 잘못되었습니다. mklink다음과 같은 synatx가 있습니다.

mklink [options] <Link> <Target>

Target파일 / 존재하는 폴더이며, Link그 생성 된 하나입니다 링크 대상에.

따라서 명령은 다음과 같아야합니다.

mklink /D "E:\Apple Computer\MobileSync\Backup"  "C:\Users\odellt1\AppData\Roaming\Apple Computer\MobileSync\Backup"

mklink 사용법 은 이 링크 를 참조하십시오 .


나는 문서를 겪었고 너무 짧아서 실행하는 데 아무런 문제가 없을 것이라고 생각할 것입니다. 그러나 운이 좋으면 제안한대로 링크 / 대상을 되 돌리면 동일한 오류 메시지가 나타납니다.
ChiliYago

1
그런 다음 E : \ Apple Computer \ MobileSync \ Backup 폴더가 없는지 확인해야합니다.
Akram Berkawy

1
효과가있었습니다. 전체 경로를 삭제하면 "시스템이 지정된 경로를 찾을 수 없습니다"라는 오류가 발생했습니다. 그래서 경로를 복원하고 경로의 마지막 폴더 (백업) 만 삭제 한 다음 작동했습니다.
ChiliYago

1
이것은 정답이 아닙니다. 이것은 iTunes를 다른 드라이브로 리디렉션하지 않는 simlink를 생성합니다. 그것은 정확히 반대입니다-다른 드라이브를 iTunes 백업 폴더로 보냅니다.
Vaiden

8

가장 간단한 방법은 명령을 실행할 때 Original apple 폴더 백업 (C : \ driver)에서 Backup 폴더를 삭제하는 것입니다.

mklink /J "%APPDATA%\Apple Computer\MobileSync\Backup" "E:\iTune Backups"

Windows는 C : \ 드라이버에 백업 링크 바로 가기를 만듭니다.


2
이것은 OP가 의미하는 바를 수행하는 정답입니다
Vaiden

4

"% AppData % '를 사용할 때까지"파일이 이미 존재합니다 "오류와 동일한 문제가있었습니다.

mklink / J "% APPDATA % \ Apple Computer \ MobileSync \ Backup" "E : \ iTune 백업"

C : \ Users \ Me \ AppData \ Roaming \ Apple Computer \ MobileSync \ Backup << === >> E : \ iTune 백업에 대해 정션이 생성되었습니다.

참고 : 따옴표를 사용해야합니다. 그렇지 않으면 구문 명령 오류가 발생합니다.


접합을 만들기 전에 소스 및 대상 폴더가 없는지 확인하는이 간단한 방법이 마음에 듭니다. 정션을 작성하면 소스 폴더는 작성되지만 대상 폴더는 작성되지 않습니다. 그래서 수동으로 대상 폴더를 만들어야했는데 모두 예상대로 작동합니다.
timoto

이것은 나를 위해 고쳤지만 % AppData %가 그것을 고치는 이유에 대한 설명이 있으면 좋을 것입니다.
Aureis

2

위의 주석에서 언급 한 오류 System cannot find the path specified가 링크의 원본 소스에 존재하지 않는 하위 폴더 수준에서 심볼릭 링크를 할 때 발생하는 것으로 나타났습니다.

연결할 수 없음을 의미

"c:\program files (x86)\some folder1\some folder2\"

타겟팅

"d:\programs\some folder1\some folder2\"

적어도 그렇지 않으면 작동하지 않습니다

"c:\program files (x86)\some folder1"

링크 소스의 일부로 존재합니다. 두 가지 중 하나를 연결해야합니다

"c:\program files (x86)\some folder1"

"g:\programs\some folder1" 

또는 최소한 빈 폴더를 만들어야합니다.

"c:\program files (x86)\some folder1"

그런 다음 링크를 만듭니다

"c:\program files (x86)\some folder1\some folder2" 

"g:\programs\some folder1\some folder2"

이것은 Microsoft의 버그처럼 보이지만 실제로는 정답입니다. 때 링크 C:\fooE:` for instance, E : \ foo`가로 CD에 존재해야합니다 C:\foo; 그러나 cd 를 수행 하면 E:` -- **not** E : \ foo`에 배치됩니다 . 이것을 지적 해 주셔서 감사합니다.
Qix
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.