Microsoft MVP성태의 닷넷 이야기
SYSTEM에 의해서 파일이 잠기는 현상 [링크 복사], [링크+제목 복사]
조회: 21249
글쓴 사람
정성태 (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" 상태로 바꿔 버렸는데 바로 그것이 문제가 된 것입니다.

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







[최초 등록일: ]
[최종 수정일: 6/27/2021]

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)
175정성태10/6/200714702BBC 뉴스를 파일로 녹음하는 방법 [2]
174정성태10/3/200712744x64 비스타에서 YBM 폰트 설치
172정성태10/1/200713671The Secret [2]
171정성태9/28/200711868구글의 차세대 사업 승부수는 ‘3D 가상현실’(?) [1]
170정성태9/28/200712411정작 마이크로소프트 스스로는 .NET Framework 을 얼마나 적용하고 있을까? [2]
169정성태9/20/200711862SyncToy 1.4와 비스타 64비트에서의 문제
166정성태9/7/200712334텍스트 편집기로서의 Visual Studio 사용 [2]
165정성태8/27/2007115456.4GB 하드 2개 처분
164정성태8/20/200712998D820 지문 인식 드라이버 - Vista x64
163정성태7/30/200712261에버런 출시일 8월 20일 [4]
162정성태7/18/200712454SSD(Solid State Drive) 의 성능 향상이 얼마나 될까? [2]
161정성태7/18/200712061Vista for x64에서의 페이징 파일 관리 문제
160정성태7/18/200712785지름의 자세가 이 정도는 되어야.
159정성태7/18/200715392D820 - 그래픽 카드 오버 클럭
158정성태7/12/200712873고민... 고민... UMPC... [4]
157정성태7/10/200712907주당 16시간 일하기
156정성태7/8/200713388Vista와 KTF iPlug: 메시지 관리
155정성태6/28/200711988백업! [1]
154정성태6/19/200712775Summer Nights
153정성태6/17/200712309내 직업...! [2]
152정성태6/15/200712056한글 IME 쓰는 방법.
151정성태6/15/200711744끌리는 UMPC들...
150정성태6/11/200711575donga.com[뉴스]-‘중퇴생’ 빌 게이츠 32년 만에 졸업장
149정성태6/10/2007120596.4GB 하드 2개 및 단면 512MB 메모리 처분
146정성태5/26/200711988일반인을 위한 프로그래밍
145정성태5/18/20071367222" LCD 모니터 사용 [4]
1  2  3  4  5  6  7  8  9  10  11  12  13  14  [15]  ...