글 쓰기전.. 일단 모두 새해 많이 받으세요!!

꽤 전에 작성했던 글에서 Asus eee pc 701에 윈도우 비스타를 서비스팩1을 통합한 비지니스KN버전

으로 설치후 790MB가량의 용량이 남는것을 확인했었습니다. 그때까지는 이정도면 좀 부족하긴

하지만 어짜피 SDHC등의 외장기기를 더 많이 의존해야되는것이 701의 현실이기 때문에 별 상관

없다고 생각했었죠. 몇일전 갑자기 제가 가진 701에 비스타를 메인으로 써보고 싶다는 생각이

들어서 vLite를 사용해 비스타를 최대 경량화 시키고 설치를 해봤습니다. 결과부터 말씀드리면

'못써먹겠다.' 인데 일단 체감속도면에서는 에어로 기능을 사용할수 없는것을 제외하고 상당히

빠른편 입니다. *(설치시간은 상당히 오래 걸립니다. 2~2.5시간정도 소요됩니다.)

기본으로 OS설치후 두가지정도의 악성코드 감시툴, 안티바이러스를 설치하고 대부분의 서비스가

로드되있는 상태에서도 작업하기에 큰 불편함은 없더군요. 하지만 윈도우 업데이트후 문제가

발생하기 시작했습니다. 서비스팩1 이후에도 각종 보안업데이트들이 추가로 업데이트 되는데 사실

이것들은 설치한다고 해서 많은 용량을 차지하지는 않습니다. 하지만 문제는

바로 Windows폴더내의 WinSxS 폴더였습니다.

사용자 삽입 이미지

메인OS로 쓰이는 비스타의 winsxs폴더입니다. 가장 크게 용량을 잡아먹고 있습니다.

Winsxs폴더는 윈도우 XP때부터 적용된 기술인 Side by side assembly 라는 기술이 적용된

결과물인데 간단히 win32용 프로그램에 대해 호환성을 높히기 위해 DLL파일들의 하드링크가

적용된것으로 생각하시면 되겠습니다. 어쨋든 이 폴더는 어플리케이션을 설치할수록 조금씩

용량을 잡아먹게 되는데 지금은 Eee pc 701에서 비스타를 지워버리고 xp로 돌아왔기때문에

캡쳐해둔 사진이 없습니다만 1.2GB정도의 용량을 잡아먹고 있었습니다. 문제는 4GB밖에 안되는

메인드라이브에서 1.2GB를 먹어버리는 winsxs폴더때문에 업데이트를 모두 설치한뒤의 용량이

50MB정도만 남아버리는 사태가 발생했습니다. 물론 xp때부터 winsxs가 존재했지만 이제껏

신경쓸일이 없었는데 이번에 701에 설치하면서 톡톡히 경험하게 됐네요. 해외나 국내의 비교적

저용량 SSD를 사용하는 유저들이 이 WinSxS폴더를 다른 파티션에 이동해서 사용하는것을 봤는데

이 방법은 여러기술문서들을 보면 추천하는 방법은 아니라고 합니다. 특히 윈도우 업데이트시

문제가 발생할수 있다고 하네요. 하지만 어느정도의 문제점을 떠안고라도 Eee PC 701의 경우

SDHC등으로 필히 옮겨줘야 하는 폴더가 바로 이 WinSxS입니다. 아래에 제가 시도했던 WinSxS

폴더 옮기기에 대해 자세히 적겠습니다. 여러 블로그등에서 기술하고 있지만 좀더 자세히

덧붙혔습니다. 아래가 원문이고 빨간글씨나 캡쳐화면은 제가 덧붙힌 내용입니다.

* 모든 과정은 관리자 콘솔창에서 이뤄짐을 가정한다. (UAC를 사용하는 경우에는 콘솔창을 '관리자 권한으로 실행'하면 된다)

준비물
MoveFile / PendMoves
MoveFile: 파일 이동을 다음 부팅시로 스케줄링하여 시스템 파일등을 이동할수 있게 해줌
PendMoves: MoveFile로 스케줄된 작업 내역을 조회

1.WinSxS 디렉토리의 소유자를 현재 로그인된 사용자로 변경하고 모든 권한을 준다

소유자 변경: takeown /r /f C:\Windows\WinSxS
모든 권한 부여: icacls C:\Windows\WinSxS /grant username:F /t


(현재 로그인된 사용자로 권한을 변경해도 비스타에서는 administrator계정이 아니면 실패하는 경우가 많습니다. 모든권한을 사용할수 있는 administrator계정으로 시도해야합니다.)

(위와 같이 꼭 takeown명령을 커맨드창을 통해 하지 않아도 됩니다. 아래와 같이 최고관리자 계정하에서 작업해도 됩니다.)

사용자 삽입 이미지
windows폴더의 winsxs폴더에서 마우스 오른쪽버튼을 클릭해 등록정보를 보고
보안탭으로 이동합니다.
사용자 삽입 이미지
위의 원표시에 체크를 해줘서 모든권한을 획득합니다. Administrator에게 적용합니다.
System에 적용하면 부팅이 안될수 있습니다.

2. 같은 파티션 내에 1차로 옮길 디렉토리를 만들어둔다
(다음 단계에서 링크를 만들기 위해 임시로 만드는 것임)
ex) C:\WINDOWS> mkdir winsxs.moved

3. 옮길 디렉토리에 대한 링크(junction) 디렉토리를 만든다
ex) C:\WINDOWS> mklink /j winsxs.link winsxs.moved

4. 2번에서 임시로 만든 디렉토리를 지운다
ex) C:\WINDOWS> rd winsxs.moved
 
