Home Assistant는 파일을 다시 생성할 때 사용자에게 친숙한 호스트 사용자 이름을 선택하지 않습니다. 새 파일은 일반적으로 컨테이너 내부에서 파일을 생성한 프로세스의 숫자 UID, GID, umask, ACL 및 파일 시스템 규칙을 그대로 상속합니다.
Linux는 숫자 식별자를 기록하는 반면 호스트와 컨테이너는 같은 숫자에 서로 다른 이름을 연결할 수 있으므로, 바인드 마운트에서는 이 문제가 드러납니다. 권한을 변경하기 전에 Home Assistant를 중지하고, 기존 및 새로운 숫자 소유자를 기록하며, 런타임 프로세스를 식별하고, 파일이 Home Assistant, 엔트리포인트, 백업 도구 또는 호스트에서 생성되었는지 확인하세요.
파일을 생성한 프로세스 확인
파일의 생성 또는 수정 시간을 컨테이너 시작, 복원, 업데이트 또는 애드온 작업 시간과 비교하세요. 그런 다음 호스트에서 숫자 UID와 GID를 확인하고 컨테이너 내부 Home Assistant 프로세스의 식별자를 확인하세요. 사용자 이름은 다를 수 있지만 숫자가 신뢰할 수 있는 비교 기준입니다.
근본적인 컨테이너 문제는 바인드 마운트된 파일이 컨테이너 프로세스가 사용하는 식별자로 생성된다는 점입니다. 호스트 파일 시스템 소유자 불일치에 대한 독립적인 설명을 보면 이름만 일치시키는 것으로는 숫자 UID와 GID의 차이가 해결되지 않는 이유를 알 수 있습니다.
새 소유자가 컨테이너 프로세스와 일치한다면 주요 원인이 확인된 것입니다. root 또는 다른 보조 프로세스와 일치한다면 Home Assistant의 런타임 사용자를 변경하기 전에 엔트리포인트, 복원 도구, 예약 작업 또는 호스트 측 스크립트를 조사하세요.
마운트, ACL 및 파일 시스템 경계 확인
해당 경로가 의도한 바인드 마운트인지, 이름이 지정된 볼륨이나 마운트로 가려진 이미지 디렉터리가 아닌지 확인하세요. 상위 디렉터리의 소유자와 모드, 기본 ACL, 그리고 파일 시스템이 로컬, NFS, SMB 또는 다른 네트워크 기반 경로인지 확인하세요.
프로세스는 파일 시스템이 제공하는 권한과 매핑에 따라서만 파일을 생성할 수 있습니다. NFS 식별자 매핑, root 스쿼시, SMB 마운트 옵션, 기본 ACL 및 제한적인 umask는 컨테이너 UID가 올바른 경우에도 표시되는 소유자나 쓰기 권한을 변경할 수 있습니다.
런타임 UID로 생성한 임시 파일에 예상한 소유자가 부여된다면 애플리케이션별 생성자를 계속 조사하세요. 잘못된 소유자가 부여된다면 먼저 마운트 또는 파일 시스템 매핑을 수정하세요. Home Assistant 구성을 변경해도 해당 계층을 무시할 수는 없습니다.
확인된 소유권 불일치만 수정
활성 데이터베이스, 레지스트리 또는 구성 파일의 소유권을 변경하기 전에 Home Assistant를 중지하세요. 백업 또는 스냅샷을 만든 다음, 영향을 받은 경로만 확인된 서비스 UID와 GID로 변경하세요. 전 세계 쓰기 가능과 같은 광범위한 모드를 적용하지 말고 실행 비트, ACL 및 특수 권한을 유지하세요.
재생성 후에도 동일한 런타임 식별자가 사용되도록 배포 정의를 업데이트하거나, 이미지가 기본 식별자로 실행되어야 하는 이유를 문서화하고 호스트 경로를 해당 식별자에 맞추세요. 부팅할 때마다 전체 트리에 chown을 실행하지 마세요. 속도가 느려질 수 있고, 설계 오류를 가리며, 다른 서비스가 소유한 파일을 변경할 수 있습니다.
즉시 소유자 불일치를 수정한 후 마운트, 소유권, 쓰기 테스트 및 복원 동작에 대한 보다 폭넓은 운영 점검표는 ZimaSpace의 권한 변경 방지 가이드에서 확인할 수 있습니다.
파일 재생성 및 실제 쓰기 후 소유권 확인
Home Assistant를 시작하고 파일을 다시 생성한 정확한 작업을 실행하세요. 새 파일에 의도한 숫자 소유자가 설정되었는지, Home Assistant가 파일을 업데이트할 수 있는지, 호스트 측 백업 프로세스가 파일을 읽을 수 있는지 확인하세요. 쓰기 작업 없이 성공적으로 시작된 것만으로는 수정이 완료되었다고 볼 수 없습니다.
한 번 재시작한 후 저장된 구성에서 컨테이너를 다시 생성하세요. 두 이벤트 후에도 소유자, ACL 및 쓰기 동작이 안정적으로 유지되어야 합니다. 권한 거부, 읽기 전용 데이터베이스, 백업 실패 또는 통합 설정 오류가 있는지 로그를 확인하세요.
버전 간에 생성 주체가 예상치 않게 변경되거나, 네트워크 파일 시스템이 소유권을 다시 설정하거나, 필요한 서비스가 해당 경로를 안전하게 공유할 수 없다면 이미지 유지 관리자 또는 스토리지 관리자에게 문의하세요. 숫자 ID, 마운트 정의, 파일 시스템 유형 및 최소 재현 정보를 보존하세요.
지원 및 팁
더 읽어보기

동시 컨테이너 환경에서 Home Assistant 데이터베이스 연결을 최적화하는 방법
측정된 활성 연결 수와 지연 시간을 바탕으로 외부 Recorder 데이터베이스를 튜닝하세요. 최대 연결 수를 늘리거나 다른 호스트의 풀 설정을 그대로 복사해서는 안 됩니다.

Home Assistant에서 중복 작업 또는 가져오기를 방지하는 방법
추적 정보와 고유한 작업 키를 사용해 자동화와 가져오기를 안전하게 재시도하고, 작업이나 레코드가 중복 생성되지 않도록 하세요.

데이터베이스 볼륨이 가득 찬 후 Home Assistant 복구 방법
먼저 증거를 삭제하지 않고 가득 찬 Recorder 볼륨을 복구한 다음, 증가량을 줄이고 재시작 후에도 기록과 자동화가 유지되는지 입증하세요.

