스팀덱 내장 용량이 정체불명의 데이터로 가득 차는 원인
Arch Linux 기반 SteamOS 환경에서는 Windows 게임을 플레이할 때마다 내장 드라이브(eMMC 또는 NVMe SSD) 내에 두 개의 숨김 디렉터리가 필수 생성됩니다. 가상 Windows 레지스트리와 런타임이 담긴 compatdata/[AppID](Proton WINE 프리픽스)와 사전 컴파일된 shadercache/[AppID](Vulkan 및 DXVK 쉐이더 바이너리)입니다. 대용량 게임을 외장 MicroSD 카드에 설치하더라도 이 컴패니언 캐시는 기본적으로 내장 드라이브에 누적되어 수십 GB의 저장 공간을 점유합니다.
| 디렉터리 경로 | 파일 속성 및 내용 | 게임당 평균 용량 | 직접 삭제 가능 여부 |
|---|---|---|---|
compatdata/[AppID] | 가상 C 드라이브, 로컬 세이브 파일, VC++ 런타임 | 500 MB - 3.5 GB | 주의 요망. 스팀 클라우드 미지원 게임의 로컬 세이브 영구 소실 |
shadercache/[AppID] | 사전 컴파일된 DXVK / VKD3D 쉐이더 캐시 | 1 GB - 8 GB | 삭제 가능. 단, 재실행 시 쉐이더 재다운로드 및 초기 스터터링 발생 |
| 고아(Orphaned) AppID | 이미 삭제된 게임이 남겨둔 잔여 프리픽스 | 누적 시 20GB 초과 빈번 | 100% 안전하게 삭제 가능, 현재 게임에 영향 없음 |
1단계: 데스크톱 모드 터미널(Konsole) 용량 분석
전원 메뉴에서 '데스크톱 모드로 전환(Switch to Desktop)'을 선택하고 Konsole 터미널을 열어 용량 점유 현황을 조회합니다:
du -sh ~/.local/share/Steam/steamapps/shadercache/* | sort -h
du -sh ~/.local/share/Steam/steamapps/compatdata/* | sort -h
출력된 AppID 숫자(예: 1091500은 사이버펑크 2077)를 SteamDB에서 검색하여 내장 용량을 가장 많이 차지하는 게임을 특정합니다.
2단계: MicroSD 카드 외장 디렉터리 생성 및 데이터 이동
MicroSD 카드(일반적으로 /run/media/mmcblk0p1/에 마운트됨)로 캐시를 이전합니다:
- MicroSD 내 대상 디렉터리 생성:
mkdir -p /run/media/mmcblk0p1/SteamDeck_ExternalCaches/shadercache
mkdir -p /run/media/mmcblk0p1/SteamDeck_ExternalCaches/compatdata
- 대용량 캐시 폴더 물리 이동(예: AppID 1091500):
mv ~/.local/share/Steam/steamapps/shadercache/1091500 /run/media/mmcblk0p1/SteamDeck_ExternalCaches/shadercache/
mv ~/.local/share/Steam/steamapps/compatdata/1091500 /run/media/mmcblk0p1/SteamDeck_ExternalCaches/compatdata/
3단계: 리눅스 심볼릭 링크(Symbolic Link) 연결
기존 내장 경로를 MicroSD 카드의 새 디렉터리로 투명하게 연결합니다:
ln -s /run/media/mmcblk0p1/SteamDeck_ExternalCaches/shadercache/1091500 ~/.local/share/Steam/steamapps/shadercache/1091500
ln -s /run/media/mmcblk0p1/SteamDeck_ExternalCaches/compatdata/1091500 ~/.local/share/Steam/steamapps/compatdata/1091500
링크 생성 상태를 확인합니다:
ls -ld ~/.local/share/Steam/steamapps/shadercache/1091500
출력 결과에 화살표 기호(-> /run/media/mmcblk0p1/...)가 표시되면 정상 연결된 것입니다.
4단계: Decky Loader의 Storage Cleaner 플러그인 활용
터미널 작업이 익숙하지 않은 사용자는 GUI 플러그인을 활용할 수 있습니다:
- 데스크톱 모드에서 공식 스크립트로 Decky Loader를 설치합니다.
- 게임 모드로 복귀하여 Decky 플러그인 스토어에서
Storage Cleaner를 설치합니다. - 내장 스토리지를 스캔하면 이미 삭제된 게임의 잔여 프리픽스를 자동 분류하여 클릭 한 번으로 수십 GB의 공간을 안전하게 회수할 수 있습니다.