5. movefile을 이용하여 WinSxS 디렉토리 이동을 스케줄해둔다
ex) C:\WINDOWS> movefile winsxs winsxs.moved
(movefile이나 pendmoves파일은 작업의 편의를 위해 windows/system32나 루트디렉토리로
옮기는것을 추천합니다.)


6.다시 movefile을 이용하여 3번 단계에서 만들었던 링크 디렉토리를 WinSxS로 바꿔치기한다
ex) C:\WINDOWS> movefile winsxs.link winsxs

7. pendmoves를 통해 스케줄링이 잘 돼있는지 확인해본 뒤, 재부팅
(pendmoves를 실행해주면 됩니다.)

8. 여기까지 잘 됐다면 원래 있던 WinSxS는 링크디렉토리가 되어있고 실제 파일들이 있는
원본 디렉토리를 가리키고 있을 것이다 이제, 원본 디렉토리를 원하는 다른 파티션 or 드라이브로
복사한다

(안에 있는 파일들이 사용중일 것이므로 이동은 안될것이다. 암튼 이건 탐색기로 하는게 편할듯)
(원본 디렉토리는 Winsxs.moved를 의미합니다. 이를 복사뒤에 winsxs로 이름을 바꿔줍니다.
매우 중요한 부분으로 실수할경우 블루스크린과 함께 부팅이 되지 않습니다. 새벽에 비몽사몽한
가운데서 제가 실수한 부분..ㅡㅡ;)

8. 링크 디렉토리를 지우고 새 위치를 가리키도록 다시 만든다
(링크 디렉토리는 단축아이콘처럼 되있는 winsxs 폴더를 의미합니다.드라이브명은 자신이 옮길
드라이브명으로 지정해줍니다.)

ex) C:\WINDOWS> mklink /j winsxs d:\winsxs

9. 재부팅하고 링크 디렉토리가 잘 되는지 확인(들어가 보거나 dir을 해보거나..) 한다
이상 없으면, 이제 지겨운 원본 디렉토리를 지운다!
ex) C:\WINDOWS> rd /s/q winsxs.moved
 
사실, 링크와 스케줄링을 통한 간단한 방법인데 영 설명이 복잡한것 같긴 하다. 아마도 원본 디렉토리를 미리 복사해두고 파티션내에서 이동한 다음 링크 조작을 해도 무방할 것 같다.

p.s.> WinSxS 외에도 Windows\SoftwareDistribution, Windows\System32\DriverStore\FileRepository 같은 비만 디렉토리도 같은 방법으로 옮겨버릴 수 있다

.

위와 같은 방법으로 하드링크된 winsxs폴더를 옮겨 상당한 양의 용량 확보를 할수 있지만 SDHC의

속도가 좋지 않다면 부팅이나 시스템종료 시간이 약간 더뎌집니다. 저는 위와같이 해봤지만 과연

이렇게 까지해서 비스타를 사용해야 할까 싶다는 생각이 들더군요. 윈도우7에서는 가상화 기술을

통해 하위호환성을 지원한다고 하니 이런 용량낭비는 줄어들듯 싶습니다. 그래도 이런 짜증나는

트윅을 통해 비스타를 쓰고싶지는 않더군요. 그래서 바로 XP로 돌아와버렸습니다. XP는 이것저것

다 설치하고 VMware 6.0까지 설치해도 1GB정도의 용량이 남더군요.. 물론 XP도 따로 Eee PC

전용으로 만들어둔 XP SP3 Lite버전입니다. 어쨋든..이렇게 winsxs폴더를 옮긴다고해도 업데이트

를 설치할때나 각종 어플리케이션이 깔리게 되면 옮겨둔 winsxs폴더용량도 계속해서 증가할

것입니다. 최근에 출시된 넷북들에는 비교적 큰용량의 HDD나 SSD가 설치되있는데(40~80GB)

그렇다고 해도 비스타를 사용하다보면 용량에 허덕일듯 싶네요. 어찌보면 제가 작성한 글에 대해

일관성 없는 모습을 보이는지 모르겠지만 넷북 제조업체들에서도 아예 비스타를 뛰어넘고

윈도우7을 내장한 넷북을 출시할 계획이 있는것으로 봐서는 비스타를 넷북에서 사용하는것은

좋은 선택은 아닌듯 싶습니다. 근데 XP를 넷북에서 사용하는것에 대해 기술지원 중단소식때문에

망설이시는 분들이 많은데 흔히들 알고계신 XP의 기술지원 중단시기가 다음과 같습니다.

일반지원 : 2009년 4월 14일
연장지원 : 2014년 4월 8일


일반지원과 연장지원의 차이점은 간단히 일반지원의 경우 현재 이뤄지고 있는 모든 종류의

윈도우 업데이트 지원을 뜻하고 연장지원은 비지니스, 개발제품에 대한 지원을 의미합니다.

연장지원의 경우 비보안 핫픽스의 경우 업체에서 요구하는경우 MS측에서 일정금액을 받고

업데이트가 이뤄지게 됩니다만 윈도우7이 비스타와 같이 넷북에서의 에로사항이 많지 않다면

쓸데없이 제조업체에서 막대한 비용을 소모하진 않겠죠. 여하튼 일반사용자의 경우 여러 생각할

필요없이 연장지원 기한인 2014년까지 보안업데이트를 지원받을수 있습니다. MS에서도 갈수록

한 OS의 사용기간이 늘어나는것을 인지하고 이와같은 결정을 내렸다고 볼수 있겠네요. 결론은

넷북에서는 그냥 윈도우XP씁시다! 라고 하고싶습니다.