VirtualBox를 시작하기 전에 파일 시스템에 쓰는 방법은 무엇입니까?

VirtualBox를 시작하기 전에 파일 시스템에 쓰는 방법은 무엇입니까?

TurnKey Linux 14 문서를 읽고 있는데 장치 값을 사전 설정하려면 컴퓨터가 처음 부팅되기 전에 파일 시스템에 해당 값을 써야 한다고 명시되어 있습니다.

제가 생각할 수 있는 가장 확실한 방법은 가상 머신을 Live CD로 부팅하고 관련 파일 시스템을 마운트하여 파일을 쓰는 것입니다.

VirtualBox에는 이를 수행하는 다른 방법이 포함되어 있습니까? 예를 들어, 일종의 bash 유틸리티를 사용하여 기존 파일 시스템에 외부 파일을 쓰나요?

저는 vSphere를 사용하여 VMWare에서 이를 수행할 수 있는 방법이 있다고 믿습니다. 이것이 바로 제가 묻는 이유입니다.

답변1

당신은 그것을 사용할 수 있습니다libguestfs 도구가상 머신 이미지의 파일 시스템에 액세스합니다.

mkdir ~/mnt
guestmount -a /path/to/vm-image.vdi -m /dev/sda1 ~/mnt
… edit files …
fusermount -u ~/mnt

Libguestfs는 아마도 KVM을 사용하는 QEMU를 사용합니다. KVM과 VirtualBox는 동시에 사용할 수 없습니다. VirtualBox를 실행 중인 경우 이를 종료하고 kvm커널 모듈이 로드되었는지 확인하거나 KVM 없이 QEMU를 실행하도록 준비하십시오. LIBGUESTFS_BACKEND_SETTINGS=force_tcg사용자 환경에 KVM을 설정하여 QEMU가 KVM을 피하도록 할 수 있습니다 (느리지만 파일 시스템을 마운트하고 몇 가지 파일을 편집하는 데에는 중요하지 않음).

답변2

사전 시드된 값으로 재할당할 수 있는 사용자 지정 TurnKey VM을 생성하기 위해 이 작업을 수행하는 경우 (일부 경우) 덜 복잡할 수 있는 또 다른 옵션이 있습니다.

가상 머신을 시작하고 첫 번째 시작 스크립트를 수동으로 실행하여 필요한 경우 사전 시드 파일을 만듭니다. 그런 다음 첫 번째 부팅 스크립트가 다음 부팅(추출된 가상 장치의 첫 번째 부팅)에서 다시 실행되도록 RUN_FIRSTBOOT플래그(에서 )를 재설정합니다 ./etc/default/inithooks

관련 정보