64 비트 운영체제의 시스템 폴더 리다이렉팅 문제(Vista)
게시일: 2008/01/17 | 글쓴이: doa | 9048 번 | 프린트 | 메일


부제1: 32 비트 프로그램에서 시스템 폴더 읽기(XP)
부제2: Total Commander의 x64DisableRedirection 문제

필자는 궁금한 것이 있으면 잠을 자지 못한다. 궁금한 것은 자다가도 일어나서 확인하는 편인데 최근 필자를 괴롭혔던 것은 Config 폴더에서 SAM 파일을 찾을 수 없는 경우라는 팁에서 설명한 세가지였다. 모두 64 비트 운영체제(64 Bit Operating System)에서 보안상의 이유로 32 비트 프로그램이 시스템 폴더에 접근하면 자동으로 %SystemRoot%\SysWOW64 폴더로 리다이렉팅하기 때문에 발생한 문제였다.

64 비트 운영체제에서 시스템 폴더(%SystemRoot%\System32)를 리다이렉팅하는 문제는 필자의 이전 팁, 64 비트 운영체제의 시스템 폴더 리다이렉팅 문제(XP)를 이용하면 부분적으로 해결할 수 있다. 이 팁은 XP(Windows XP)와 비스타(Windows Vista) 모두 사용할 수 있는 팁이기 때문에 굳이 이 팁을 쓸 필요는 없지만 비스타에서는 하위 호환성을 위해 링크 폴더를 많이 사용하며, 이 링크 폴더를 관리하기 위해 별도의 명령을 제공한다. 이 명령에 대한 자세한 설명은 필자의 다음 팁, 비스타에서 심볼릭 링크 만들기를 참조 하기로 하고 여기서는 64 비트 비스타에서 시스템 폴더를 접근하기 위해 이 명령을 사용하는 방법만 설명하겠다. 절차는 다음과 같다.

  1. 시작/cmd를 입력하고 엔터 키를 친다. UAC를 끄지 않은 사용자는 시스템 관리자의 권한으로 실행하기를 참조해서 실행한다.
  2. 명령행에서 다음 명령을 실행한다.
    따라하기
    %SystemDrive%
    cd %SystemRoot%
    mklink /j System64 %SystemRoot%\System32
    dir /al

비스타에서는 하위 호환성을 위해 링크 폴더를 활용하기 때문에 dir /a 옵션에 링크를 확인할 수 있는 l 스위치가 추가되었다. 그림을 보면 알 수 있지만 mklink에 의해 만들어진 링크(디렉토리 교차점)은 JUNCTION으로 표시된다.

남은 이야기 비스타는 기존의 XP에 비해 바뀐 부분이 많다. 비스타의 폴더 구조에서 다시 설명하겠지만 바뀐 것은 폴더 구조도 마찬가지이다. 한 예로 XP에서 사용자 프로필은 Documents and Settings\%UserName%에 저장되었지만 지금은 Users\%UserName%에 저장된다. 비스타용 프로그램은 사용자 프로필 폴더로 Users를 사용하지만 이전에 작성된 프로그램 중 환경변수를 이용하지 않는 프로그램은 Documents and Settings\%UserName%에 데이타를 쓰게된다.

이처럼 이전 운영체제에서 동작하는 프로그램이 비스타에서도 동작(하위 호환성)할 수 있도록 비스타는 Documents and Settings 폴더를 링크 폴더로 만들어 두었다. 재미있는 것이 이 폴더는 Windows 탐색기로는 접근할 수없으며, Total Commander로 접근하면 자동으로 Users 폴더로 바뀐다는 점이다. 상위 버전에서 하위 버전의 프로그램이 돌아갈 수 있도록 하는 것은 하위 호환성이라고 한다.



소프트 링크와 하드 링크 링크(Link)라는 개념은 Windows 사용자에게는 상당히 낯선 개... (13333) 2008-01-17
64 비트 운영체제의 시스템 폴더 리다이렉팅 문제(XP) 부제1: 32 비트 프로그램에서 시... (6485)2008-01-17

QAOS.com에 게시된지 1년 이상된 자료와 관리자가 공개한 자료는 누구나 제한없이 읽을 수 있습니다.
그러나 QAOS.com의 자료를 퍼가는 것은 금지하고 있습니다.

이 정보가 유용하다고 생각되시면 QAOS.com과 많은 다른 사람들을 위해 퍼가기 보다는 링크로 알려주시기 바랍니다.

세상사는 이야기



RSS 구독 (익명 | 회원 | 강좌 | 포럼)
(C) 1996 ~ 2017 QAOS.com All rights reserved.