![`chroot` 작업으로 인해 "bash: /root/.bashrc: Permission 반환됨" 오류가 발생하는 이유는 무엇입니까?](https://linux55.com/image/161155/%60chroot%60%20%EC%9E%91%EC%97%85%EC%9C%BC%EB%A1%9C%20%EC%9D%B8%ED%95%B4%20%22bash%3A%20%2Froot%2F.bashrc%3A%20Permission%20%EB%B0%98%ED%99%98%EB%90%A8%22%20%EC%98%A4%EB%A5%98%EA%B0%80%20%EB%B0%9C%EC%83%9D%ED%95%98%EB%8A%94%20%EC%9D%B4%EC%9C%A0%EB%8A%94%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
chroot
" "을(를) 실행할 때 오류가 발생하는 이유는 무엇입니까 bash: /root/.bashrc: Permission denied
?
학습 목적으로 테스트를 진행 했는데 chroot
실행하는 동안 다음 오류가 발생했습니다 /bin/bash
.
nlykkei@debian:~$ id
uid=1000(nlykkei) gid=1000(nlykkei) groups=1000(nlykkei),27(sudo)
nlykkei@debian:~$ sudo chroot --userspec nlykkei:root --groups sudo / /bin/bash
bash: /root/.bashrc: Permission denied
nlykkei@debian:/$ id
uid=1000(nlykkei) gid=0(root) groups=0(root),27(sudo)
s 대신 /bin/bash
루트에 액세스하려는 것 같나요 ?.bashrc
nlykkei
또한 다음 을 생성(복사)하여 NEWROOT
만들고 실행할 수 없습니다 .~
/bin/bash
~/bin/bash
nlykkei@debian:~$ ls -la ~/bin/bash
-rwxr-xr-x 1 nlykkei nlykkei 1168776 Sep 23 10:49 /home/nlykkei/bin/bash
nlykkei@debian:~$ sudo chroot --userspec nlykkei:root --groups sudo /home/nlykkei/ /bin/bash
chroot: failed to run command ‘/bin/bash’: No such file or directory
이러한 문제를 해결할 수 있는 방법이 있나요?
nlykkei@debian:~$ uname -a
Linux debian 4.19.0-5-amd64 #1 SMP Debian 4.19.37-5 (2019-06-19) x86_64 GNU/Linux
답변1
전달하는 --userspec
것은 chroot 환경에서 실행하는 것과 다릅니다 chroot
. su - user
즉, 홈 디렉토리는 여전히 루트, 즉 루트가 아닌 사용자에게 허용되지 않는 콘텐츠를 읽으려고 시도하는 /root
이유입니다 .bash
/root/.bashrc
두 번째 문제는 chroot 환경에 필요한 모든 공유 라이브러리를 포함하지 않아 발생할 수 있습니다. chroot
정보 파일 에서 :
"bash"와 같이 동적으로 링크된 실행 파일을 사용하려면 먼저 "ldd bash"를 실행하여 필요한 공유 개체가 무엇인지 확인하세요. 그런 다음 실제 바이너리를 복사하는 것 외에도 나열된 파일을 원하는 새 루트 디렉터리 아래의 원하는 위치에 복사합니다. 마지막으로 실행 파일에 다른 파일(예: 데이터, 상태, 장치 파일)이 필요한 경우 해당 파일도 제자리에 복사하세요.