libvirtd를 사용하여 삼바 공유를 설정하는 방법

libvirtd를 사용하여 삼바 공유를 설정하는 방법

내 (Arch) Linux 시스템에서 Windows 7 게스트와 함께 QEmu를 사용하고 있습니다. Samba를 사용하여 Windows 게스트와 호스트 시스템의 디렉터리를 공유하고 싶습니다. 다음과 같은 명령을 사용하여 터미널에서 이 작업을 수행할 수 있습니다.

qemu-system-x86_64 /path/to/windows7.img -enable-kvm -net nic -net user,smb=/path/to/shared/directory -m 1024

하지만 이제 libvirtd가 설정되어 있고 virt-manager를 사용하여 Windows 7을 부팅할 수 있기를 원합니다. 저는 libvirtd를 처음 접했고 문서를 탐색하는 데 문제가 있습니다. "네트워크 파일 시스템 풀"을 설정해야 할 것 같습니다.libvirt 문서), 하지만 virt-manager를 통해 이 작업을 수행할 수 있는지, 명령줄에서 수행해야 하는지, 해당 링크에 설명된 XML을 추가해야 하는 위치를 이해하지 못합니다.

예시를 찾아봤지만 아무것도 찾지 못했습니다. 나는 이 작업을 수행하는 방법을 묻는 사람들이 있는 다양한 포럼 게시물을 찾았으므로 이 문제로 어려움을 겪고 있는 사람은 나뿐만이 아닐 것 같습니다!

답변1

libvirt는 qemu 명령을 지원하지 않는 것 같습니다 -net user,smb(다른 하이퍼바이저와의 비호환성 때문인 것 같습니다). 한 가지 가능한 해결 방법은 매개변수를 qemu-kvm명령에 직접 전달하는 것입니다.

이렇게 하려면 먼저 XML 네임스페이스를 추가해야 합니다.http://libvirt.org/schemas/domain/qemu/1.0귀하의 도메인에. 그런 다음 <commandline>해당 네임스페이스 태그를 사용할 수 있습니다 .

<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
    ...
    <qemu:commandline>
        <qemu:arg value='-net'/>
        <qemu:arg value='user,smb=/path/to/shared/directory'/>
    </qemu:commandline>
</domain>

다음을 실행하여 XML 구성을 쉽게 편집할 수 있습니다.

# virsh edit <vm-name>

관련 정보