본문 바로가기

디스크와 파티션

내 컴퓨터에 연결되는 모든 USB 메모리를, 또는 특정 USB 메모리만 읽기 전용 상태로 연결하기

특정 USB 메모리를 읽기 전용으로 연결되게 만들기

여러 개의 USB 를 가지고 있고 그 중에 특정한 USB 메모리만 읽기 전용으로 연결되게 만드려면 DiskPart 를 통해 USB 메모리의 디스크에 읽기 전용 특성을 설정하면 됩니다. 해당 작업은 DiskPart - Attributes 명령을 통해 이루어지며 작업은 아래와 같이 진행하시면 됩니다.

01. 먼저 USB 메모리를 시스템에 장착합니다.

02. USB 메모리의 드라이브 명에 맞춰 다음의 DiskPart 명령을 내려줍니다. [예로 G: 드라이브라면]

diskpart
select volume=G
attributes disk set readonly



03. USB 메모리를 시스템에서 분리했다가 다시 연결합니다.

DiskPart 에서 볼륨을 선택하면 해당 볼륨에 해당하는 파티션, 해당 볼륨이 포함된 디스크까지 모두 동시에 선택됩니다. 고로 디스크에 관한 작업이지만 볼륨을 선택하여도 됩니다.

반대로 읽기 전용 특성을 해제하는 명령은 attributes disk clear readonly 입니다.


그러면 아래와 같이 해당 USB 메모리에 읽기 전용 특성이 부여되고 쓰기가 금지되는 것을 확인할 수 있습니다.



참고로 해당 특성은 해당 설정을 부여한 컴퓨터에서만 적용됩니다. 즉, 해당 USB 메모리를 다른 컴퓨터에 장착하면 읽기 전용 특성은 적용되지 않습니다.




내 컴퓨터에 연결되는 모든 USB 메모리를 읽기 전용으로 연결되게 만들기

DiskPart 를 통한 방법은 개개의 USB 메모리에 따로 적용을 해야 합니다. 이와는 달리 내 컴퓨터에 연결되는 모든 USB 메모리를 읽기 전용 상태로 연결되게 만들 수도 있습니다. 이는 레지스트리를 통해 설정할 수 있으며 해당 레지스트리는 아래와 같습니다.

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\StorageDevicePolicies]
"WriteProtect"=dword:00000001



이 때 StorageDevicePolicies 키는 기본적으로 존재하지 않기 때문에 생성해준 후 해당 키에 DWORD 값으로 WriteProtect 를 생성하고 값 데이터로 1 을 넣으시면 됩니다. [0 - 쓰기 가능, 1 - 읽기 전용] 그러면 시스템에 연결되는 모든 USB 메모리가 읽기 전용 상태로 연결이 됩니다.

이제 해당 값 데이터를 0 으로 바꿔주거나 키 자체를 삭제해버리면 다시 원래대로 쓰기가 가능하고요. 간단하죠? 참고로 해당 레지스트리는 시스템을 재부팅해해야 변경된 내용이 적용됩니다.



해당 작업을 좀 더 쉽게 할 수 있도록 간단하게 배치 파일을 만들어 봤습니다. 참고로 아래 단락의 내용까지 함께 적용된 배치 파일입니다.







내 컴퓨터에서는 USB 메모리를 사용하지 못하도록 막기

앞의 내용들에 더해 시스템에서 아예 USB 메모리를 사용하지 못하도록 만들 수도 있습니다. 이것 또한 레지스트리로 설정할 수 있으며 해당 레지스트리는 아래와 같습니다.

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR]
"Start"=dword:00000004



Start 값이 3 이면 정상 인식, 4 면 인식 불가입니다. 마찬가지로 설정 후 시스템을 재시작해야 적용되며, 4 로 설정하게 되면 시스템에 USB 메모리를 연결하더라도 USB 를 인식하지 않습니다. 즉, USB 메모리 자체를 아예 사용할 수 없게 만드는 겁니다.

이번 글은 여기까지 입니다. ^^