ติดตั้งและกำหนดค่า Qemu-KVM บน Arch Linux [อัปเดต]

ผู้จัดการเสมือน

ในหนึ่ง บทความก่อนหน้า เราเห็นวิธีการติดตั้ง เคมู-KVM en เดเบียน wheezy ขอบคุณการทำงานร่วมกันของ fico และคราวนี้จะแสดงวิธีการทำ แต่ใน Arch ลินุกซ์.

เมื่อเทียบกับ debianสิ่งที่ฉันจะแสดงให้คุณเห็นต่อไปนั้นหนักกว่าเล็กน้อย แต่มาเถอะมันง่ายมากที่จะไปถึงผลลัพธ์สุดท้าย มาเริ่มกันเลย:

การติดตั้งแพ็คเกจที่จำเป็น

เรากำลังจะติดตั้งแพ็คเกจที่เราต้องการเพื่อให้มันใช้งานได้ เคมู-KVM และสามารถจัดการเครื่องเสมือนของเราได้

$ sudo pacman -S qemu dmidecode ebtables dnsmasq libvirt bridge-utils openbsd-netcat radvd urlgrabber Virtinst Virt-manager ifplugd ifenslave tcl

ก่อนหน้านี้มีการเรียกแพ็คเกจ คิวมู-ตร.มสำหรับฉันไม่มีอีกแล้วตอนนี้มันเป็นเพียง qemu. ส่วนที่เหลือของแพ็คเกจเป็นแพ็คเกจที่จำเป็นสำหรับตัวเลือกเครือข่ายและอื่น ๆ ในการทำงาน

บรรจุภัณฑ์ คุณธรรม ไม่พบในที่เก็บหรือเปลี่ยนชื่ออีกต่อไป ตอนนี้จำเป็นต้องใช้แพ็คเกจเท่านั้น Virt-manager, libvirt-glib, libvirt, vde2 y qemu

เมื่อติดตั้งแพ็คเกจเหล่านี้แล้วเราจะเพิ่มผู้ใช้ของเราในกลุ่ม ตรม y โพลกิต:

$ sudo gpasswd -a your_kvm user $ sudo gpasswd -a your_polkitd user

จากนั้นเราจะเพิ่มโมดูลที่จำเป็นซึ่งอาจแตกต่างกันไปขึ้นอยู่กับการ์ดแสดงผลของเรา:

$ sudo modprobe kvm-intel $ sudo modprobe kvm

หากคุณมี AMD คุณควรใช้ kvm-amd และฉันถือว่า kvm-nvidia สำหรับผู้ใช้ NVidia ฉันไม่แน่ใจเกี่ยวกับหลัง

ตอนนี้เราเปิดใช้บริการ:

$ sudo systemctl enable libvirtd.service

และถ้าเราต้องการเริ่มต้นคุณก็รู้แล้ว:

systemctl start libvirtd.service

เราต้องสร้างหรือแก้ไขกฎสำหรับ Policykit ที่อนุญาตให้เราจัดการเครื่องเสมือนกับผู้ใช้ของเราเท่านั้น สำหรับสิ่งนี้เราแก้ไขหรือสร้างไฟล์:

$ sudo nano /etc/polkit-1/rules.d/50-org.libvirt.unix.manage.rules

และเราแทรกบรรทัดต่อไปนี้ภายใน:

polkit.addRule (ฟังก์ชัน (การกระทำเรื่อง) {if (action.id == "org.libvirt.unix.manage" && subject.user == "your_user") {return polkit.Result.YES;}});

เราต้องเปลี่ยน ผู้ใช้ของคุณ โดยผู้ใช้ของเราแน่นอน เราจะเหลืออะไร? จากนั้นรีสตาร์ทคอมพิวเตอร์และลองสร้างเครื่องเสมือนใหม่

ในกรณีเฉพาะของฉันเมื่อพยายามสร้างเครื่องเสมือนใหม่ด้วยอิมเมจที่มีอยู่มันทำให้ฉันเกิดข้อผิดพลาดในการอนุญาตเมื่อฉันทำวิซาร์ดเสร็จ ฉันต้องให้สิทธิ์ในการอ่าน / เขียนกับไฟล์. img

