다음 디렉토리 트리( mychroot
)를 고려하십시오.
mychroot/
├── proc
│ └── cpuinfo
└── usr
└── bin
└── ls
Fedora 20에서:
$ fakechroot chroot ./mychroot/ /usr/bin/ls proc
cpuinfo
버전:
$ fakechroot --version
fakechroot version 2.9
우분투에서:
$ fakechroot chroot ./mychroot/ /usr/bin/ls proc
chroot 외부의 /proc 항목을 나열합니다.
버전:
$ fakechroot --version
fakechroot version 2.17.2
여기서 무슨 일이 일어날 수 있습니까? 통찰력을 가져 주셔서 감사합니다.
고쳐 쓰다:
행동의 변화인 것 같습니다. Ubuntu에 2.10을 설치했는데 Fedora(2.9 사용)와 동일한 결과가 나타났습니다.
$ /usr/local/bin/fakechroot --version
fakechroot version 2.10
$ /usr/local/bin/fakechroot chroot ./mychroot /usr/bin/ls proc
cpuinfo
제출한질문상류.
답변1
Fakechroot는 특정 경로를 제외하도록 구성할 수 있습니다. 즉, 이러한 경로는 (가짜) chroot 내부와 외부의 동일한 위치를 참조합니다. 이는 많은 프로그램이 이에 의존하기 때문에 /dev
디렉토리와 같은 디렉토리에 특히 유용하므로 모든 곳에 해당 디렉토리를 두는 것이 유용합니다./proc
제외된 경로는 다음과 같은 방법으로 정의할 수 있습니다.
- 환경
FAKECHROOT_EXCLUDE_PATH
변수; - 및
FAKECHROOT_EXCLUDE_PATH
이름이 지정된 구성 파일의 설정~/.fakechroot
/etc/fakechroot
COMMAND.env
주문하다fakechroot
(eg) 에 의해 호출되는 명령입니다chroot.env
.
/proc
환경, 또는 를 통해 ~/.fakechroot/chroot.env
Ubuntu의 제외 목록에 있는지 확인하십시오 /etc/fakechroot/chroot.env
. Debian 패키지에서 , 및 를 /etc/fakechroot/chroot.env
추가 합니다 . 이 작업을 수행하지 않으려면 관련 줄을 복사하여 편집하거나 인수를 전달하여 다른 구성 파일(예: )을 지정합니다./dev
/proc
/sys
FAKECHROOT_EXCLUDE_PATH
/etc/fakechroot/chroot.env
~/.fakechroot/chroot.env
-e
fakechroot -e /dev/null chroot …