루트 디렉토리의 ls에도 물음표가 표시됩니다.

루트 디렉토리의 ls에도 물음표가 표시됩니다.

어떤 폴더에서든 이 작업을 수행 하면 ls -alt다음과 같은 결과가 나타납니다. 루트로 만든 파일이나 폴더도 마찬가지입니다. stat filenamereturn 과 같은 명령 Operation not permitted. 원인이 무엇인지 아시나요?

[root@011319292d9c ~]# pwd
/root
[root@011319292d9c ~]# ls -alt
ls: cannot access '.': Operation not permitted
ls: cannot access '..': Operation not permitted
ls: cannot access '.bash_profile': Operation not permitted
ls: cannot access '.tcshrc': Operation not permitted
ls: cannot access '.bashrc': Operation not permitted
ls: cannot access '.bash_logout': Operation not permitted
ls: cannot access 'test-file-i-created-as-root': Operation not permitted
total 0
d????????? ? ? ? ?            ? .
d????????? ? ? ? ?            ? ..
-????????? ? ? ? ?            ? .bash_logout
-????????? ? ? ? ?            ? .bash_profile
-????????? ? ? ? ?            ? .bashrc
-????????? ? ? ? ?            ? .cshrc
-????????? ? ? ? ?            ? .tcshrc
-????????? ? ? ? ?            ? test-file-i-created-as-root

PS 이것은 도커 컨테이너 내부에서 발생합니다. 디버깅 목적으로 Redhat 8.5의 도커 이미지에서 bash를 사용하여 다음과 같이 시작했습니다.

docker run --rm -ti --entrypoint /bin/bash <Image-ID> 

다음으로 시작하여 실행 중인 컨테이너를 연결할 때 문제가 없다는 점을 언급하는 것이 중요합니다.docker run

docker exec -ti <Image-ID> /bin/bash

컨테이너의 호스트 운영 체제:

cat /etc/os-release 
NAME="Red Hat Enterprise Linux" 
VERSION="8.5 (Ootpa)" 
-------------
uname -a 
Linux 3985430895d8 3.10.0-514.26.2.el7.x86_64 #1 SMP Tue Jul 4 15:04:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

도커파일

FROM custom-docker-image:tag

RUN microdnf update

RUN install-custom-server-modules.sh

CMD ['start-script.sh']

(!)RUN microdnf updateDockerfile에서 해당 줄을 제거 하면 더 이상 문제가 발생하지 않습니다.

관련 정보