อ้างอิง: ปัจจัย QM.


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. ผู้รับผิดชอบข้อมูล: Miguel ÁngelGatón
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา

  1.   Federico A. Valdes Toujague dijo

    ทักทาย Elav !!! ฉันไม่เห็นว่ามันซับซ้อนกว่า Debian บางทีคำสั่งที่แตกต่างกัน เป็นเรื่องที่คุ้มค่าเสมอที่จะดำเนินการคำสั่งสองสามคำเพื่อติดตั้งเครื่องมืออันทรงพลังนี้เพื่อสร้างเครื่องเสมือน แม้ว่าฉันจะไม่ได้ใช้ Arch แต่ขอขอบคุณที่แชร์วิธีการติดตั้งบน distro นั้น

    1.    Elav dijo

      คุณต้องทำตามขั้นตอนเพิ่มเติมเล็กน้อย ... นั่นคือสิ่งที่ฉันหมายถึงความซับซ้อน ใน Debian ไม่จำเป็นต้องทำอะไรนอกจากติดตั้งแพ็คเกจและเพิ่มผู้ใช้ของเราในกลุ่มที่เกี่ยวข้อง

  2.   เป็น Ozkan dijo

    คำถาม elav: Arch ใช้ systemd อยู่แล้วจำเป็นต้องใส่. service ให้กับบริการหรือไม่? ยังไม่ได้รับการยอมรับจาก systemctl 'action' kdm เช่น?

    1.    Elav dijo

      ใช่ Arch ใช้ Systemd ฉันไม่ทราบว่าสามารถทำได้โดยไม่ใช้. service หรือไม่และตามที่อยู่ใน Wiki ฉันทำได้ดี😀

    2.    พวกเขาพกพา dijo

      หากคุณจำได้คุณไม่จำเป็นต้องใส่มัน

  3.   pandev92 dijo

    ดีมาก osx ... OHH รอ XD

    1.    Elav dijo

      xDD ฉันต้องการให้ OSX เป็น KDE 😛ของฉัน

      1.    pandev92 dijo

        พรุ่งนี้.

        1.    Eliotime3000 dijo

          ฉันเห็นด้วยกับ @elav เนื่องจากอินเทอร์เฟซ Aqua ของ OSX ใช้วิดีโอ 256 MB เทียบกับ KDE ที่มีขนาดตั้งแต่ 96 MB (ขั้นต่ำที่รองรับ) และ 128 MB (ขั้นต่ำที่แนะนำ)

          ใน Slackware KDE ทำงานด้วยวิดีโอ 96 MB เช่นเดียวกับที่มี 128 MB ระหว่างรสนิยมและสีสัน ...

          1.    pandev92 dijo

            ฉันไม่สนใจเรื่องการบริโภคฉันซื้อโมดูล 4 gb อีกตัวและนั่นคือ XDD

          2.    pandev92 dijo

            ในวิดีโอการ์ดใด ๆ ในช่วง 4 ปีที่ผ่านมามาพร้อมกับ 1 gb ddr2 หรือ ddr3 xD .. สูงสุด nvidia gt610 ที่ 40 ยูโร

          3.    Eliotime3000 dijo

            @ pandev92:

            ฉันอาศัยอยู่ในประเทศแถบลาตินอเมริกาที่กำลังซื้อจำกัดความเป็นไปได้ในการได้มาซึ่งการ์ดแสดงผลที่ดีสำหรับคนทั่วไป แต่ฉันต้องการใช้ Gigabyte กับชิปเซ็ต Intel (ในตัวมันเป็นแบรนด์เมนบอร์ดที่ดีที่สุดที่ฉันมี ใช้แล้ว)

          4.    ซาเวียร์ dijo

            เห็นได้ชัดว่ากำลังซื้อไม่สำคัญกับ pandev92 ไม่ต้องพูดถึง XD

  4.   ราศีสิงห์ dijo

    Arch ไม่ซับซ้อนคุณต้องมีเวลาอ่านวิกิอีกเล็กน้อย

    1.    Eliotime3000 dijo

      ในตัวเอง Arch คือ KISS และ RTFM ในเวลาเดียวกัน (คุณมักจะพึ่งพาการอัปเดตวิกิเพื่อหลีกเลี่ยงการแก้ไขใด ๆ ที่ทำกับกระบวนการอัปเดต)

  5.   pandev92 dijo

    ไม่ใช่ว่ามันซับซ้อนหรือไม่เพียง แต่ไม่เหมาะกับผู้ใช้ปลายทาง

    1.    Eliotime3000 dijo

      หากคุณไม่ต้องการอยู่ในโหมด RTFM (Read The Fucking Manual) ให้ใช้ Mint ดีกว่า

    2.    ซาเวียร์ dijo

      นั่นไม่ใช่สำหรับผู้ใช้ปลายทางฉันไม่สนใจ XD

  6.   เบอร์นี dijo

    คุณควรปล่อยชุดนโยบายไว้เช่นนี้ดังนั้นตรวจสอบว่าอยู่ในกลุ่มหรือไม่และแค่นั้นแหละ
    ดังนั้นหากคุณมีผู้ใช้มากกว่าหนึ่งคนก็จะให้สิทธิ์การเข้าถึงหากอยู่ในกลุ่มแม้ว่าฉันจะใช้เครื่องสำหรับตัวเองเท่านั้น แต่ฉันมีผู้ใช้หลายคนสำหรับโครงการต่างๆหากคุณตั้งเป็นผู้ใช้มันจะไปกับผู้ใช้นั้นเท่านั้น

    อวยพร

    polkit.addRule (ฟังก์ชัน (การกระทำเรื่อง) {
    ถ้า (action.id == "org.libvirt.unix.manage" &&
    subject.isInGroup ("libvirt")) {
    ส่งคืน polkit ผลลัพธ์ใช่;
    }
    });

    1.    เบอร์นี dijo

      ฉันใส่ libvirt กลุ่ม แต่คุณสามารถใส่กลุ่มที่คุณต้องการในกรณีของคุณ kvm หรือ polkitd

  7.   Xoslog dijo

    สวัสดีมีใครรู้บ้างว่าทำไม kvm จึงให้ข้อผิดพลาดนี้:

    ไม่สามารถทำการติดตั้งให้เสร็จสมบูรณ์: 'ข้อผิดพลาดภายใน: กระบวนการสิ้นสุดลงขณะเชื่อมต่อกับมอนิเตอร์: อุปกรณ์ถ่านเปลี่ยนเส้นทางไปที่ / dev / pts / 0 (label charserial0)
    qemu-system-x86_64: -drive file = / home / zpabuin / Downloads / Fedora-Live-LXDE-x86_64-19-1.iso, if = none, id = drive-ide0-1-0, readonly = on, format = raw: ไม่สามารถเปิดดิสก์อิมเมจ /home/zpabuin/Descargas/Fedora-Live-LXDE-x86_64-19-1.iso: ปฏิเสธการอนุญาต
    '

    Traceback (โทรล่าสุดล่าสุด):
    ไฟล์ "/usr/share/virt-manager/virtManager/asyncjob.py" บรรทัดที่ 100 ใน cb_wrapper
    โทรกลับ (asyncjob, * args, ** kwargs)
    ไฟล์ "/usr/share/virt-manager/virtManager/create.py" บรรทัด 1920 ใน do_install
    guest.start_install (เท็จเมตร = เมตร)
    ไฟล์ "/usr/share/virt-manager/virtinst/Guest.py" บรรทัด 1134 ใน start_install
    โนบุท)
    ไฟล์ "/usr/share/virt-manager/virtinst/Guest.py" บรรทัด 1202 ใน _create_guest
    dom = self.conn.createLinux (start_xml หรือ final_xml, 0)
    ไฟล์ "/usr/lib/python2.7/site-packages/libvirt.py" บรรทัด 2892 ใน createLinux
    ถ้า ret เป็น None: เพิ่ม libvirtError ('virDomainCreateLinux () failed', conn = self)
    libvirtError: ข้อผิดพลาดภายใน: กระบวนการสิ้นสุดลงขณะเชื่อมต่อกับมอนิเตอร์: อุปกรณ์ char เปลี่ยนเส้นทางไปยัง / dev / pts / 0 (label charserial0)
    qemu-system-x86_64: -drive file = / home / zpabuin / Downloads / Fedora-Live-LXDE-x86_64-19-1.iso, if = none, id = drive-ide0-1-0, readonly = on, format = raw: ไม่สามารถเปิดดิสก์อิมเมจ /home/zpabuin/Descargas/Fedora-Live-LXDE-x86_64-19-1.iso: ปฏิเสธการอนุญาต

    ขอบคุณโดยวิธีที่ Virtinst เป็นแพ็คเกจที่ล้าสมัยในซุ้มประตูตั้งแต่เดือนพฤษภาคมและไม่จำเป็น

  8.   ซาเวียร์ dijo

    ถาม ...

    เมื่อฉันพยายามยกโมดูลเคอร์เนล kvm-intel (ซึ่งเป็นโปรเซสเซอร์ที่ฉันมี) มันบอกฉัน:

    modprobe: ERROR: ไม่สามารถแทรก 'kvm_intel': ไม่รองรับการทำงาน

    เมื่อมองในระบบของฉันฉันสังเกตเห็นว่ามีโมดูล kvm-intel อยู่
    /usr/lib/modules/3.10.10-1-ARCH/เคอร์เนล/arch/x86/kvm/kvm-intel.ko.gz

    (และใช่เรียกใช้ egrep -c "(svm | vmx)" / proc / cpuinfo เป็นที่แน่นอนว่าควรรองรับการจำลองเสมือนที่นี่)

    คำถามของฉันมีสองเท่า:

    - ฉันไม่จำเป็นต้องเปิด / เปิดบางอย่างในเคอร์เนลของฉันเพื่อรองรับสิ่งนี้?
    - ระบบของฉันเป็น 64 บิตและฉันเห็นว่าโมดูลอยู่ใน x86 เป็นเพราะเหตุนี้หรือไม่? ในกรณีนี้ฉันถามว่ามีโมดูล 64 บิตที่ฉันสามารถติดตั้งและหยุดจู้จี้ฉันได้หรือไม่?

    ขอบคุณล่วงหน้า!

    1.    ซาเวียร์ dijo

      แก้ไขปัญหาได้ฉันต้องเปิดใช้งานการจำลองเสมือนใน BIOS ของระบบของฉัน ... 🙂

      Gracias!

  9.   ลีโอนาร์โดพีซี1991 dijo

    ฉันเข้าใจว่าไม่พบไฟล์นี้« Virtinst »

    1.    เมย์เคล 535 dijo

      แพ็คเกจที่ดีที่สุดที่ฉันไม่ได้ติดตั้งเพราะไม่ได้อยู่ใน repos อีกต่อไป

      ฉันได้รับข้อผิดพลาดเดียวกันกับ Xorlogs:

      ไม่สามารถทำการติดตั้งให้เสร็จสมบูรณ์: 'ข้อผิดพลาดภายใน: กระบวนการสิ้นสุดลงขณะเชื่อมต่อกับมอนิเตอร์: qemu-system-x86_64: -drive file = / home / maykel / archlinux-2013.10.01-dual.iso, if = none, id = drive-ide0 -1-0, readonly = on, format = raw: ไม่สามารถเปิดดิสก์อิมเมจ /home/maykel/archlinux-2013.10.01-dual.iso: ปฏิเสธการอนุญาต
      '

      Traceback (โทรล่าสุดล่าสุด):
      ไฟล์ "/usr/share/virt-manager/virtManager/asyncjob.py" บรรทัดที่ 100 ใน cb_wrapper
      โทรกลับ (asyncjob, * args, ** kwargs)
      ไฟล์ "/usr/share/virt-manager/virtManager/create.py" บรรทัด 1920 ใน do_install
      guest.start_install (เท็จเมตร = เมตร)
      ไฟล์ "/usr/share/virt-manager/virtinst/Guest.py" บรรทัด 1134 ใน start_install
      โนบุท)
      ไฟล์ "/usr/share/virt-manager/virtinst/Guest.py" บรรทัด 1202 ใน _create_guest
      dom = self.conn.createLinux (start_xml หรือ final_xml, 0)
      ไฟล์ "/usr/lib/python2.7/site-packages/libvirt.py" บรรทัด 2897 ใน createLinux
      ถ้า ret เป็น None: เพิ่ม libvirtError ('virDomainCreateLinux () failed', conn = self)
      libvirtError: ข้อผิดพลาดภายใน: กระบวนการสิ้นสุดขณะเชื่อมต่อกับจอภาพ: qemu-system-x86_64: -drive file = / home / maykel / archlinux-2013.10.01-dual.iso, if = none, id = drive-ide0 -1 -0, readonly = on, format = raw: ไม่สามารถเปิดดิสก์อิมเมจ /home/maykel/archlinux-2013.10.01-dual.iso: ปฏิเสธการอนุญาต

      1.    Elav dijo

        ตอนนี้สิ่งที่ฉันติดตั้งคือ:

        - libvirt
        - libvirt-glib
        - ผู้จัดการที่ดี
        - Virtviewer

        ตรวจสอบ😉

        1.    เมย์เคล 535 dijo

          ปรับปรุงซุ้มแล้วหรือยัง ?? คุณได้เห็นข้อผิดพลาดที่ดีใน Virt-manager ด้วยการอัพเดต Virt-manager 0.10.0-4

          ข้อผิดพลาด: วัตถุ "NoneType" ไม่มีแอตทริบิวต์ "__getitem__"

          https://bugs.archlinux.org/task/37990

  10.   นักเล่นแร่แปรธาตุ dijo

    บทช่วยสอนของคุณใช้ได้ดีและต้องขอบคุณ Virt-manager ที่ทำงานได้โดยแทบไม่มีปัญหาในบันทึกย่อของคุณคุณไม่ได้อธิบายว่ามีการเพิ่มสิทธิ์. img อะไรบ้างและฉันไม่สามารถสร้างเครื่องเสมือนได้

  11.   เอโดะ dijo

    ไม่มีแพ็คเกจที่ดีที่สุดมันยังบอกฉันว่า "openbsd-netcat และ gnu-netcat ขัดแย้งกัน เอา gnu-netcat? [y / n] 'ฉันจึงออกจาก gnu-netcat ไม่ได้?

  12.   มานูเอล dijo

    สวัสดีฉันมี samsung chromebook รุ่นที่ฉันคิดว่าเป็น Snow Clear ฉันต้องการทราบว่า Qemu สามารถติดตั้งบนฐาน ARM ได้หรือไม่ฉันรู้วิธีการติดตั้ง ubuntu ในความเป็นจริงฉันถอนการติดตั้งเพราะความจริงง่ายๆที่ฉันไม่สามารถเรียกใช้ ไฟล์ exe ไวน์ไม่ได้ทำงานบนฐานนี้เฉพาะกับ intel แต่ดูเหมือนว่าจะใช่ แต่ฉันไม่รู้วิธีการติดตั้ง: / หวังว่าคุณจะให้คำตอบเร็ว ๆ นี้ขอบคุณดีมาก

  13.   เอกภาพ dijo

    ถ้าจำไม่ผิด KVM ทำหน้าที่เร่ง qemu เนื่องจาก qemu เลียนแบบโปรเซสเซอร์ทั้งหมดจึงช้ากว่าเครื่องเสมือนเช่น virtualbox ดังนั้นจากสิ่งที่ฉันรู้ว่า KVM ทำให้ qemu ทำงานเหมือนเครื่องเสมือนเมื่อสถาปัตยกรรมของแขกเหมือนกับโฮสต์ เปล่า?. น่าสนใจบทความนี้

    คิวมูร็อกซ์ !!

    อาศิรพจน์

  14.   โรแบร์โต dijo

    สวัสดีตอนบ่ายขอบคุณสำหรับบทช่วยสอนที่ฉันกำลังมองหา แต่ฉันต้องการให้คุณช่วยแนะนำวิธีการติดตั้งเครื่องเสมือนบนดิสก์ภายนอกไม่ใช้พื้นที่ทางกายภาพของโฮสต์ขอบคุณ

  15.   เพจ Asgardius dijo

    ในส่วนที่เปิดใช้งานโมดูลเคอร์เนลด้วย modprobe สิ่งที่สอดคล้องกับ cpu จะถูกเปิดใช้งานจริงเนื่องจาก kvm ใช้คำแนะนำการจำลองเสมือนของ cpu ในการทำงาน ฉันมีพีซีที่มีซีพียู intel และ amd gpu และมันใช้งานได้สำหรับฉัน