실습 환경 : AWS Console (2022/09), Visual Studio Code 실습 목적 : 리눅스 컨테이너 기술기반인 chroot 명령을 익혀보기
chroot
Linux시스템의 root 디렉토리 위치를 변경한다.
디렉토리 생성
1. root user로 사용자 전환
# root 사용자로 전환 방법 1
su-
# root 사용자로 전환 방법 2
sudo su
2. /(root) 디렉토리로 위치 이동 3. chroot 명령으로 root디렉토리를 설정할 디렉토리 생성
mkdir tomato
4. 생성한 디렉토리 위치로 이동
디렉토리 환경 맞추기
chroot 명령을 실행할 설정사용 shell에대한 바이너리가 root로 설정할 디렉토리에 존재하지 않다면, root로 설정할 디렉토리에 해당 shell 바이너리와 공유 라이브러리를 복사해야 한다.
1. /bin/bash를 root 디렉토리로 만들려 하는 디렉토리에 복사한다.
cp /bin/bash /tomato/bin
2. ldd 명령으로 /bin/bash의 공유 라이브러리를 확인한다.
- linux-vdso.so.l : 가상 라이브러리, 복사할 필요가 없다. - libtinfo.so.6 : bash가 동작할 때 필요한 라이브러리 - libc.so.6 : Linux 공통 라이브러리 - /lib64/ld-linux-x86-64.so.2 : 공유 라이브러리를 메모리에 로드하는 역할