Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

운영체제 종료 후에도 USB 외장 하드의 전원이 꺼지지 않는 경우

그 전에도 한번 원인을 찾다가 포기를 한 적이 있었는데요. 오늘은 왠지, 운영체제 종료 상태의 컴퓨터에 여전히 USB 외장 하드가 동작하고 있다는 그 사실을 더더욱 참기 힘든 기분이 들어 다시 한번 원인 파악에 나섰습니다. ^^

여기서 한가지 특이한 점은, 당연한 소리지만 컴퓨터 전원 플러그를 빼는 식이라면 USB 외장 하드에 전원이 안 들어옵니다. 하지만, 운영체제를 최대 절전 모드(Hibernation) 또는 종료(Shutdown) 메뉴를 선택한 경우에는 PC 자체는 꺼지지만 USB 케이블로 연결된 외장 하드에는 여전히 불이 들어와 있고 HDD가 동작하고 있는 소리가 들립니다.

사실 처음 이 문제를 조사할 때는 윈도우 8.1의 전원 관리 정책이 잘못된 것이 아닌가 싶어 USB 장치 드라이버와 제어판의 전원 부분에만 집중해서 봤었습니다. 물론 혹시나 싶어 컴퓨터 BIOS의 옵션도 대충 살펴봤는데 운영체제 종료 후에도 USB 장치에 전원을 공급할만한 옵션은 찾지 못했습니다.

그래도, 오늘은 맘먹고 아주 자세히 BIOS 옵션을 파헤쳐 보리라 다짐하고... 옵션 하나하나 살펴보았습니다. 오호~~~ 결국 문제의 원인을 찾긴 했습니다. "Power Management" / "ErP"라는 기능인데 이것이 "Disabled" 상태인 경우에 USB 외장 하드의 전원이 지속되었습니다. 그래서 다음 화면과 같이 ^^ "Enabled" 옵션으로 바꾸고 이 문제를 해결했습니다.

usbhdd_not_poweroff_1.jpg

위의 "ErP"에 대한 설명을 보면,

Determines whether to let the system consume least power in S5 (shutdown) state.
Note: When Enabled, the following functions will become unavailable: PME event wake up, power on by mouse, power on by keyboard, and wake on LAN.


라고 하는데, 말 그대로 위의 옵션을 Enabled로 설정한 다음부터는 키보드를 눌러서 전원이 들어오는 기능이 동작하지 않았습니다. 나름 편했던 기능인데, 그래도 운영체제 종료 후에 하드 디스크의 전원이 들어온 상태가 더 불편하므로 "Erp == Enabled" 상태로 놓을 수밖에 없었습니다.




참고로, 제가 사용한 메인 보드는 "기가바이트(GIGABYTE)"입니다.

GIGABYTE GA-Z87-HD3  제이씨현 
; http://www.compuzone.co.kr/form/popup_detail_renew.htm?ProductNo=260054

따라서, 다른 컴퓨터인 경우에는 옵션의 이름이 틀리거나, 아예 해당 옵션이 없거나 또는 USB 외장 하드의 전원이 꺼지지 않는 현상 자체가 없을 수도 있습니다.




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







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

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

비밀번호

댓글 작성자
 



2014-08-21 03시57분
[Lyn] 모든 포트가 다 그런지 확인해보시는것도 좋을듯 합니다.

요즘 최신보드나 노트북은 휴대폰 충전용으로 꺼놔도 USB 포트 하나만 전기가 들어오는 기능이 있거든요
[guest]
2014-08-22 01시13분
@Lyn님 물론 확인해 봤습니다. ^^ 모든 USB 포트 전부 그랬습니다.
정성태
2014-09-16 11시11분
[김영대] 대단하십니다 저도 같은 문제로 찾다찾다 안되서 메인보드 고객지원센터에 전화해보니 적어주신 erp 기능을 가르쳐 주시더라구요 상세한 내용 감사합니다
[guest]

