표준 사용자로 실행할 때 컨테이너(실행 중)가 디렉터리에 쓸 수 있도록 할 수 없는 것 같습니다 podman
.이 솔루션직업도 없습니다. 분명히 말하면 이 디렉터리에서 파일을 읽을 수는 있지만 쓰거나 만들 수는 없습니다.
z
, Z
볼륨에서는 작동하지 않는 것 같습니다. chcon을 사용하여 루트로 작업했지만 새 정책 모듈, 권한 범위, 권한 모드 등을 추가해 보았습니다.
나는 이것이 일종의 권한 오류라고 생각합니다. (적어도 순진하게) 컨테이너의 폴더는 root
"그룹"이 소유하고 있는 것 같습니다. nogroup
이것이 표준인지는 모르겠습니다.
나는 chown
(예를 들어여기) 컨테이너 사용자 ID 및/또는 그룹 ID의 디렉토리(이 경우 nobody
and가 소유 할 수 있음 nogroup
)(작동하지 않음). 또한 호스트 사용자 + 그룹 ID를 사용하여 컨테이너에 로그인했습니다(bash 터미널에 있음). - 그리고 아무것도 차이점은 chown
호스트 사용자/그룹, 컨테이너 사용자/그룹, 루트 사용자/그룹(약간 모호한 컨테이너/호스트 루트) 등과 같은 다른 사용자/그룹에 폴더를 보내는 것 입니다.
다음은 ls -lnZ
일부 테스트 파일의 컨테이너 내부 및 외부 샘플 출력 입니다 65534
.확실히에 예약된 특수 ID입니다 nobody
. ID호스트 사용자이다 9876
와 이드컨테이너 사용자예 1234
. id -u
실제 사용자 ID가 이와 일치하는지 확인했습니다 . 참고로 이 경우 호스트 그룹 ID는 다르므로 5432
컨테이너 사용자의 그룹 ID는1234
테스트 5:
- 컨테이너:
drwxr-xr-x. 2 0 65534 system_u:object_r:container_file_t:s0 4096 Nov 7 23:50 test
- 주인:
drwxr-xr-x. 2 9876 9876 system_u:object_r:container_file_t:s0 4096 Nov 7 18:50 test5
테스트 4:
- 컨테이너:
drwxr-xr-x. 2 0 65534 system_u:object_r:container_file_t:s0 4096 Nov 8 02:59 test
- 주인:
drwxr-xr-x. 2 9876 1234 system_u:object_r:container_file_t:s0 4096 Nov 7 21:59 test4
테스트 3:
- 컨테이너:
drwxr-xr-x. 2 0 65534 system_u:object_r:container_file_t:s0 4096 Nov 7 21:40 test
- 이전에 호스팅된 항목:
drwxr-xr-x. 2 9876 1234 system_u:object_r:container_file_t:s0:c1022,c1023 4096 Nov 7 16:40 test3
- 호스트 이후:
drwxr-xr-x. 2 9876 1234 system_u:object_r:container_file_t:s0 4096 Nov 7 16:40 test3
test5의 그룹 ID를 수정해도 여전히 작동하지 않습니다.
테스트 5(다시):
- 컨테이너:
drwxr-xr-x. 2 0 0 system_u:object_r:container_file_t:s0 4096 Nov 7 23:50 test
- 주인:
drwxr-xr-x. 2 9876 5432 system_u:object_r:container_file_t:s0 4096 Nov 7 18:50 test5
표준 사용자로서 컨테이너의 마운트된 볼륨에 파일을 쓰거나 생성할 때 어떤 문제가 발생할 수 있으며, 매우 안전하지 않은 솔루션을 사용하지 않고도 표준 사용자가 마운트된 디렉터리에서 파일을 올바르게 생성/쓰게 하려면 어떻게 해야 합니까?