![chroot를 실행한 후 감옥에 있는 Nodejs 복사본이 노드 콘솔을 시작하지 않습니까?](https://linux55.com/image/122933/chroot%EB%A5%BC%20%EC%8B%A4%ED%96%89%ED%95%9C%20%ED%9B%84%20%EA%B0%90%EC%98%A5%EC%97%90%20%EC%9E%88%EB%8A%94%20Nodejs%20%EB%B3%B5%EC%82%AC%EB%B3%B8%EC%9D%B4%20%EB%85%B8%EB%93%9C%20%EC%BD%98%EC%86%94%EC%9D%84%20%EC%8B%9C%EC%9E%91%ED%95%98%EC%A7%80%20%EC%95%8A%EC%8A%B5%EB%8B%88%EA%B9%8C%3F.png)
감옥에 갇힌 시스템에서 nodejs를 실행하기 위해 chroot를 사용하려고 합니다. 제가 감옥을 만들고 싶은 곳은 [mnt/mylinux]입니다:
bash와 모든 종속성[을 사용하여 발견됨
ldd
]은 감옥의 올바른 폴더에 복사됩니다. 다음과 같이 nodejs를 bin 폴더에 복사했습니다.
그런 다음 node[using] 에 필요한 모든 종속성도 복사했습니다 ldd
. 이제 chroot를 하고 노드를 호출하려고 하면 콘솔이 열리지 않습니까?
노드에 필요한 모든 종속성을 감옥에 복사했습니다. 그렇다면 왜 nodejs는 감옥을 만든 후에 콘솔을 시작하지 않습니까?
답변1
분명히 필요한 것이 누락되었습니다.
/proc
/sys/
/dev
/dev/pts
파일을 실행하면 strace
문제가 드러날 수 있습니다.
답변2
mount --bind /dev $chroot/dev
mount --bind /proc $chroot/proc
그러면 효과가 있었어요!
Hauke Larkin님, 감사합니다.