아마도 USB 또는 C 드라이브의 용량이 적은 공간으로 하여 Windows7을 설치하신 분들이 있을겁니다.
16GB짜리 USB에 윈도우를 설치하는 도전을 저질러버린 저는 용량 증가에 대한 필요성을 느꼈고, 윈도우를 다른 하드에 통으로 옮겨버리는 생각까지 했습니다.
근데 그럴 필요까진 없다는 걸 알고 프로그램 파일 폴더를 바꿔버리자는 것입니다.

따라오시면 잘 하실 수 있습니다~!!

OS를 가상하드(VHD)에도 만들수도 있으므로 자동연결은 맨 아래쪽을 참고하여, 알맞게 편집을 해주세요.
(단, Windows 7 Ultimate&Enterprise, Windows Server 2008 R2 버전인 경우만 해당)


그럼 시작해볼게요^^

윈도우+R키를 눌러 regedit을 입력후 엔터

다음 위치를 따라갑니다.
 [ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion ]

주의하실점은 여기서 CurrentVersion 아래로 가지 마시고 꼭꼭꼭. CurrentVersion 이넘을 클릭 해주세요!
그러면 옆에 "ProgramFilesDir" 이 있을겁니다.

눈치빠르신분들 이미 어찌 해야할찌 알고 계시겠죠? ㅎㅎ
네! "C:\Program Files" 이런식으로 되어있던 값에 원하시는 다른 값을 입력하여 주면 됩니다.
(단, 윈도우 있는 위치에다가는 하지마세요!)

지금 내용은 선택사항에 대한 내용으로 가상하드(VHD)로 하시려면 먼저 가상하드를 윈도우 시작할때
연결되게(Attach) 해야하는데 그걸 안내하여 드릴 겁니다.

먼저 첨부파일 다운로드 해주시고요, 편집을 해주세요!

편집화면을 보시면 아래와 같습니다. 자신의 PC환경에 따라 빨간색부분만 편집해 주시면 됩니다.
(VHD파일과 그 위치를 적어주시기 바랍니다.)

###################################################################################
@echo off
echo.                 
echo.                  이 창을 닫지 마세요!
echo.               완료되면 자동으로 닫힙니다.
echo.              프로그램을 확인하는 중입니다.
echo.                  잠시 기다려 주십시오.
echo.                 
echo.                       확인중...

:: -------- 환경변수 정의 --------------------------------------

setlocal

if "C:\Win7VHD.vhd"=="" goto error
set TMP_VFILE="tmp_diskpart.txt"


:: -------- 이하 diskpart에서 vhd 연결 명령 --------------------

echo sel vdisk file=C:\Win7VHD.vhd  > %TMP_VFILE%
echo attach vdisk  >> %TMP_VFILE%
echo list vdisk   >> %TMP_VFILE%
echo list disk   >> %TMP_VFILE%
echo list partition  >> %TMP_VFILE%
echo detail vdisk  >> %TMP_VFILE%

:: -------------------------------------------------------------

diskpart /s %TMP_VFILE%
del %TMP_VFILE%
goto exitt

endlocal

pause > nul
goto :eof

:error
echo. & echo error : VHD 파일이 선택되지 않음
pause > nul

:exitt
echo exit

####################################################################################

편집이 종료되면 저장하세요.

그리고 다시 윈도우+R키 눌러서 "gpedti.msc" 를 실행합니다.

 [
사용자 구성 > Windows 설정 > 스크립트 (로그온/로그오프) > 로그온 클릭 ] 으로 이동하고 추가를
눌러줍니다. 그다음 아까 편집했던 cmd파일을 찾아 선택하고 확인을 눌러주세요!

로그온 해보시면 VHD가 연결된답니다~~~~ (>_<)

AND

USB 쓰기 방지 해제



어느날 USB 메모리를 사용하다가 쓰기 방지가 걸려 있어서 USB에 데이터를 저장하지 못하는 경우가 발생할 수 있다. 특정 USB 메모리, SD 카드 등에는 예전 플로피디스켓처럼 쓰기 방지가 가능하도록 버튼이 있는 경우가 있다. 이러한 경우에야 당연히 해당 하드웨어의 버튼을 이동시킴으로써 쓰기 방지를 설정/해제 할 수 있다.

문제는 잘 사용하던 USB 메모리가 어느날 쓰기 방지가 되어 파일을 쓰려고 하면 다음과 같은 경고 다이얼로그가 뜨는 점이다. 또한 다른 컴퓨터에서는 잘 되는데 유독 내 컴퓨터에서만 쓰기 방지가 되어 있다. 이런 경우에는 운영체제에서 지원하는 저장장치의 쓰기 방지 매커니즘 때문이다.


 
USB 자체가 아닌 운영체제 단에서도 저장장치에 쓰기 방지를 할 수 있다. 쓰기 방지 설정은 레지스트리의 키 값을 변경하여 가능하다.

  • Key : HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\StorageDevicePolicies
  • Value : WriteProtect
  • Data : 0x00000001 (쓰기 방지 설정) // 0x00000000 (쓰기 방지 해제)



