Microsoft MVP성태의 닷넷 이야기
SYSTEM 에 의해서 파일이 잠기는 현상 [링크 복사], [링크+제목 복사]
조회: 15711
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
SYSTEM 에 의해서 파일이 잠기는 현상


제목에서 말하는 "SYSTEM"은 실행상태에서 파일을 잠그는 어떤 일반적인 프로세스를 가리키는 것이 아니고, 작업 관리자에서 보면 "System" 이라고 지칭되는 프로세스를 말합니다. 즉, 물리적인 EXE 파일도 가지고 있지 않은 그 "System" 프로세스입니다.

현상은, 빌드 서버에서 이뤄지는 컴파일이 계속 다음과 같이 실패하는 것으로 시작되었습니다.

CopyFilesToOutputDirectory:
Copying file from "obj\Release\Test.exe" to "D:\...\bin\Test.exe".
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(2868,9):
error MSB3021: Unable to copy file "obj\Release\Test.exe" to "D:\...\bin\Test.exe". The process cannot access the file 'D:\...\bin\Test.exe' because it is being used by another process.
[D:\...\Test.csproj]
Done Building Project "D:\...\Test.csproj" (default targets) -- FAILED.



위의 경우에는 "Test.exe" 라는 파일명이었지만, 재미있게도 이 현상들은 모든 EXE 확장자를 가진 파일에 공통적으로 발생했습니다. 도대체 어떤 프로세스가 잠그고 있는지 확인하기 위해 "LockHunter"로 보니, 다음과 같이 "SYSTEM" 이었습니다. ^^;

system_lock_my_file_1.png

세상에... "System"이라니... 절망적이라고 볼 수 있는 상황이었습니다. ^^;

그렇다고 해서 아주 잠겨진 것도 아닙니다. 그냥 탐색기에서 메뉴를 이용하여 삭제를 하면 그냥 지워집니다.

그런데, 명령행에서 이 작업을 하면 매우 재미있는 결과가 나옵니다. (다음은 3번 연속으로 삭제시도를 한 것입니다.)

D:\...\bin>del c:\temp\Test.exe     <--- 첫번째 시도

D:\...\bin>del c:\temp\Test.exe     <--- 두번째 시도
c:\temp\Test.exe
Access is denied.

D:\...\bin>del c:\temp\Test.exe     <--- 세번째 시도
Could Not Find c:\temp\Test.exe

^^; 바이러스일까???? 싶어서 백신으로 검사해보았으나 아무런 이상이 없었습니다. (물론, 해당 백신 프로그램이 100% 완벽하게 보장할 수는 없지만.)

또 하나 재미있는 현상은, 탐색기에서 보안 탭을 눌러보면 다음과 같이 설정을 (일반 사용자 권한으로는) 못한다고 나옵니다.

system_lock_my_file_2.png

그래서, 부모 폴더로부터 보안을 상속받도록 하기 위해 직접 부모 폴더의 보안을 변경해서 적용하는데 다음과 같이 할 수 없다고 나옵니다.

system_lock_my_file_3.png

더욱 재미있는 것은, 저런 식으로 속성창을 띄우거나 하면 해당 EXE 파일이 가끔씩 삭제된다는 것입니다.




오류 현상이 워낙 설명하기 힘들다 보니, 해결책을 위한 검색도 힘들었습니다. "SYSTEM" 이라는 단어와 "lock"이라는 단어를 조합하니 그다지 영양가있는 결과가 나오지 않았는데요. 다행히 다음과 같은 글을 발견할 수 있었습니다.

What part of Windows 7 randomly locks executable files?
; http://forums.somethingawful.com/showthread.php?threadid=3313767

해결책은?
"Application Experience" 서비스를 활성화시켜주면 됩니다. 그러고 보니 생각이 나버렸습니다. ^^; 최근 빌드 서버의 메모리 부족으로 어떻게든 가용 메모리를 확보하고자 몇몇 필요없을 것 같은 NT 서비스를 "Disabled" 상태로 바꿔버렸는데 바로 그것이 문제가 된 것입니다.

아무리 그렇다고는 해도... 정말이지 부작용 자체는 지나치게 유별난 것 같습니다. ^^;



donaricano-btn



[최초 등록일: ]
[최종 수정일: 7/19/2010 ]

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)
333정성태7/19/201015711SYSTEM 에 의해서 파일이 잠기는 현상
332정성태6/11/20217339누가 Internet Explorer의 보안을 낮췄을까?
331정성태7/15/201015006네이버우클릭+복사방지 해제방법
330정성태7/12/201016338탐색기에서 끌기(Drag) 동작이 안될 때
329정성태10/18/20109378[종료] Visual Studio 2010 Ultimate with MSDN 구독권 1개를 드립니다. [3]
328정성태7/4/201012762유튜브(Youtube) 동영상을 파일로 저장하는 방법
327정성태6/23/20108733Ho'oponopono
326정성태6/4/201010306쓸만한 노트북 쿨러 추천
325정성태11/25/20138194Pokarekare Ana, You Raise Me Up ...
322정성태5/17/20107702PC 에 먼지 제거하세요. 블루스크린 뜹니다. ^^
321정성태5/18/201011751Youtube(유튜브) 버퍼링 문제 해결 [1]
320정성태5/16/20108234처음 가본 오대산...
319정성태5/16/20109382미국 ‘일하고 싶은 직장 1위’ SAS 가보니…
318정성태5/12/20107839드라마보다 더 드라마틱한 게임 유저들의 이야기 [2]
317정성태5/17/20108083제니퍼소프트 - 제니퍼 닷넷 출시 기자간담회 [2]
316정성태6/11/202119161Windows 7 64비트 + IE 8에서의 알패스 "자동 채움" 동작시키기
315정성태5/8/20108267우리 집 창밖 풍경! [2]
314정성태5/4/201010518Step by Step: "테스트 모드 Windows 7 빌드 7600"가 표시된다
313정성태4/30/20107075The 15 most toxic places to live
312정성태4/30/20106637하이브리드카 사 봐야 본전 뽑기도 어렵다
311정성태4/23/20109378SSD 달린 새 컴퓨터 ^^ [1]
309정성태10/8/202020681ATI Radeon에서 HDMI 연결시 1080p 화면이 축소되는 경우 해결책 [1]
308정성태3/10/20119021[종료] DDR2 2GB 메모리 2개 드립니다.
307정성태4/5/201011598윈도우 7 64비트 환경에서 SoftCamp 키보드 보안 충돌나는 문제 해결 방법
306정성태3/23/20108751DAEMON 설치 실패 - This program requires at least Windows 2000 with SPTD 1.60 or higher.
305정성태3/10/201010966Step by Step: Windows 7에서 숨김 폴더, 파일, 파일 확장명 표시하기
1  2  3  4  5  6  7  [8]  9  10  11  12  13  14  15  ...