몇 가지 실험을 하고 있어요루스트어바웃이상한 행동을 발견했습니다.
Docker 내에서 루트 사용자가 생성한 파일의 소유권을 루트 권한이 없는 다른 사용자로 덮어쓸 수 있었습니다.
이를 재현하는 단계는 다음과 같습니다.
$> docker run -dit ubuntu:16.04 bash
$> docker exec -it cont_id bash
$> apt update && apt install -y vim
$> useradd cp -m
$> vim /home/cp/hello.txt
# Write some text and save it
$> su cp
$> cd ~/ && ls -latr;
# Will list hello.txt with user and group as root
$> vim hello.txt
# Write some text and try saving it normally which will fail.
# Try saving it with `:wq!`
그런데 보라, 그것은 저장되었고 파일이 속한 사용자와 그룹이 새로운 사용자로 변경되었습니다.
나는 이것에 대한 터미널 녹음을 만들고 동일한 내용을 게시했습니다.여기.
답변1
사실 이것은 이 사건과 관련이 없습니다 Docker
. vim
사용자가 폴더에 대한 전체 권한을 가지고 있다고 가정하면 파일이 새 파일로 바뀌기 때문에 이는 정상적인 동작입니다 . 사용자에게 전체 권한이 없는 폴더의 경우에도 마찬가지입니다.