KVM의 호스트 OS에서 게스트 OS로 파일을 전송/업로드하는 방법은 무엇입니까? (폴더 공유 아님)

KVM의 호스트 OS에서 게스트 OS로 파일을 전송/업로드하는 방법은 무엇입니까? (폴더 공유 아님)

KVM 하이퍼바이저 위에서 실행되는 게스트 운영 체제에 대한 구성 파일을 제공해야 합니다.

"qemu" 및 9P virtio 지원을 통해 호스트와 게스트 간 KVM의 폴더 공유 옵션에 대해 읽었습니다. 호스트에서 게스트로 일회성 파일 전송을 도와줄 수 있는 간단한 프로그램에 대해 알고 싶습니다.

게스트 OS가 실행되는 동안 파일을 전송하는 방법과 게스트 OS가 실행될 때 게스트 OS에서 파일을 사용할 수 있도록 하는 가능한 방법(예: 파일 패키징 및 가능하면 디스크 이미지와 통합)을 알려주십시오.

호스트 운영 체제는 Linux입니다.

답변1

두 가지 다른 접근 방식을 생각해 보았습니다.

  • 네트워크를 통해 파일을 전송합니다. 예를 들어 호스트에서 httpd를 실행하고 웹 브라우저를 사용하거나 파일을 다운로드할 수 wget있습니다 curl. 아마도 가장 쉽고 편리할 것입니다.
  • 전송할 파일을 사용하여 호스트에 ISO 이미지를 빌드합니다. 그런 다음 이를 게스트의 CD 드라이브에 연결합니다.

    genisoimage -o image.iso -r /path/to/dir
    virsh attach-disk guest image.iso hdc --driver file --type cdrom --mode readonly
    
    • mkisofs대신 사용할 수 있습니다 genisoimage.
    • GUI(예 virt-manager: CUI 대신 virsh)를 사용하여 ISO 이미지를 게스트에 연결할 수 있습니다.
    • 미리 가상머신을 생성하고, 가상머신의 ID를 로 제공해야 합니다 guest. 기존 가상 머신을 볼 수 있습니다 virsh list --all.

답변2

게스트를 시작하기 전에 이를 수행하는 또 다른 쉬운 방법은 호스트에 게스트 파일 시스템을 마운트하는 것입니다.여기. 그런 다음 마운트된 파일 시스템에 파일을 복사하기만 하면 됩니다. 예를 들어 QCOW2 이미지의 경우 다음을 수행할 수 있습니다.

sudo modprobe nbd max_part=63
sudo qemu-nbd -c /dev/nbd0 <image_filename>.cow

그런 다음 그래픽 파일 관리자에서 열거나 명령을 사용하여 설치할 수 있습니다 mount.

답변3

또 다른 방법은 guestmount 유틸리티를 사용하는 것입니다.

  1. 방문자 닫기

  2. 게스트 디스크 마운트 guestmount -a ~/win10.vdi -m /dev/sda3 /mnt

  3. /mnt에서 게스트 파일을 편집합니다.

  4. 게스트 시작

답변4

또 다른 방법은 USB 플래시 드라이브를 사용하는 것입니다.

Virtual Machine Manager > 가상 머신 > USB 장치 리디렉션

관련 정보