해당 키를 잘 살펴보면 저장장치의 정책을 설정하는 항목이다. 그곳의 쓰기 방지 값을 설정하느냐 해제 하느냐인데 그렇다면 하드디스크 또한 저장장치의 하나이기 때문에 쓰기 방지가 되는 것이 아닐까 의문이 들게 되었다. 하지만 하드디스크는 정상적으로 동작을 하였다. 실험한 결과 해당 레지스트리 값을 변경시키게 되면 운영체제에 마운트 되는 새로운 저장장치에 해당 정책이 적용된다는 점이다. 따라서 하드디스크 또한 새롭게 마운트 시킨다면 쓰기 방지 정책이 적용된다.

이 문제를 해결하기 위해 관련 내용을 찾던 중 다른 문제의 쓰기 방지를 해제하는 방법들이 있어 정리해 보았다.

  1. 보안소프트웨어들 중(하드디스크 보안관 처럼) 쓰기 방지를 설정할 수 있는 제품들이 있을 경우 해당 쓰기 방지 정책을 해제한다.
    ※단, 이 경우는 해당 보안 소프트웨어의 설정을 위한 dll 파일을 메모장으로 열면 레지스트리 설정값을
       확인 할 수 있으니 변경되는 부분을 레지스트리 편집기에서 찾아 수정한다.
  2. 해당 저장장치 외부에 락(LOCK)을 걸수 있는 스위치 확인하고 알맞게 설정한다. 
  3. 메모리 카드 접점 부분에 먼지가 쌓여있는 경우 안될 수 있으니 다른 슬롯이나 해당 부분을 몇번 쑤신 후 해보세요.
  4. 특정 usb 메모리는 메모리 자체에 포함된 소프트웨어가 락을 지원하는 경우도 있으니 확인해 보자.

