Microsoft MVP성태의 닷넷 이야기
DropBox - PermissionError: [WinError 5] Access is denied: 'C:\\Users\\...' [링크 복사], [링크+제목 복사],
조회: 1230
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

DropBox - PermissionError: [WinError 5] Access is denied: 'C:\\Users\\...'

사용자 Profile 경로를 "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\[USER_SID]" 레지스트리 설정을 이용해 변경한 후, 다른 앱들은 어찌저찌 적응을 하도록 만들었는데, 유독 DropBox만 실행 시 이런 오류가 발생합니다.

bn.BUILD_KEY: Dropbox
bn.VERSION: 192.4.4605
bn.constants.WINDOWS_SHELL_EXT_VERSION: 69
bn.is_frozen: True
machine_id: b1e9b1ca-015b-b1a4-9e62-c259015bfb22
pid: 26104
cwd: 'C:\\Program Files (x86)\\Dropbox\\Client'
     real_path='C:\\Program Files (x86)\\Dropbox\\Client'
            mode=0o40777    uid=0   gid=0
     parent mode=0o40777    uid=0   gid=0
HOME: None
appdata: 'C:\\Users\\Test User\\AppData\\Local\\Dropbox\\instance1'
         real_path='C:\\Users\\Test User\\AppData\\Local\\Dropbox\\instance1'
                not found
         parent not found
dropbox_path: None
                        not found
              parent    not found
sys_executable: 'C:\\Program Files (x86)\\Dropbox\\Client\\Dropbox.exe'
                real_path='C:\\Program Files (x86)\\Dropbox\\Client\\Dropbox.exe'
                        mode=0o100777   uid=0   gid=0
                parent  mode=0o40777    uid=0   gid=0
trace.__file__: 'C:\\Program Files (x86)\\Dropbox\\Client\\192.4.4605\\python-packages.zip\\dropbox\\client\\ui\\common\\boot_error.pyc'
                real_path='C:\\Program Files (x86)\\Dropbox\\Client\\192.4.4605\\python-packages.zip\\dropbox\\client\\ui\\common\\boot_error.pyc'
                        not found
                parent  not found
TMP: C:\Users\testusr\AppData\Local\Temp
TEMP: C:\Users\testusr\AppData\Local\Temp
tempdir: 'C:\\Users\\testusr\\AppData\\Local\\Temp'
         real_path='C:\\Users\\testusr\\AppData\\Local\\Temp'
                mode=0o40777    uid=0   gid=0
         parent mode=0o40777    uid=0   gid=0
Traceback (most recent call last):
  File "desktop/dropbox/client/main.py", line 8056, in main_startup
  File "desktop/dropbox/client/main.py", line 2656, in initialize
  File "desktop/dropbox/client/main.py", line 1681, in startup_low
  File "desktop/dropbox/client/main.py", line 1296, in safe_makedirs
  File "desktop/dropbox/fsutil.py", line 706, in safe_makedirs
  File "desktop/dropbox/overrides.py", line 240, in makedirs
  File "desktop/dropbox/overrides.py", line 240, in makedirs
  File "desktop/dropbox/overrides.py", line 240, in makedirs
  [Previous line repeated 1 more time]
  File "desktop/dropbox/overrides.py", line 253, in makedirs
PermissionError: [WinError 5] Access is denied: 'C:\\Users\\Test User'

이에 대해 검색해 보면, dropbox를 재설치하라는데 그렇게 해도 해결이 안 된다는 글이 나옵니다.

혹시 방법이 없을까요? ^^




일단 오류 메시지에서 appdata 경로를 판정하는데 있어 이전 이름인 "Test User"를 그대로 사용하고 있는데요, 재미있는 건 중간에 나오듯이 "TMP" 관련 경로는 정상적으로 바뀐 이름("testusr")을 적용하고 있다는 점입니다.

뭐 그럴 수 있습니다. 어딘가 "Test User" 설정을 하드코딩해서 들고 있을 것입니다. 관련 정보가 있을 수 있는 곳으로, info.json이 하나 있는데요,

// 경로: C:\Users\testusr\AppData\Local\Dropbox\info.json

C:\Users\kevin\AppData\Local\Dropbox\info.json

{"personal": {"path": "C:\\Users\\Test User\\Dropbox", "host": 14084970785, "is_team": false, "subscription_type": "Basic"}}

저 경로를 바꿔줘도 안 됩니다. ^^; 혹시나 싶어 %USERNAME% 출력을 사용하나 싶어서,

C:\temp> echo %USERNAME%
testusr

