컴퓨터 지식 네트워크 - 컴퓨터 백과사전 - Ubuntu 14.04 에서 ch 루트 환경을 구성하는 방법

Ubuntu 14.04 에서 ch 루트 환경을 구성하는 방법

애플리케이션, 사용자 또는 환경을 Linux 시스템과 격리하려는 데에는 여러 가지 이유가 있을 수 있습니다. 운영 체제마다 구현 방법이 다르며, Linux 에서 일반적인 방법은 chroot 환경입니다.

이 튜토리얼에서는 chroot 명령을 사용하여 실제 시스템과 분리된 독립 환경을 구성하는 방법을 단계별로 안내합니다. 이 기능은 주로 Ubuntu 14.04 VPS (virtual private server) 에서 수행되는 테스트 프로젝트에 사용할 수 있습니다.

간단한 chroot 환경을 신속하게 구축하는 방법을 배우는 것은 매우 유용한 기술이며 대부분의 시스템 관리자가 혜택을 볼 수 있습니다.

Ch 루트 환경

Chroot 환경은 시스템 호출을 통해 로컬 디렉토리를 임시로 루트 디렉토리로 바꾸는 것입니다. 일반적으로 시스템의 루트 디렉토리는 마운트 지점 "/"입니다. 그러나 chroot 명령을 사용한 후에는 다른 디렉토리를 루트 디렉토리로 사용할 수 있습니다.

