16.4.5. Augeas 및 libguestfs 스크립팅
libguestfs와 Augeas를 결합하면 Linux 게스트 가상 머신 구성을 조작하는 스크립트를 작성할 때 도움이 될 수 있습니다. 예를 들어 다음 스크립트에서는 Augeas를 사용하여 게스트 가상 시스템의 키보드 구성을 구문 분석하고 레이아웃을 출력합니다. 이 예제는 Red Hat Enterprise Linux를 실행하는 게스트 가상 머신에서만 작동합니다.
#!/bin/bash - set -e guestname="$1" guestfish -d "$1" -i --ro <<'EOF' aug-init / 0 aug-get /files/etc/sysconfig/keyboard/LAYOUT EOF
Augeas는 또한 설정 파일을 수정하는 데 사용할 수 있습니다. 위의 스크립트를 수정하여 키보드 레이아웃을 변경할 수 있습니다.
#!/bin/bash - set -e guestname="$1" guestfish -d "$1" -i <<'EOF' aug-init / 0 aug-set /files/etc/sysconfig/keyboard/LAYOUT '"gb"' aug-save EOF
두 스크립트 간의 세 가지 변경 사항에 유의하십시오.
- 두 번째 예제에서는 --ro 옵션이 제거되어 게스트 가상 머신에 쓸 수 있는 기능이 제공되었습니다.
- aug-get 명령이 값을 가져오는 대신 수정하도록 aug-set 로 변경되었습니다. 새 값은 "gb"( quotes 포함)입니다.
- 여기에서 aug-save 명령이 사용되므로 Augeas는 변경 사항을 디스크에 씁니다.
참고
Augeas에 대한 자세한 내용은 웹 사이트에서 http://augeas.net 찾을 수 있습니다.
fish는 이 소개 문서에서 다룰 수 있는 것보다 훨씬 많은 작업을 수행할 수 있습니다. 예를 들어 처음부터 디스크 이미지 생성:
guestfish -N fs
또는 디스크 이미지에서 전체 디렉터리를 복사하십시오.
><fs> copy-out /home /tmp/home
자세한 내용은 man 페이지fish(1)를 참조하십시오.