Arch Linux의 단계를 따랐습니다.#KVM그리고#qemu
1) sudo pacman -S
그런 다음 libs를 설치하십시오.
libvirt
libiscsi
libaio
qemu
qemu-arch-extra
qemu-block-iscsi
qemu-block-rbd
qemu-block-gluster
2) $ lscpu
VT-x가 활성화되어 있는지 확인
3) .conf
다음 모듈에 파일을 추가합니다./etc/modprobe.d/
network device (virtio-net)
block device (virtio-blk)
controller device (virtio-scsi)
serial device (virtio-serial)
balloon device (virtio-balloon)
4) initramfs에 모듈을 로드하기 위해 mkinitcpio.conf
후크를 포함하고 실행했습니다 .modconf
5) 실행$ lsinitcpio
출력에 로드된 가상화 모듈이 표시되지 않기 때문에 여기에 문제가 있다고 생각합니다.
usr/lib/modules
usr/lib/modules/4.5.4-1-ARCH
usr/lib/modules/4.5.4-1-ARCH/modules.devname
usr/lib/modules/4.5.4-1-ARCH/modules.builtin.bin
usr/lib/modules/4.5.4-1-ARCH/modules.symbols.bin
usr/lib/modules/4.5.4-1-ARCH/modules.alias.bin
usr/lib/modules/4.5.4-1-ARCH/modules.dep.bin
usr/lib/modules/4.5.4-1-ARCH/kernel
usr/lib/modules/4.5.4-1-ARCH/kernel/sdhci.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/ext4.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/usb-common.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/ehci-pci.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/sd_mod.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/rtsx_pci_sdmmc.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/serio.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/cdrom.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/hid.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/ehci-hcd.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/sdhci-acpi.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/atkbd.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/xhci-pci.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/usbhid.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/xhci-hcd.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/sr_mod.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/crc16.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/rtsx_pci.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/libps2.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/libahci.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/led-class.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/scsi_mod.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/mmc_core.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/mmc_block.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/i8042.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/usbcore.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/ahci.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/libata.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/mbcache.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/usb-storage.ko
usr/lib/modules/4.5.4-1-ARCH/kernel/jbd2.ko
6) 내가 실행할 때 :
$ modinfo virtio-scsi
나는 다음과 같은 대답을 얻었습니다.
filename: /lib/modules/4.5.4-1-ARCH/kernel/drivers/scsi/virtio_scsi.ko.gz
license: GPL
description: Virtio SCSI HBA driver
alias: virtio:d00000008v*
depends: virtio,scsi_mod,virtio_ring
intree: Y
vermagic: 4.5.4-1-ARCH SMP preempt mod_unload modversions
$ systool -v -m virtio-scsi
동일한 모듈에 대해 오류 메시지가 나타납니다.
Error opening module `virtio-scsi`
7) qemu 이미지를 생성하려고 하면 $ qemu-img create -f raw arch-qemu 8G
다음 오류가 발생합니다.
$ Failed to open module:
libiscsi.so.4: cannot open shared object file: No such file or directory
도움을 주시면 감사하겠습니다!
답변1
v1.14.0
qemu가 파일을 찾을 수 있는 libiscsi의 이전 버전()을 수동으로 설치한 후 문제를 해결했습니다 libiscsi.so.4
.
먼저 qemu-block-iscsi 종속성을 제거하지 않고 v1.17.0-2
pacman으로 설치된 프로그램을 제거했습니다 .sudo pacman -Rddn libiscsi
github에서 소스코드를 복제했습니다.Salberg/libiscsi빌드가 완료된 후 libtool을 사용하여 라이브러리를 설치했습니다. 다음에 qemu를 업데이트할 때 수동 설치를 제거하고 pacman
패키지를 다시 사용해야 하기 때문에 이것이 최선의 해결책이 아니라는 것을 알고 있습니다.
현재 나는 아치 리눅스에서 그것을 본다qemu 페이지패키지는 다음과 같습니다:
2016-05-10 테스트 중인 버전 2.6.0-1은 더 이상 사용되지 않는 것으로 표시됩니다.
루트로 실행되는 코드:
# git clone folder - libiscsi/
# Making install in lib
# directory 'libiscsi/lib'
mkdir -p '/usr/lib'
/bin/sh ../libtool --mode=install /usr/bin/install -c libiscsi.la '/usr/lib'
libtool --finish /usr/lib
----------------------------------------------------------------------
# Libraries have been installed in: /usr/lib
----------------------------------------------------------------------
# Making install in utils
# directory 'libiscsi/utils'
mkdir -p '/usr/bin'
/bin/sh ../libtool --mode=install /usr/bin/install -c iscsi-inq iscsi-ls iscsi-perf iscsi-readcapacity16 iscsi-swp '/usr/bin'
----------------------------------------------------------------------
# directory 'libiscsi/examples'
mkdir -p '/usr/bin'
install -c ld_iscsi.so '/usr/bin'
----------------------------------------------------------------------
# directory 'libiscsi/
mkdir -p '/usr/include/iscsi'
install -c -m 644 include/iscsi.h include/scsi-lowlevel.h '/usr/include/iscsi'
mkdir -p '/usr/lib/pkgconfig'
install -c -m 644 libiscsi.pc '/usr/lib/pkgconfig'
make install
libiscsi가 기본적으로 lib를 내부 /usr/local/bin
및 외부 로 설치하고 있기 때문에 이러한 명령을 수동으로 실행했습니다 /usr/local/lib
.
의견이나 제안사항이 있으시면 메시지를 남겨주세요!