KVM이 외부 HDD에 저장된 qcow2 이미지에 액세스할 수 없습니다. 어떤 솔루션도 작동하지 않습니다.

KVM이 외부 HDD에 저장된 qcow2 이미지에 액세스할 수 없습니다. 어떤 솔루션도 작동하지 않습니다.

RHEL 7.8을 실행 중이고 KVM이 외장 HDD에 액세스하는 데 문제가 있습니다.

위의 기사를 찾은 후 모든 해결 방법을 시도했지만 성공하지 못했습니다...

"자동으로 권한 수정" 솔루션은 매우 유망했으며(이전에 "mount /mnt" 솔루션을 직접 시도했지만 작동하지 않았습니다.) 예, 권한을 수정하겠다고 말하고 "예"를 클릭했습니다. 그러나 마침을 클릭한 후에도 여전히 오류가 발생하며 종료됩니다.

Unable to complete install: 'internal error: process exited while connecting to monitor: 2020-08-24T04:24:09.396742Z qemu-kvm: -drive file=/run/media/root/My Passport/vHMC_91910/disk1.img,format=raw,if=none,id=drive-virtio-disk0: could not open disk image /run/media/root/My Passport/vHMC_91910/disk1.img: Could not open '/run/media/root/My Passport/vHMC_91910/disk1.img': Permission denied'

Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 89, in cb_wrapper callback(asyncjob, *args, **kwargs)
File "/usr/share/virt-manager/virtManager/create.py", line 2552, in _do_async_install guest.start_install(meter=meter)
File "/usr/share/virt-manager/virtinst/guest.py", line 495, in start_install doboot, transient)
File "/usr/share/virt-manager/virtinst/guest.py", line 431, in _create_guest domain = self.conn.create
File "/usr/lib64/python2.7/site-packages/libvirt.py", line 3715, in createXML if ret is None:raise libvirtError('virDomainCreateXML() failed', conn=self)

libvirtError: internal error: process exited while connecting to monitor: 2020-08-24T04:24:09.396742Z qemu-kvm: -drive file=/run/media/root/My Passport/vHMC_91910/disk1.img,format=raw,if=none,id=drive-virtio-disk0: could not open disk image /run/media/root/My Passport/vHMC_91910/disk1.img: Could not open '/run/media/root/My Passport/vHMC_91910/disk1.img': Permission denied 

그 글을 찾기 전에 인터넷에서 검색을 하다가 ACL을 설정하라는 내용이 있어서 그렇게 했습니다.

그러나 권한이 거부되어 여전히 실패합니다! (사용자와 그룹을 하나씩 추가하려고 시도했는데 마지막으로 시도한 것이 usernobody였습니다.)

[root@oc3524418742 ~]# setfacl -m u:nobody:rx /run/media/theeraphong/
[root@oc3524418742 ~]# getfacl /run/media/theeraphong/
getfacl: Removing leading '/' from absolute path names
file: run/media/theeraphong/
owner: root
group: root
user::rwx
user:nobody:r-x
user:qemu:r-x
user:kvmuser:r-x
user:theeraphong:r-x
group::---
group:kvm:r-x
group:qemu:r-x
group:libvirt:r-x
mask::r-x
other::rwx

Theeraphong T님, 정말 감사합니다.

답변1

virtmanager는 기본 스토리지 풀만 찾아서 허용합니다. 일반적으로 /var/lib/libvirt/images/에 있습니다. 설정에 따라 변경할 수 있습니다.그리고/또는외부 디스크에서 부팅할 수 있도록 다른 기본 저장소를 설정하세요. 권한은 실제로 실행에 중요하지 않습니다. 단지 보안을 위한 것입니다.

답변2

이러한 풀은 .xml 파일에 정의될 수 있습니다. "Default"라는 풀의 어딘가에 "Default.xml" 파일이 있습니다. 필요에 따라 이 파일을 편집하세요.

답변3

링크를 다시 확인해 보세요. 제가 제출해 드린 것입니다. 그렇지 않으면 첫 번째 검색 결과를 사용합니다.https://www.google.com/search?q=virsh%20add%20another%20pool

Virsh add Pool

11.1.3.1 virsh를 사용하여 디렉터리 기반 스토리지 풀을 생성하여 스토리지 풀 정의를 생성합니다. virsh pool-define-as 명령을 사용하여 새 스토리지 풀을 정의합니다. ...스토리지 풀이 나열되어 있는지 확인하세요. ...로컬 디렉토리를 생성합니다. ...스토리지 풀을 시작합니다. ... 자동 시작을 켭니다. ...스토리지 풀 구성을 확인하세요.

11장. 스토리지 풀 - Fedora Documentationdocs.fedoraproject.org › en-US › Fedora › html › chap...

관련 정보