제어판의 "Windows Tools" / "Computer Management"를 이용해 사용자 이름까지 "Test User"에서 "testusr"로 변경했는데도, 여전히 오류가 발생합니다. ^^;

그다음, 레지스트리를 뒤져 "Test User"라고 되어 있는 경로를 찾았는데,

경로: HKEY_CLASSES_ROOT\CLSID\{E31EA727-12ED-4702-820C-4B6445F28E1A}\Instance\InitPropertyBag
경로: HKEY_CLASSES_ROOT\WOW6432Node\CLSID\{E31EA727-12ED-4702-820C-4B6445F28E1A}\Instance\InitPropertyBag

이름: TargetFolderPath

이 값을 바꿔도 여전히 오류는 계속 발생합니다. 음... 별로 중요한 문제도 아니니 더 시간을 끌기가 아깝군요. ^^; 그래서 그냥 Junction을 사용해 해결했습니다.

mklink /J "C:\Users\Test User" "C:\Users\testusr"

참고로, 위와 같이 Junction으로 해결했더니 info.json 파일과 레지스트리의 경로를 ("testusr"로) 바꿨던 것들이 다시 ("Test User"로) 원복이 되었습니다.




상황을 잠깐 정리해 보면, 제 경우에 로컬 PC의 어디를 뒤져도 이전 이름을 사용하고 있는 저장소가 없는데도 해결이 안 된다는 점과, 재설치를 했는데도 오류가 계속된다는 것은... 아마도 dropbox를 처음 설치해 device를 등록하는 과정에서 그 당시의 사용자 계정이 서버로 전송돼 재사용되는 것이 아닌가... 하는 예측이 됩니다.

즉, device 등록을 해제하고 다시 등록하면 되지 않을까... 라는 예상을 할 수 있습니다.

일단, 저걸 테스트해볼 수는 있는데 제 경우에는 다시 등록하는 과정에서 파일들의 재동기화로 인해 날짜(Date modified)가 뒤섞이는 것을 원치 않으므로 그냥 Junction으로 해결한 것입니다.

혹시나, device 재등록으로 해결이 되신 분이 있다면 덧글 부탁드립니다. ^^




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 2/18/2024]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




1  2  3  4  5  6  7  8  9  10  11  12  [13]  14  15  ...
NoWriterDateCnt.TitleFile(s)
227정성태1/29/200916870파수닷컴 DRM, fph.exe 제거하는 방법
226정성태1/15/2009135004GB USB 메모리로 Windows 7 베타를 UMPC 에 설치하는 방법 [1]
225정성태1/11/200925085nProtect 서비스 죽이기
224정성태1/11/200912634Windows 7 - DivX Codec 기본 내장
223정성태1/9/200912711작업 관리자 화면 - 96개의 코어 + 512GB 메모리
222정성태1/7/200912895비스타 - 유령 윈도우 제거 방법
221정성태1/4/200912981Q1 Ultra + Windows 7 [1]
220정성태1/3/200912660숫자가 주는 인식의 오류
219정성태1/1/2009135992008년 인기 순위 정리
218정성태1/1/200915058Internet Explorer용 RFC 검색 제공자
217정성태12/21/200824619개발자를 괴롭히는 nProtect 개발자 [1]
216정성태12/21/200813042Dynamic DNS 서버에 등록하는 과정을 없애는 방법
215정성태12/8/200812391TDD가 좋은 줄 알면서도 안하는 이유
214정성태12/2/200814336Outlook HTTP 접속 오류
213정성태11/30/200824094실행 시간을 제한하는 NT 서비스파일 다운로드1
211정성태10/30/200815575서울시의회 전자회의시스템 프로젝트 프로그램 개발자 폭행사건
210정성태10/19/200812540BGT 2008
209정성태10/4/200812051At least they’re consistent
208정성태10/2/200812718MSDN Magazine 기사 인쇄
207정성태7/25/200812529막연한 거부감 [1]
206정성태7/1/200811670변화... [1]
205정성태6/26/200812097NASA 과학자 “온난화, ‘티핑 포인트’ 임박했다” [1]
204정성태6/23/200811616Interface-Driven Development [1]
203정성태5/22/200812103돌부처의 심장을 뛰게 하라 [2]
202정성태4/16/200811818[디지털데일리] 기업 블로그, 쉽게 생각했다간 낭패 [2]
201정성태4/11/2008118572008년 4월 10일 - IE ActiveX 활성화 패치 포함
1  2  3  4  5  6  7  8  9  10  11  12  [13]  14  15  ...