... 61  62  63  64  65  66  67  68  69  70  71  72  [73]  74  75  ...
NoWriterDateCnt.TitleFile(s)
12111정성태1/12/202020549디버깅 기술: 155. C# - KernelMemoryIO 드라이버를 이용해 실행 프로그램을 숨기는 방법(DKOM: Direct Kernel Object Modification) [16]파일 다운로드1
12110정성태1/11/202019875디버깅 기술: 154. Patch Guard로 인해 블루 스크린(BSOD)가 발생하는 사례 [5]파일 다운로드1
12109정성태1/10/202016595오류 유형: 588. Driver 프로젝트 빌드 오류 - Inf2Cat error -2: "Inf2Cat, signability test failed."
12108정성태1/10/202017428오류 유형: 587. Kernel Driver 시작 시 127(The specified procedure could not be found.) 오류 메시지 발생
12107정성태1/10/202018613.NET Framework: 877. C# - 프로세스의 모든 핸들을 열람 - 두 번째 이야기
12106정성태1/8/202019653VC++: 136. C++ - OSR Driver Loader와 같은 Legacy 커널 드라이버 설치 프로그램 제작 [1]
12105정성태1/8/202018143디버깅 기술: 153. C# - PEB를 조작해 로드된 DLL을 숨기는 방법
12104정성태1/7/202019361DDK: 9. 커널 메모리를 읽고 쓰는 NT Legacy driver와 C# 클라이언트 프로그램 [4]
12103정성태1/7/202022494DDK: 8. Visual Studio 2019 + WDK Legacy Driver 제작- Hello World 예제 [1]파일 다운로드2
12102정성태1/6/202018818디버깅 기술: 152. User 권한(Ring 3)의 프로그램에서 _ETHREAD 주소(및 커널 메모리를 읽을 수 있다면 _EPROCESS 주소) 구하는 방법
12101정성태1/5/202019087.NET Framework: 876. C# - PEB(Process Environment Block)를 통해 로드된 모듈 목록 열람
12100정성태1/3/202016561.NET Framework: 875. .NET 3.5 이하에서 IntPtr.Add 사용
12099정성태1/3/202019437디버깅 기술: 151. Windows 10 - Process Explorer로 확인한 Handle 정보를 windbg에서 조회 [1]
12098정성태1/2/202019183.NET Framework: 874. C# - 커널 구조체의 Offset 값을 하드 코딩하지 않고 사용하는 방법 [3]
12097정성태1/2/202017244디버깅 기술: 150. windbg - Wow64, x86, x64에서의 커널 구조체(예: TEB) 구조체 확인
12096정성태12/30/201919898디버깅 기술: 149. C# - DbgEng.dll을 이용한 간단한 디버거 제작 [1]
12095정성태12/27/201921618VC++: 135. C++ - string_view의 동작 방식
12094정성태12/26/201919352.NET Framework: 873. C# - 코드를 통해 PDB 심벌 파일 다운로드 방법
12093정성태12/26/201918929.NET Framework: 872. C# - 로딩된 Native DLL의 export 함수 목록 출력파일 다운로드1
12092정성태12/25/201917674디버깅 기술: 148. cdb.exe를 이용해 (ntdll.dll 등에 정의된) 커널 구조체 출력하는 방법
12091정성태12/25/201919982디버깅 기술: 147. pdb 파일을 다운로드하기 위한 symchk.exe 실행에 필요한 최소 파일 [1]
12090정성태12/24/201920097.NET Framework: 871. .NET AnyCPU로 빌드된 PE 헤더의 로딩 전/후 차이점 [1]파일 다운로드1
12089정성태12/23/201919051디버깅 기술: 146. gflags와 _CrtIsMemoryBlock을 이용한 Heap 메모리 손상 여부 체크
12088정성태12/23/201917991Linux: 28. Linux - 윈도우의 "Run as different user" 기능을 shell에서 실행하는 방법
12087정성태12/21/201918462디버깅 기술: 145. windbg/sos - Dictionary의 entries 배열 내용을 모두 덤프하는 방법 (do_hashtable.py) [1]
12086정성태12/20/201920992디버깅 기술: 144. windbg - Marshal.FreeHGlobal에서 발생한 덤프 분석 사례
... 61  62  63  64  65  66  67  68  69  70  71  72  [73]  74  75  ...