Microsoft MVP성태의 닷넷 이야기
DropBox - PermissionError: [WinError 5] Access is denied: 'C:\\Users\\...' [링크 복사], [링크+제목 복사],
조회: 1216
글쓴 사람
정성태 (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

비밀번호

댓글 작성자
 




... 16  [17]  18  19 
NoWriterDateCnt.TitleFile(s)
116정성태12/20/200612983SKT HSDPA 모뎀... [1]
115정성태12/11/200612555이런 사양을 만족하는 노트북 모델 추천 좀 부탁드립니다. ^^ [3]
119정성태1/7/200713683    답변글 노트북 선택 [2]
114정성태11/22/200611150질문 답변 관련해서...
113정성태10/31/200611387요즘 홈 주인이 일하는 곳...
112정성태10/30/200611313Windows CardSpace 로그인 구현했습니다. ^^
111정성태12/6/200611784내가 방문했던 국가들 [2]
110정성태10/24/200611297공감이 가는 질투 [2]
109정성태10/19/200614259칭찬해 주고 싶은 NateOn 메신저 [3]
108정성태10/19/200610920난 별로 정치에 대해서는 문외한이지만. [1]
107정성태10/17/2006112221인 1프로젝트
104정성태10/5/200611171통화내용증명서비스
103정성태9/26/200611124Do you have a laptop with not much RAM and would like to run Vista on it?
102정성태9/22/200611895서울시내 교통 상황 CCTV 모음
101정성태9/20/200611903MS.... 가 아닌 Microsoft.
100정성태9/16/200610995SKT HSDPA 모뎀 - 언제 어디서나 인터넷 가능.
99정성태9/3/200611459회사 소식 포스트의 수위 [2]
98정성태9/3/200611210DxIESaver - DLL - V1.5.1.8
97정성태8/27/200622105mms 스트림을 로컬 파일로 저장해주는 프로그램 [2]
96정성태8/23/200611581Windows Live Writer 사용법파일 다운로드1
95정성태8/23/200610588재미있는 ATL 코드 조각 하나.
94정성태8/22/200610930Dell laptop batteries are not allowed to be used on planes
92정성태8/16/200611396편해진 세상 이야기 ^^
91정성태8/8/200610390최근 읽었던 책들... [3]
89정성태7/26/200610999외국에서 온 메일 ^^
87정성태7/10/200610187머리 좀 식히시지요. 파일 다운로드1
... 16  [17]  18  19