광고 자리 모집 중 · 제휴 문의

가상 파일 시스템(VFS) 대 수동 모드 설치 비교: VFS가 순정 게임 파일 손상을 방지하는 원리

365Finds Editorial
Wiki 문서 11,430편 수록

내 AI에서 365 Wiki 사용하기

아래 프롬프트를 복사해 평소 사용하는 AI에 붙여넣고 바로 질문하세요.

전체 Skill 다운로드

먼저 프롬프트로 체험해 보세요. 365 Wiki를 자주 쓴다면 전체 365Wiki Skill을 설치해 매번 붙여넣는 수고를 줄일 수 있습니다. 평소 쓰는 AI가 없다면 Gemini나 Microsoft Copilot 웹 버전도 사용할 수 있습니다.

PC 게임 모드(Mod) 설치의 구조적 문제점

PC 게임 모드 환경은 단순한 텍스처 교체를 넘어 수백 개의 플러그인, 고정밀 3D 모델, 물리 시뮬레이션, 사용자 지정 스크립트가 유기적으로 얽힌 복합 소프트웨어 생태계로 발전했습니다. 초창기 모드 설치 방식은 압축 파일을 해제한 후 게임 설치 디렉터리(예: steamapps\common\Skyrim Special Edition\Data)에 수동으로 파일을 복사하여 원본 파일을 직접 덮어쓰는 수동 설치(드래그 앤 드롭) 방식이 일반적이었습니다.

한두 개의 단순한 모드를 적용할 때는 수동 설치가 직관적이지만, 모드 규모가 커지면 치명적인 시스템 붕괴를 초래합니다. 두 개 이상의 모드가 동일한 베이스 텍스처나 핵심 스크립트를 수정할 경우, 나중에 설치된 모드가 기존 모드와 원본 파일을 영구적으로 파괴합니다. 특정 모드를 삭제하려 해도 어떤 파일이 해당 모드에 속해 있었는지 추적하기 어려워 의존성 오류가 발생하고, 결국 수십~수백 GB에 달하는 게임 전체를 삭제하고 재설치해야 하는 상황에 직면하게 됩니다.

원본 게임 폴더를 완벽한 순정(Vanilla) 상태로 보존하면서 모드를 자유롭게 탈착하기 위해 고안된 핵심 기술이 바로 **사용자 공간 가상 파일 시스템(USVFS)**과 하드링크(Hardlink) 배포 기술입니다.

모드 관리 및 배포 아키텍처 비교 매트릭스

현재 PC 게이머들이 주로 사용하는 4가지 모드 배포 방식의 기술적 특성은 다음과 같습니다:

배포 및 관리 방식게임 원본 폴더 상태파일 충돌 발생 시 처리 방식삭제 및 원본 롤백 편의성다중 드라이브 분산 저장I/O 파일 읽기 성능 오버헤드
수동 덮어쓰기영구적 오염 및 파손파괴적 물리 덮어쓰기(복구 불가)매우 어려움(게임 전체 재설치 필요)모든 드라이브 지원오버헤드 0(네이티브 직접 읽기)
심볼릭 링크(Symlink)수많은 소프트 링크 생성포인터 링크 갱신(비파괴적)비교적 깔끔하나 링크 손상 위험 존재NTFS 필수, 관리자 권한 필요극소(OS가 대상 경로 해석)
하드링크 배포(Vortex)동일한 MFT 레코드를 공유하는 링크 배치배포 시 우선순위 재계산 후 교체스테이징 데이터베이스로 자동 정리동일 드라이브 한정(타 드라이브 불가)오버헤드 0(물리적 디스크 섹터 공유)
가상 파일 시스템(MO2 USVFS)100% 완전한 순정 상태 유지실시간 동적 우선순위 제어체크 해제만으로 즉시 제거 완료타 드라이브에 자유로운 모드 보관 가능프로세스 후킹 주입 시 미세한 오버헤드만 발생

USVFS(Mod Organizer 2)의 내부 동작 원리