원칙적으로 chroot 환경에서 실행되는 모든 응용 프로그램은 시스템의 다른 정보에 액세스할 수 없습니다 (LCTT 번역: chroot 를 사용하여 디렉토리를 루트로 변경하고, 실행 중인 응용 프로그램은 디렉토리 내의 파일만 액세스할 수 있고 디렉토리 외부의 파일은 액세스할 수 없습니다. 하지만 chroot 환경에서 실행되는 어플리케이션은 sysfs 파일 시스템을 통해 환경 외부의 정보에 액세스할 수 있으므로 "원칙적인" 수정자가 있습니다.

Ch 루트 환경 사용

불안정한 애플리케이션 서비스를 테스트해도 전체 호스트 시스템에 영향을 미치지 않습니다.

루트 권한으로 부적절한 작업을 했더라도 root 환경을 엉망으로 만들어도 호스트 시스템에 영향을 주지 않습니다.

시스템에서 다른 운영 체제를 실행할 수 있습니다.

예를 들어, 실제 시스템에 접근하지 않고도 chroot 환경에서 소프트웨어를 컴파일, 설치 및 테스트할 수 있습니다. Chroot 를 사용하여 64 비트 환경에서 32 비트 환경을 만든 다음 32 비트 프로그램을 실행할 수도 있습니다 (LCTT 택주: 실제 환경이 32 비트인 경우 chroot 를 64 비트 환경으로 사용할 수 없음).

그러나 보안을 위해 chroot 환경은 완전한 보안 정책을 제공하는 대신 권한이 없는 사용자에 대해 매우 엄격한 제한을 설정합니다. 보안 정책이 완벽한 격리 방안이 필요하다면 LXC, Docker, vservers 등을 고려해 볼 수 있습니다.

Debootstrap 및 sch 루트

Ch 루트 환경을 사용하려면 Ubuntu 의 미러 소스에 있는 debootstrap 과 schroot 를 설치해야 합니다. 여기서 schroot 는 schroot 환경을 만드는 데 사용됩니다.

Debootstrap 을 사용하면 미러 소스 코드를 통해 Debian (또는 Debian 기반) 시스템을 설치할 수 있으며 설치된 시스템에는 가장 기본적인 명령이 포함됩니다.

Schroot 명령을 사용하면 사용자가 동일한 메커니즘을 사용하여 chroot 환경을 만들 수 있지만 chroot 환경에 액세스할 때 일부 권한 검사를 수행하고 일부 파일 시스템 마운트와 같은 추가 자동 설정을 수행할 수 있습니다.

Ubuntu 14.04 LTS 에서는 두 단계로 이 기능을 수행할 수 있습니다.

1. 패키지 설치

첫 번째 단계는 Ubuntu 14.04 LTS 호스트 시스템에 debootstrap 및 schroot 를 설치하는 것입니다.

$ sudo apt-get 설치 부트 스트랩

$ sudo apt-get 설치 sch 루트

2. sch 루트 구성

이제 도구가 생겼습니다. chroot 환경으로 디렉토리를 지정해야 합니다. 여기에 디렉토리를 만들려면 다음과 같이 하십시오.

Sudo mkdir /linoxide

Schroot 구성 파일을 편집하려면 다음과 같이 하십시오.

Sudo nano/etc/schroot/schroot.conf

우리가 지금 LTS 시스템에 있다는 것을 상기시켜 드리겠습니다. Ubuntu 13. 10 ("Saucy Salamander") 에서 패키지를 실행할 수 있는지 테스트하려면 구성 파일에 다음을 추가할 수 있습니다.

[재치있는]

Description=UbuntuSaucy

위치 =/linoxide

우선 순위 =3

사용자 =arun

루트 그룹 = 루트

시스템 요구 사항에 따라 위의 구성 정보를 조정하십시오.

3. debootstrap 을 사용하여 32 비트 Ubuntu 시스템을 설치합니다.

Debootstrap 명령은 ch 루트 환경에 최소 시스템을 다운로드하여 설치합니다. 미러 소스에 액세스할 수 있는 한 데비안 기반 시스템 버전을 설치할 수 있습니다.

Chroot 환경을 배치할 /linoxide 디렉토리를 만들었습니다. 이제 이 디렉토리에서 debootstrap 을 실행할 수 있습니다.

카드뮴/산화 리튬

Sudo debootstrap-variant = buildd-arch amd64 saucy/linoxide//Ubuntu/

Sudo ch root/Lin oxide/de bootstrap/de bootstrap-2 단계

-arch 의 매개변수를 i386 또는 다른 스키마로 변경할 수 있습니다. 이 스키마의 미러 소스만 있으면 됩니다. 미러 소스 /ubuntu/ 를 가장 가까운 미러 소스로 변경할 수도 있습니다. Ubuntu 공식 미러 홈페이지를 구체적으로 참조할 수 있습니다.

참고 64 비트 시스템에서 32 비트 시스템을 생성하는 경우 다음 명령과 마찬가지로 위 3 행의 명령에-foreign 옵션을 추가해야 합니다.

Sudo debootstrap-variant = buildd-foreign-arch i386 saucy/linoxide//Ubuntu/

네트워크 대역폭 성능에 따라 다운로드하는 데 시간이 걸릴 수 있습니다. 가장 작은 시스템은 약 500 미터이다

4. ch 루트 환경을 완료합니다

시스템을 설치한 후 시스템이 제대로 작동하는지 확인하기 위해 마무리 작업을 해야 합니다. 첫째, 호스트의 fstab 프로그램이 chroot 환경의 존재를 실현할 수 있는지 확인합니다.

Sudo nano /etc/fstab

파일 끝에 다음 구성을 추가합니다.

Proc /linoxide/proc proc 기본값 00

Sysfs /linoxide/sys sysfs 기본값 00

파일을 저장하고 닫습니다.

일부 파일 시스템을 chroot 환경에 마운트하려면 다음과 같이 하십시오.

$ sudo mountproc/linoxide/proc-tproc

$ sudo mount sysfs/linoxide/sys-tsysfs

Ch 루트 환경에서 네트워크를 사용할 수 있도록 /etc/hosts 파일을 ch 루트 환경에 복사합니다.

$ sudocp/etc/hosts/linoxide/etc/hosts

마지막으로 schroot -l 명령을 사용하여 시스템의 모든 schroot 환경을 나열합니다.

$ schroot -l

다음 명령을 사용하여 ch 루트 환경에 들어갑니다.

$ sudo chroot /linoxide/ /bin/bash

설치된 버전 테스트:

# lsb_release -a

# uname -a

Ch 루트 환경에서 그래픽 인터페이스를 사용하려면 DISPLAY 환경 변수를 설정해야 합니다.

$ DISPLAY=:0.0 입니다. /응용 프로그램

지금까지 Ubuntu 14.04 LTS 에 Ubuntu 13. 10 을 성공적으로 설치했습니다.

Ch 루트 환경을 종료합니다.

# 종료

파일 시스템 정리 및 마운트 해제:

$ sudo 제거/테스트/절차

$ sudo 제거/테스트/시스템

上篇: 메르세데스-벤츠, 전동화 목표와 전략 조정 AMG 등 고급 브랜드 전기차 출시 예정 下篇: 미국에서 호텔을 가장 저렴하게 예약하는 방법은 무엇인가요?
관련 내용