나는 왜 chroot에서 쫓겨났나요?

나는 왜 chroot에서 쫓겨났나요?

나는 chroot에 들어가서 내 git 사용자( )를 초기화하는 스크립트를 얻은 source init_my_chroot다음 내 chroot에서 쫓겨나는 것에 지나치게 민감한 것 같습니다.

install: cannot create regular file ‘/path/to/testfile’: No such file or directory
make: *** [my-rule] Error 1
me@vm:~$ 

뭔가 전화가 오나요 exit?

init_my_chroot:

set -e

main() {
  mount -t proc proc /proc || true
  mount -t devpts none /dev/pts || true
  git config alias.lg "log --oneline --decorate --all --graph"
  eval $(ssh-agent -s) && ssh-add /root/.ssh/id_rsa
}

main "$@"

답변1

set -e이는 명령이 0이 아닌 상태로 종료되면 쉘이 즉시 종료되어야 함을 의미합니다( 또는 조건과 같이 종료 상태가 명시적으로 테스트되는 일부 컨텍스트 제외 if) while.

main()이 옵션을 런타임에만 적용하려면 다음을 수행하면 됩니다.

set -e
main "$@"
set +e

관련 정보