Mod Organizer 2(MO2)가 사용하는 USVFS(User-Space Virtual File System)는 디스크의 실제 게임 폴더를 건드리지 않는 혁신적인 가상화 메커니즘을 제공합니다:

  1. Detours 기반 API 후킹 주입: MO2를 통해 게임을 실행하면, 프로세스 초기화 단계에서 핵심 라이브러리인 usvfs_x64.dll이 게임의 가상 메모리 공간으로 즉각 주입됩니다.
  2. 파일 시스템 API 호출 가로채기: 게임 엔진이 Windows API(CreateFileW, FindFirstFileW 등)를 호출하여 Data 폴더 내의 리소스를 읽으려 할 때, 주입된 후크가 해당 요청이 Windows NT 커널에 도달하기 전에 가로챕니다.
  3. 메모리 레벨 동적 경로 재지정: USVFS는 내부의 실시간 모드 우선순위 테이블을 조회합니다. 요청된 파일이 활성화된 모드 폴더(예: ModOrganizer2\mods\HighResTextures\textures\wall.dds)에 존재할 경우, 파일 포인터를 해당 가상 경로로 투명하게 연결합니다. 게임 엔진 입장에서는 파일이 게임의 공식 Data 폴더에 실제로 존재하는 것으로 완벽히 인식합니다.
  4. 순정 환경 보존: 게임 설치 드라이브의 실제 폴더에는 외부 데이터가 단 1바이트도 기록되지 않으므로, 게임은 언제나 공장 출하 초기 상태를 유지합니다.

2분 실전 가이드: 충돌 없는 가상 모드 작업 환경 구축

오류 없이 안전한 모드 환경을 구축하려면 다음 단계를 수행하십시오:

  1. 순정 게임 폴더 무결성 검증: 관리 도구를 설치하기 전, 게임 원본 폴더에 과거의 찌꺼기 파일이 남아 있는지 확인합니다. PowerShell에서 다음 명령을 실행합니다:

    Get-ChildItem -Path "C:\Games\Steam\steamapps\common\[게임폴더명]" -Recurse | Where-Object { $_.Extension -in ".dll", ".asi", ".ini" }
    

    수동 설치로 잔존하는 비공식 후킹 라이브러리가 없는지 확인합니다.

  2. Mod Organizer 2 포터블 모드 설치: 고속 SSD 파티션(예: D:\Modding\MO2\)에 MO2를 설치하고, 설치 방식에서 **포터블 모드(Portable Mode)**를 선택합니다. 이렇게 하면 프로필, 모드 데이터, 다운로드 캐시가 단일 폴더에 집중 보관되어 시스템의 %LOCALAPPDATA%를 어지럽히지 않습니다.

  3. 실행 파일 바로가기 등록: MO2 상단 톱니바퀴 아이콘을 클릭하여 게임 실행 파일과 외부 도구(xEdit, BodySlide, LOOT 등)를 등록합니다. 이후 모든 도구는 반드시 MO2 내부에서 실행해야 합니다. 외부에서 직접 실행할 경우 가상 파일 시스템이 마운트되지 않습니다.

  4. 백신 예외 경로 설정: usvfs_x64.dll의 프로세스 후킹 방식이 디버깅 도구와 유사하여 Windows Defender 등 백신 프로그램이 오진하여 차단할 수 있습니다. MO2 설치 폴더 전체를 백신의 검사 제외 목록에 등록하십시오.

주의 사항: 루트 폴더 설치가 필수적인 스크립트 익스텐더

USVFS는 Data 폴더 내부의 리소스를 완벽하게 가상화하지만, 게임 프로세스가 생성되기 전에 운영체제가 먼저 로드해야 하는 파일은 가상화할 수 없습니다:

365Finds 모드 무결성 및 순정 상태 감사 도구

수백 개의 대규모 모드를 적용하거나 원인 모를 튕김(CTD) 현상을 분석할 때 365Finds 모드 무결성 및 순정 상태 감사 도구를 활용해 보십시오. 본 도구는 공식 배급사의 암호화 릴리스 매니페스트와 로컬 파일을 대조하여 루트 폴더의 불법 인젝션 잔재를 즉시 검출하고, 가상 파일 시스템의 의존성 누락 여부를 정밀 분석하여 안전하고 쾌적한 게임 환경을 보장합니다.