기타 정보
※ 보안 소프트웨어에 언급했던 사항에 대해 좀 더 부가설명을 하자면, 내가 작성한 글 'regedit ...'
(http://noose.tistory.com/admin/entry/edit/20) 이 곳을 확인하면 레지스트리 편집기에서 구성하는 키를
확인 할 수 있으며, 해당 키 값을 찾으면 그 아래쪽으로 소스값에 해당 되는 부분을 변경하도록 설정한 값을
내가 원하는 값으로 변경하면 된다.
 
AND

최근 윈도우즈 7 사용자가 많아지고 있어 그에 따라 IE8을 사용하는 분들의 수가 상당수 증가하고 있습니다.

 

IE 8을 사용하는 경우 ActiveX 설치에 관련되어서 아래의 스크린 샷과 같은 오류 메세지가 자주 보이는데요.

 

 

위 같은 내용은 IE8의 온라인 보호기능 때문에 발생합니다. 아래 [해결방법]으로 해결해보세요^^

 

[해결방법]

IE에서 "도구 -> 인터넷 옵션" 또는 "IE 아이콘 우클릭 -> 속성"  -> 고급탭 -> 설정 -> 보안 -> 온라인 공격 방지를 위해 메모리보호 [체크해제] 를 진행하신 후 익스플로어를 재실행하세요.

(해당 내용은 익스플로어가 하나 또는 띄워지지 않은 상태에서 하시는게 바람직합니다.)


 (빠른 이해를 위해 스크린샷을 첨부합니다.)

AND

[ 단축키 모음(Win7 외에도 지원되는 것들이 있음) ]

Win + D : 바탕화면보기
Win + M : 모든창 최소화(바탕화면보기와 비슷)
Win + Space : 오픈된 창을 유지한채로 바탕화면 보기
Win + ↑ : 오픈된 창 최대화
Win + ↓ : 오픈된 창 기본크기
Win + 1,2,3... : 작업표시줄내 고정된 프로그램 순서대로 실행
Win + PauseBreak : 시스템정보창 실행(내컴퓨터 속성과 동일)
Win + Tab : 3D Areo Flip(3D 창전환)
Win + E : 탐색시 실행
Win + R : 실행창 실행
Win + F : 찾기(검색)창 실행
Win + L : 사용자 전환

Ctrl + Shift + ESC : 작업관리자 실행

AND

** 참고 사항 **
◈ "bcdedit" 명령어의 경우 관리자 권한의 실행 커맨드 창에서 이용할 수 있어
     XP 사용자의 경우는 명령어를 사용할 수 없음 ◈

각각의 OS로 부팅하지 않고 Win 7에서 Vista 또는 XP에 해당 하는 내용을 수정하거나
Vista 에서 Win 7의 내용을 수정하는 것도 가능.
 
[ bcdedit ] 입력하면 현재 BCD의 구성상태가 출력되고, 그 화면에서 Vista나 Win 7의 GUID를
알아낸 다음 아래 내용을 참고하여 작업하면 수월함

위 명령어 입력 후 출력된 bcd구성에서 "identifier" 라는 항목을 확인하면 GUID 확인 가능


** 옵션에서 가리키는 내용 **
set : 엔트리 수정/추가/삭제 등 설정할 때 사용
store : 새로운 bcd 를 생성하기 위해 사용
copy : 엔트리를 복사 하기 위해 사용
default : 기본값 설정 및 출력할 때 사용
delete : 엔트리 삭제(끝부분에 /cleanup 옵션 사용할 것)를 위해 사용
description : 부팅시 출력되는 텍스트 수정시 사용
displayorder : 부팅 메뉴 출력 순서 변경시 사용

{ntldr} : XP가 지정된 부팅로더
{current} : 현재 작업하고 있는 OS 부팅로더



1. XP 설치 후 Vista 또는 Win 7 에서 "이전 버전의 Windows" 라는 문구 변경

 ▶ Vista 또는 Win 7로 부팅하신 다음 관리자 권한의 명령 프롬프트를 실행하시고 아래처럼 입력       ("" 안쪽은 원하는 이름 입력)
 
   [ bcdedit /set {ntldr} description "Windows XP Professional SP3" ]
 


 
2. Vista 또는 Win 7 을 설치 후 해당 OS의 이름을 편집
 
 ▶ 수정을 원하는 해당 OS로 부팅한 다음 아래와 같이 입력(""안쪽은 원하는 이름을 입력)

   [ bcdedit /set {current} description "Windows 7 Ultimate K x64" ]


 
3. Vista 또는 Win 7 중 하나가 부팅메뉴로 출력되지 않을때 BCD엔트리를 추가
 
 ▶Win 7 은 부팅 가능하며 Vista 가 부팅 불가능인 경우로 가정하고 순서대로 진행
 
   [ bcdedit /copy {current} /d "Windows Vista Ultimate K SP2" ]
 
   엔트리가 {current}를 기반으로 복사되어 새로 생성되면서 GUID가 출력되며,
   해당 GUID를 기억해두시고 아래와 같이 입력


   [ bcdedit /set {반환 GUID} device partition=E: ]
    ->GUID 를 기반으로 파티션 E 에 정보가 저장되어있음
 
   [ bcdedit /set {반환 GUID} osdevice partition=E: ]
    ->GUID 를 기반으로 파티션 E 에 해당 OS가 저장되어있음

 

4. BCD를 새로 작성 및 엔트리를 추가하는 방법

  ▶ "X:\test\boot\" 에 새롭게 생성하기(한글사용)
   [ bcdedit /store x:\test\boot\bcd /set {bootmgr} locale ko-kr ]

  ▶ "X:\test\boot\" 에 생성한 bcd 에서 디폴트가 한글로 사용되게 설정
   [ bcdedit /store x:\test\boot\bcd /set {default} locale ko-kr ]

  ▶ 디폴트로 지정된 엔트리의 메뉴 출력을 "Windows 7 x86" 로 변경
   [ bcdedit /store x:\test\boot\bcd /set {default} description "Windows 7 x86" ]

  ▶ 디폴트 엔트리를 부모로 "복구모드" 라는 메뉴로 출력되는 엔트리를 생성(종료시 GUID 반환)
   [ bcdedit /store x:\test\boot\bcd /copy {default} /d "복구모드" ]

  ▶ 반환된 GUID를 가지고 bcd 설정을 함.(2단계 모두 적용해야 함)
   [ bcdedit /store e:\win7\boot\bcd /set {반환 GUID} device ramdisk=[boot]\wim파일경로,{7619dcc8-fafe-11d9-b411-000476eba25f}
   [ bcdedit /store e:\win7\boot\bcd /set {반환 GUID} osdevice ramdisk=[boot]\wim파일경로,{7619dcc8-fafe-11d9-b411-000476eba25f}

 
5. 부팅OS 선택 시간 바꾸기
 
  ▶ 기본 지정 시간은 30초로 되어 있으며, msconfig에서 지정 가능하나 여기서도 수정이 가능함
     (숫자가 지정되는 부분을 자신에 맞게 설정하면됨, 초단위로 설정됨)
 
   [ bcdedit /timeout 20 ]
 


6. 디폴트값 지정하기(기본 부팅 OS 세팅)
 
  ▶ XP를 디폴트로 지정
 
   [ bcdedit /default {ntldr} ]
 
 
 
  ▶ 현재 작업하고 있는 OS를 디폴트로 지정
 
   [ bcdedit /default {current} ]
 
 
 
  ▶ 위 두가지 모두 적용되지 않는 OS를 지정(GUID 필요)
 
   [ bcdedit /default {반환 GUID} ]
 

 
7. 부팅 메뉴 출력되는 순서 변경하기
 
  ▶ 화면에 표시되는 메뉴를 1번 Win 7 / 2번 XP 로 출력되도록 하는 경우
     (추가적이거나 변경시는 순서대로 넣어주면 가능함)
 
   [ bcdedit /displayorder {current} {ntldr} ]
 


8. 부팅메뉴에서 항목 삭제하기
 
  ▶ 필요없는 메뉴가 부팅항목에 남아있을 경우 아래와 같이 삭제할 수 있음.

   ->XP에서 Win7 업글 후 XP가 남아있을때 삭제하려는 경우  

    [ bcdedit /delete {ntldr} /cleanup ]
AND