CentOS 6 개발용 chroot 시스템 만들기


시스템을 개발하다보면 시스템이 무척이나 지저분해진다.
또한 개발 시스템을 서비스에 투입하기에는 보안이 꺼려질 경우
아래와 같은 방법으로 기존 시스템에 영향을 주지 않는 방식으로
개발용 chroot 시스템을 구성할 수 있다.

 

일단 설치하려는 CentOS의 Release 파일을 다운로드 받아야한다.
내가 설치한 시스템은 CentOS 6.8 x86_64이므로 아래 URL에서
centos-release 파일을 다운받는다.
http://centos.mirror.cdnetworks.com/6.8/os/x86_64/Packages/

 

만약 chroot를 설치할 디렉토리 위치가 “/root/chroot”라고 한다면, 다운로드 받은 RPM을 설치할 디렉토리를 생성해준다.

 

다운 받은 RPM 파일을 아래와 같이 설치할 root를 변경후, rpm을 설치한다.

이러면 아래와 같은 파일들이 설치된다.

 

그 이후, yum 명령어를 통해서 일괄적으로 파일들을 설치할 수 있다.

위와 같이 명령어를 실행하면, 개발관련된 패키지들이 “/root/chroot” 디렉토리 이하에 일괄적으로 설치된다.

이후, resolv.conf을 복사해서 chroot 환경에서도 네트워크가 되도록 기존 파일을 복사한다.

위 작업 후, chroot 시스템을 사용하려면 아래와 같이 2개의 디렉토리를 Mount해준다.

 

위 작업이 끝났다면 아래 “chroot” 명령어를 통해 설치된 시스템에 접근해서 개발을 진행하면
된다.

 

개발 후, 더 이상 필요가 없다면, 아래 명령어를 통해서 디렉토리를 삭제하면 깨끗한 시스템이 된다.
(단 삭제 전, mount된 것들은 해제해주자.)

 

이 방식을 잘 생각하면, OS 설치하는 방식을 쉽게 알수 있습니다.
LiveCD로 부팅 후, 위와 같이 작업 후, fstab을 적절히 수정하고,
grub만 적절히 수정하면 시스템 설치가 되는 것입니다.