컨테이너가 중지된 후에도 다른 프로세스, 마운트 네임스페이스, 바인드 마운트, 전송 작업 또는 중첩 서브볼륨이 Btrfs 스냅샷을 계속 참조하면 스냅샷이 사용 중인 상태로 남을 수 있습니다.
애플리케이션 컨테이너를 중지하면 주 프로세스는 종료되지만, 관련된 모든 마운트, 보조 프로세스, 런타임 셤, 셸 세션, 백업 작업 또는 네임스페이스가 스냅샷 경로를 해제했다는 의미는 아닙니다. 또한 대상이 마운트되어 있거나, 전송에 사용 중이거나, 기본 서브볼륨으로 설정되어 있거나, 중첩 서브볼륨을 포함하는 경우 Btrfs가 삭제를 거부할 수 있습니다. 강제 마운트 해제나 컨테이너 데이터 삭제를 수행하기 전에 정확한 참조 원인을 진단하세요.
정확한 Btrfs 객체와 오류 확인
전체 스냅샷 경로, 서브볼륨 ID, 부모 ID, 읽기 전용 상태, UUID, 수신 UUID 및 정확한 삭제 오류를 기록하세요. 해당 경로가 일반 디렉터리가 아니라 Btrfs 서브볼륨인지 확인하세요.
Btrfs 서브볼륨 참조 문서는 스냅샷이 서브볼륨임을 설명하고, 기본 서브볼륨 상태와 활성 전송 작업을 포함해 삭제를 막는 조건을 문서화합니다.
오류가 EBUSY가 아니라면 실제 실패 원인을 따라가세요. 권한, 읽기 전용 마운트, 기본 서브볼륨 및 중첩 서브볼륨 문제는 활성 마운트 참조와 다른 점검이 필요합니다.
컨테이너 중지와 컨테이너 제거 구분
실행 중, 중지됨, 종료됨 및 제거 중 상태의 컨테이너를 나열하세요. 바인드 마운트, 이름 있는 볼륨 또는 Btrfs 스토리지 드라이버를 통해 해당 스냅샷을 사용한 컨테이너 ID를 기록하세요.
Docker CLI 참조에 따르면 docker stop은 주 프로세스에 신호를 보냅니다. 이는 컨테이너 정의, 런타임 메타데이터 또는 호스트 측의 모든 스토리지 관계가 제거되었다는 의미가 아닙니다.
애플리케이션 UI에 스택이 중지되었다고 표시된다는 이유만으로 스냅샷을 삭제하지 마세요. 재시작 정책, 상태 확인 도우미, exec 셸, 사이드카 또는 컨테이너 런타임 프로세스가 여전히 존재하는지 확인하세요.
관련된 모든 네임스페이스에서 마운트 검사
호스트의 마운트 테이블을 컨테이너 런타임, 중지된 컨테이너의 도우미, 백업 에이전트 및 컨테이너에 진입한 장시간 실행 셸의 마운트 네임스페이스와 비교하세요.
Linux 매뉴얼은 마운트 네임스페이스가 마운트 목록을 격리한다고 설명합니다. 따라서 호스트에서는 경로가 마운트되지 않은 것처럼 보여도 다른 프로세스 네임스페이스 안에서는 계속 마운트된 상태일 수 있습니다.
현재 셸만 확인하지 말고 프로세스별 마운트 정보를 사용하세요. 호스트에서 지연 마운트 해제를 수행하면 증상이 숨겨질 뿐, 참조를 계속 보유한 네임스페이스가 해제되지 않을 수 있습니다.
다른 네임스페이스에 남아 있는 컨테이너 마운트 확인
네임스페이스를 계속 보유하고 있을 수 있는 컨테이너 런타임, 셤, 모니터링 에이전트 또는 도우미의 프로세스 ID를 식별하세요. 해당 프로세스의 마운트 트리와 Btrfs 스냅샷에 해당하는 소스 경로를 검사하세요.
Red Hat은 다른 네임스페이스의 마운트가 장치 또는 리소스 사용 중 정리 오류를 일으키는 검증된 사례를 문서화했습니다. 이는 호스트에서는 문제가 없어 보이지만 스냅샷이 계속 참조되는 상황과 일치합니다.
확인된 오래된 도우미만 종료하거나, 유지보수 시간에 관련 런타임을 재시작하세요. 관련 없는 네임스페이스 소유자를 종료하면 다른 컨테이너와 마운트가 중단될 수 있습니다.
네임스페이스 한계를 고려한 fuser 및 열린 핸들 검사
스냅샷 경로 아래의 열린 파일, 현재 작업 디렉터리, 매핑된 파일 및 마운트 사용자를 확인하세요. 충분한 권한으로 도구를 실행하고 프로세스 목록을 런타임 프로세스와 비교하세요.
Debian의 fuser 매뉴얼은 다른 마운트 네임스페이스의 프로세스가 마운트한 블록 장치를 보지 못할 수 있다고 경고합니다. 따라서 결과가 비어 있어도 스냅샷이 사용되지 않는다는 뜻은 아닙니다.
또한 스냅샷 내부를 현재 디렉터리로 사용하는 셸 세션, 파일 색인 서비스, 바이러스 백신 검사기, 백업 읽기 프로세스 및 애플리케이션 로그 테일러도 확인하세요. 확인된 사용자를 한 번에 하나씩 종료한 후 읽기 전용 상태 검사를 다시 시도하세요.
마운트됨, 기본, 중첩 및 전송 중인 서브볼륨 배제
스냅샷의 서브볼륨 ID로 확인되는 모든 마운트를 나열하고, 파일 시스템의 기본 서브볼륨을 확인하며, 중첩된 하위 서브볼륨을 열거하고, 활성 Btrfs 전송 작업을 검사하세요.
ArchWiki는 마운트된 서브볼륨을 삭제해서는 안 된다고 안내합니다. 따라서 제거 전에 마운트 식별 정보와 중첩 구조를 반드시 확인해야 합니다.
애플리케이션 컨테이너를 중지해도 독립적인 Btrfs 전송, 스냅샷 복제 또는 백업 프로세스가 중지되는 것은 아닙니다. 전송이 완료될 때까지 기다리거나 정상적으로 중지한 다음 스냅샷 상태를 다시 확인하세요.
확인된 참조 해제 및 안전한 삭제
스냅샷을 소유한 네임스페이스에서 마운트를 해제하고, 필요한 경우 오래된 컨테이너 런타임 객체를 제거하거나 재시작하세요. 작업 디렉터리에서 빠져나오고, 확인된 전송 작업을 중지하며, 종속 순서에 따라 중첩 서브볼륨을 삭제하세요.
NAS 앱 데이터 스냅샷에 관한 ZimaSpace 문서는 컨테이너 스냅샷이 실제로 포함하는 영구 경로와 애플리케이션 상태를 식별하는 데 필요한 관련 맥락을 제공합니다.
서브볼륨을 참조하는 네임스페이스나 프로세스가 없고, 올바른 비기본 스냅샷이 지원되는 Btrfs 명령으로 삭제되며, 백그라운드 정리가 완료되고, 애플리케이션 스택이 의도한 실제 데이터 경로를 유지한 채 재시작되면 문제가 해결된 것입니다.
지원 및 팁
더 읽어보기

Plex가 다른 Docker 컨테이너와 GPU를 공유할 수 있나요?
Plex와 다른 컨테이너가 동일한 GPU에 함께 액세스할 수 있는 경우가 많지만, 드라이버 지원, 디바이스 매핑, 비디오 엔진 부하, 메모리, 복구 동작을 테스트해야 합니다.

Plex 오류가 클라이언트에서 발생한 것인지 서버에서 발생한 것인지 확인하는 방법
다른 클라이언트에서 동일한 항목을 재현하고, 세션 경로를 비교한 다음, 범위 분석을 통해 장애가 실제로 발생한 위치를 확인한 후에만 서버 증거를 수집하세요.

Plex 캐시 및 트랜스코딩 임시 저장소 구성 방법
영구 Plex 상태는 보호하면서 트랜스코딩 임시 파일은 적합한 로컬 저장소에 배치한 다음, 정리 상태와 여유 공간 및 재시작 동작을 확인하세요.

