VM को गुण-संस्थापन के साथ कमांड लाइन से स्थापित करें


16

अस्वीकरण :

अब मैं virt-managerअपने VM को बनाने और प्रबंधित करने के लिए उपयोग करता हूं और यह वास्तव में एक जीवन रक्षक है। इसका उपयोग दूरस्थ रूप से किया जा सकता है (तीसरी मशीन से, आमतौर पर आपके वर्कस्टेशन से) यदि होस्ट में चित्रमय प्रदर्शन नहीं है।

vncइंस्टॉलेशन ट्यूटोरियल्स में होने वाली घटनाओं से मुझे लगता है कि मुझे "अनुशंसित" प्रक्रिया में होस्ट, गेस्ट या दोनों पर एक्स सामान की आवश्यकता थी। बिलकुल नहीं। मेरी गलती। यदि आप एक ही स्थिति में हैं, तो VM को कमांड लाइन से स्थापित करने का प्रयास करने से पहले दो बार सोचें।


मैं एक डेबियन मेजबान में डेबियन वीएम को स्थापित करने की कोशिश कर रहा हूं virt-installऔर मैं नहीं जानता कि इसे .iso छवि कैसे पारित किया जाए।

virt-install --connect qemu:///system --virt-type kvm --name prod --ram 6144 --disk /srv/vm/prod.qcow,format=qcow2,size=10 --location=/home/jerome/debian-8.0.0-amd64-netinst.iso --network bridge=br0 --os-type linux --os-variant debianwheezy --extra-args='console=tty0 console=ttyS0,115200n8 serial'

Starting install...
Retrieving file info...                                                                                                                                         |  160 B     00:00 ... 
ERROR    Could not find an installable distribution at '/home/jerome/debian-8.0.0-amd64-netinst.iso'
The location must be the root directory of an install tree.
Domain installation does not appear to have been successful.
If it was, you can restart your domain by running:
  virsh --connect qemu:///system start prod
otherwise, please restart your installation.
root@versailles:/etc# 

मैंने जो समाधान देखे हैं, वे काफी मुड़ते हुए प्रतीत होते हैं, जैसे स्थानीय रूप से .iso छवि का उपयोग करने के लिए अपाचे का उपयोग करना जैसे कि वह दूर की जगह से हो।

मुझे विश्वास नहीं हो रहा है कि यह जटिल है। क्या यह?

man virt-install कहते हैं:

If you want to use those options with CDROM media, you have a few options:

         * Run virt-install as root and do --location ISO

         * Mount the ISO at a local directory, and do --location DIRECTORY

         * Mount the ISO at a local directory, export that directory over local http, and do --location http://localhost/DIRECTORY

क्या यह मैं नहीं कर रहा हूँ?

कोई कहता है कि वह .iso / cdrom में चला गया और यह काम कर गया, लेकिन मुझे समझ में नहीं आया कि उसने क्या किया और मैं पुन: पेश नहीं कर सका।

मैं उपयोग नहीं कर सकते --cdromकरने के बजाय --locationके रूप में इस सवाल क्योंकि --extra-argsअगर साथ निर्दिष्ट केवल काम --location

virt-install --connect qemu:///system --virt-type kvm --name prod --ram 6144 --disk /srv/vm/prod.qcow,format=qcow2,size=10 --cdrom=/home/jerome/debian-8.0.0-amd64-netinst.iso --network bridge=br0 --os-type linux --os-variant debianwheezy --extra-args='console=tty0 console=ttyS0,115200n8 serial'
ERROR    --extra-args only work if specified with --location. See the man page for examples of using --location with CDROM media

संपादित करें:

के साथ लॉग इन करें --debug

virt-install --connect qemu:///system --virt-type kvm --name prod --ram 6144 --disk /srv/vm/prod.qcow,format=qcow2,size=10 --location=/home/jerome/debian-8.0.0-amd64-netinst.iso --network bridge=br0 --os-type linux --os-variant debianwheezy --extra-args='console=tty0 console=ttyS0,115200n8 serial' --debug
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (cli:187) Launched with command line: /usr/share/virt-manager/virt-install --connect qemu:///system --virt-type kvm --name prod --ram 6144 --disk /srv/vm/prod.qcow,format=qcow2,size=10 --location=/home/jerome/debian-8.0.0-amd64-netinst.iso --network bridge=br0 --os-type linux --os-variant debianwheezy --extra-args=console=tty0 console=ttyS0,115200n8 serial --debug
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (cli:195) Requesting libvirt URI qemu:///system
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (cli:199) Received libvirt URI qemu:///system
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (virt-install:193) Requesting virt method 'default', hv type 'kvm'.
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (virt-install:432) Received virt method 'kvm'
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (virt-install:433) Hypervisor name is 'hvm'
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (cli:476) DISPLAY is not set: defaulting to nographics.
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (guest:208) Setting Guest.os_variant to 'debianwheezy'
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (diskbackend:171) Path '/srv/vm' is target for pool 'srv-kvm'. Creating volume 'prod.qcow'.
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (connection:228) Fetching volume XML failed: Storage volume not found: no storage vol with matching path '/media/cdrom0/debian-8.0.0-amd64-netinst.iso'
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (virt-install:551) Guest.has_install_phase: True

Starting install...
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (distroinstaller:417) Using scratchdir=/var/lib/libvirt/boot
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:204) Preparing mount at /var/lib/libvirt/boot/virtinstmnt.srz86f
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:214) mount cmd: ['/bin/mount', '-o', 'ro,loop', '/home/jerome/debian-8.0.0-amd64-netinst.iso', '/var/lib/libvirt/boot/virtinstmnt.srz86f']
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:302) Finding distro store for location=/home/jerome/debian-8.0.0-amd64-netinst.iso
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/.treeinfo
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:325) Prioritizing distro store=<class 'virtinst.urlfetcher.DebianDistro'>
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/current/images/MANIFEST
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/daily/MANIFEST
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/Fedora
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:99) Fetching URI: /var/lib/libvirt/boot/virtinstmnt.srz86f/.disk/info
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:110) Saved file to /var/lib/libvirt/boot/virtinst-info.lZMVqL
Retrieving file info...                                                                                                                                                                                                  |  160 B     00:00 ... 
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:1016) Regex didn't match, not a ALT Linux distro
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/current/images/MANIFEST
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/install/netboot/version.info
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/SL
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/directory.yast
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/CentOS
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/VERSION
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/Server
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/Client
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/RedHat
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/images/pxeboot/vmlinuz
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/images/boot.iso
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/boot/boot.iso
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/current/images/netboot/mini.iso
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:183) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.srz86f/install/images/boot.iso
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (urlfetcher:225) Cleaning up mount at /var/lib/libvirt/boot/virtinstmnt.srz86f
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (cli:234)   File "/usr/share/virt-manager/virt-install", line 876, in <module>
    sys.exit(main())
  File "/usr/share/virt-manager/virt-install", line 870, in main
    start_install(guest, continue_inst, options)
  File "/usr/share/virt-manager/virt-install", line 588, in start_install
    fail(e, do_exit=False)
  File "/usr/share/virt-manager/virtinst/cli.py", line 234, in fail
    logging.debug("".join(traceback.format_stack()))

[mer., 03 juin 2015 17:46:12 virt-install 12991] ERROR (cli:235) Could not find an installable distribution at '/home/jerome/debian-8.0.0-amd64-netinst.iso'
The location must be the root directory of an install tree.
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (cli:237) 
Traceback (most recent call last):
  File "/usr/share/virt-manager/virt-install", line 560, in start_install
    dom = guest.start_install(meter=meter, noboot=options.noreboot)
  File "/usr/share/virt-manager/virtinst/guest.py", line 384, in start_install
    self._prepare_install(meter, dry)
  File "/usr/share/virt-manager/virtinst/guest.py", line 277, in _prepare_install
    util.make_scratchdir(self.conn, self.type))
  File "/usr/share/virt-manager/virtinst/installer.py", line 201, in prepare
    self._prepare(guest, meter, scratchdir)
  File "/usr/share/virt-manager/virtinst/distroinstaller.py", line 444, in _prepare
    self._prepare_kernel_url(guest, fetcher)
  File "/usr/share/virt-manager/virtinst/distroinstaller.py", line 347, in _prepare_kernel_url
    store = urlfetcher.getDistroStore(guest, fetcher)
  File "/usr/share/virt-manager/virtinst/urlfetcher.py", line 346, in getDistroStore
    fetcher.location))
ValueError: Could not find an installable distribution at '/home/jerome/debian-8.0.0-amd64-netinst.iso'
The location must be the root directory of an install tree.
[mer., 03 juin 2015 17:46:12 virt-install 12991] DEBUG (cli:248) Domain installation does not appear to have been successful.
If it was, you can restart your domain by running:
  virsh --connect qemu:///system start prod
otherwise, please restart your installation.
Domain installation does not appear to have been successful.
If it was, you can restart your domain by running:
  virsh --connect qemu:///system start prod
otherwise, please restart your installation.

यह काम करता है, --location http://ftp.us.debian.org/debian/dists/stable/main/installer-amd64/लेकिन जब स्थानीय रूप से एक .iso छवि उपलब्ध होती है, तो ऐसा करना कोई शर्म की बात नहीं है?

  • ट्रैसेबिलिटी का नुकसान: आप बाद में यह सुनिश्चित नहीं कर सकते हैं कि आपको ठीक वही स्रोत मिले।

  • सर्वरों / दर्पणों से बैंडविड्थ का गुणा उपयोग।

  • इंटरनेट के उपयोग की आवश्यकता है।

  • और धीमा।


आप सही हैं, लेकिन आप apt-cacher-ng , या apt-mirror या ftpsync का उपयोग करके एक पूर्ण दर्पण का उपयोग करके स्थानीय पैकेज कैश सर्वर का निर्माण करके कुछ कमियों को कम कर सकते हैं । वास्तव में सीडी / डीवीडी / बीडी वितरण केवल डेबियन के महान पैकेज संग्रह का एक छोटा सा उप-समूह है, यह अवांछनीय रूप से इसके लाभों को खराब करता है और हमें परेशान करता है। इसलिए कई लोग अपने स्थानीय दर्पण को बनाए रखने और स्थापित होने की शुरुआत से इसकी पूर्णता का आनंद लेते हैं।
ययागशी

यह पुण्य-प्रबंधक 1.4.3 ( कमिट ) में तय किया गया था ।
टॉम

जवाबों:


6

virt-installआईएसओ छवि से कर्नेल और initrd फ़ाइलों को निकालने का प्रयास करता है। इसके साथ --debugआप इसकी संपूर्ण गतिविधियों को देख सकते हैं जिसमें लूप-माउंटिंग, उन फ़ाइलों की खोज, आदि शामिल हैं।

Starting install...
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (Installer:182) scratchdir=/var/lib/libvirt/boot
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:184) Preparing mount at /var/lib/libvirt/boot/virtinstmnt.dwcpql
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (OSDistro:65) Attempting to detect distro:
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/.treeinfo
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/Fedora
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/Server
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/Client
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/RedHat
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/CentOS
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/SL
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/directory.yast
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/current/images/MANIFEST
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/daily/MANIFEST
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/current/images/MANIFEST
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/install/netboot/version.info
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/initrd.gz
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (OSDistro:990) Doesn't look like an Ubuntu Distro.
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/VERSION
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/VERSION
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/boot/platform/i86xpv/kernel/unix
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/platform/i86xpv/kernel/unix
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/STARTUP/XNLOADER.SYS
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/images/pxeboot/vmlinuz
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/images/boot.iso
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/boot/boot.iso
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/current/images/netboot/mini.iso
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:169) local hasFile: Couldn't find /var/lib/libvirt/boot/virtinstmnt.dwcpql/install/images/boot.iso
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] DEBUG (ImageFetcher:205) Cleaning up mount at /var/lib/libvirt/boot/virtinstmnt.dwcpql
[Wed, 03 Jun 2015 07:56:40 virt-install 29692] ERROR (cli:445) Could not find an installable distribution at '/home/yaegashi/debian-8.0.0-amd64-netinst.iso'

मुझे लगता virt-installहै कि डेबियन नेटस्टोन आईएसओ छवियों का समर्थन नहीं करता --location(लेकिन किसी तरह उबंटू समर्थित है?)।

बूट करने के लिए के साथ एक गिरी --extra-args, virt-installजरूरतों उन कर्नेल और initrd फ़ाइलों इसी है। --cdromबस आईएसओ को अतिथि की सीडी ड्राइव में जोड़ देता है, जो काम करने के लिए अपर्याप्त है --extra-args

यदि आप उपयोग करना चाहते हैं --extra-args, तो मैं आपको अपने निकटतम दर्पण के डेबियन इंस्टॉलर URL को निर्दिष्ट करके "नेटबूट" कर्नेल / initrd फ़ाइलों का उपयोग करने की सलाह देता हूं, जैसे --location http://ftp.us.debian.org/debian/dists/stable/main/installer-amd64/कि मैनुअल में वर्णित है।


धन्यवाद। आपके उत्तर को स्वीकार करना क्योंकि ऐसा लगता है कि कोई सरल तरीका नहीं है, लेकिन मुझे लगता है कि इस पद्धति में समस्याएँ हैं (तदनुसार अद्यतन किया गया प्रश्न)।
Jérôme

यह निश्चित रूप से काम करेगा, लेकिन मुझे नहीं लगता कि यह इस सवाल का जवाब देता है कि स्थानीय आइसो से कैसे स्थापित किया जाए, जो आपको इंटरनेट एक्सेस नहीं होने पर करने की आवश्यकता हो सकती है।
रिक चैथम

ध्यान दें कि यह एक आईएसओ का लिंक नहीं है, यह एक लिंक है ... एक निर्देशिका संरचना है जिसमें आईएसओ शामिल है। मुझे यह पता लगाने की कोशिश करता है। यह केवीएम-सेंटोस की तुलना में केवीएम-डेबियन पर अलग तरीके से क्यों काम करता है (जो मैं अभी-अभी स्थानांतरित हुआ) मुझे कोई पता नहीं है, लेकिन यह काम करता है (अभी भी, 2019 में)।
चैम एलियाह

8

इस विधि ने मेरे लिए काम किया:

virt-install --name=centos \
--memory=8196 --vcpus=2 \
--location=/var/lib/libvirt/images/CentOS-7-x86_64-Minimal-1511.iso \
--disk /var/lib/libvirt/images/centos7.qcow2,device=disk,bus=virtio,size=8 \
--network bridge:br0 \
--os-type=linux  \
--nographics \
--extra-args='console=tty0 console=ttyS0,115200n8 serial'

2
व्यक्तिगत पसंदीदा उत्तर। मेरे लिए समझने के लिए बहुत आसान प्रस्तुति। धन्यवाद!
बिटोफागोब

1
यह सेंटोस के साथ बहुत अच्छा काम करता है, लेकिन यह डेबियन या उबंटू आईएसओ फाइलों के साथ काम नहीं करता है। मूल प्रश्न में वर्णित के अनुसार आपको वही समस्या मिलेगी। समाधान के लिए URL को एक इंस्टॉलर के स्थान पर निर्दिष्ट करना है --location ftp.us.debian.org/debian/dists/stable/main/installer-amd64
GeraldScott

1

अंतर iso फ़ाइलों में है जो उपयोग किया जाता है।

यह उस तरीके से संबंधित नहीं virt-installहै जिसका उपयोग किया जाता है ( स्थानीय --locationURL --locationफ़ाइल के लिए पथ के साथ उपयोग किए गए http URL के साथ)।

यहाँ एक आदेश है कि काम करता है का उपयोग करते समय है डेबियन ऑनलाइन खजाने के रूप में --location(स्थापना को पूरा करने तक पहले बूट (फिर दो अन्य कदम अंत में नई वी एम में प्राप्त करने के लिए आवश्यक हैं उत्पादन हो रही शामिल है, लेकिन है कि एक और कहानी है):

virt-install --virt-type kvm --name test8 --memory 2048 --disk path=/var/lib/libvirt/images/test8-1.qcow2,size=5 --disk path=/var/lib/libvirt/images/test8-2.qcow2,size=2 --location http://ftp.at.debian.org/debian/dists/stable/main/installer-amd64/ --graphics none --extra-args='console tty0 console=ttyS0,115200n8 serial'

आप ठीक उसी आदेश ले जा सकते हैं, लेकिन उल्लेख ऊपर का उपयोग कर Centos आईएसओ फ़ाइल के रूप में --locationहै, और यह (सिवाय स्थापना शुरू होता है --location का उपयोग कर के रूप में अच्छी तरह से काम करता है कि सीरियल कंसोल के लिए कनेक्शन पहली बार में काम करने के लिए नहीं लगता है, लेकिन सिद्धांत रूप में और आईएसओ फ़ाइल):

virt-install --virt-type kvm --name test8 --memory 2048 --disk path=/var/lib/libvirt/images/test8-1.qcow2,size=5 --disk path=/var/lib/libvirt/images/test8-2.qcow2,size=2 --location /softwarestorage/CentOS-7-x86_64-Minimal-1511.iso --graphics none --extra-args='console tty0 console=ttyS0,115200n8 serial'

आउटपुट है:

Starting install...
Retrieving file .treeinfo...                                                                                                                                                                | 2.2 kB     00:00 ... 
Retrieving file vmlinuz...                                                                                                                                                                  | 9.8 MB     00:00 ... 
Retrieving file initrd.img...                                                                                                                                                               |  73 MB     00:00 ... 
Creating domain...                                                                                                                                                                          |    0 B     00:00     
Connected to domain test8
Escape character is ^]

लेकिन आप का उपयोग करता है, तो डेबियन आईएसओ फ़ाइल के लिए --location, आप त्रुटि मिलती है:

virt-install --virt-type kvm --name test8 --memory 2048 --disk path=/var/lib/libvirt/images/test8-1.qcow2,size=5 --disk path=/var/lib/libvirt/images/test8-2.qcow2,size=2 --location /softwarestorage/debian-8.5.0-amd64-CD-1.iso --graphics none --extra-args='console tty0 console=ttyS0,115200n8 serial'

Starting install...
Retrieving file info...                                                                                                                                                                     |  150 B     00:00 ... 
ERROR    Could not find an installable distribution at '/softwarestorage/debian-8.5.0-amd64-CD-1.iso'
The location must be the root directory of an install tree.
Domain installation does not appear to have been successful.
If it was, you can restart your domain by running:
  virsh --connect qemu:///system start test8
otherwise, please restart your installation.

IMHO यह साबित करता है कि डेबियन आईएसओ के साथ कुछ गलत / कुछ "गलत" है (फिलहाल मुझे यकीन नहीं है कि मुझे यह कहां से मिला है, लेकिन शायद कोई भी एक ताजा डाउनलोड कर सकता है और परीक्षण दोहरा सकता है ...)


मुझे लगता है कि आप ... बहुत गलत हैं। अपने पहले उदाहरण में, आप एक FTP स्थान निर्दिष्ट कर रहे हैं, और अपने दूसरे उदाहरण में, आप एक स्थानीय ISO फ़ाइल निर्दिष्ट कर रहे हैं। ये दोनों दृष्टिकोण अलग-अलग हैं क्योंकि एफ़टीपी और एचटीटीपी यूआरएल के साथ, virt-installनिर्देशिका संरचना को "चलना" कर सकते हैं initrd.imgऔर kernel.img। स्थानीय आईएसओ के साथ, निर्देशिका संरचना को चलाने के लिए virst-installपहले आईएसओ होना चाहिए mount, और निश्चित रूप से, mountमनमाने ढंग से (गैर fstab) स्थानों को माउंट करने के लिए रूट एक्सेस की आवश्यकता होती है ।
देजय क्लेटन

@DejayClayton: वह सही है। मैंने पूरा दिन उबंटू 16.04 और 18.04, और सेंटोस 6 होस्ट पर, सेंटोस 6 होस्ट पर, ठीक उसी माउंट और एक्सपोर्ट प्रक्रिया का उपयोग करके, और --locationसभी 3 के लिए स्थापित करने में बिताया है । सेंटोस -6 virt-installउबंटू निर्देशिका संरचना को नहीं पहचानता है , और --debugआपको बताता है कि सेंटोस -7 शीर्ष स्तर में एक शामिल है .treeinfo, जो कि उन चीजों में से एक है जो virt-installदिखता है, इसलिए यह इसे बूट करने का प्रयास करता है। लेकिन बाद में विफल रहता है। मैं हैरान हूं कि यह सॉफ्टवेयर का **** का ढेर क्या है।
ईएमएल

1

निम्नलिखित ने मेरे लिए एक Ubuntu 16.04 होस्ट सिस्टम से डेबियन 10 स्थापित करने के लिए काम किया:

cd /usr/share/virt-manager/virtinst/
patch <<.
--- urlfetcher.py.orig 2019-07-25 13:54:37.496567791 +1200
+++ urlfetcher.py      2019-07-25 13:54:43.180373257 +1200
@@ -663,6 +663,8 @@
                 ]
     _hvm_paths = [("pxeboot/vmlinuz",
                     "images/pxeboot/initrd.img"),       # Fedora
+                  ("install.amd/vmlinuz",
+                    "install.amd/initrd.gz"),   # Debian
                 ]
     _iso_paths = ["images/boot.iso",                   # RH/Fedora
                    "boot/boot.iso",                     # Suse
.

virt-install ... --location=/srv/software/Debian/debian-10.0.0-amd64-netinst.iso --extra-args='console=tty0 console=ttyS0,115200n8'

0

यह बदसूरत है, खासकर यदि आप किकस्टार्ट फ़ाइलों का उपयोग करना चाहते हैं, लेकिन यहां मैंने इस प्रक्रिया को प्राप्त करने के लिए क्या किया है:

root@kvm:~# virt-install -n rhce2 -r 2048 --vcpus=1 --os-variant=rhel6 --accelerate -v --disk path=/var/lib/libvirt/images/RHCE2.img,size=100 -l /root/centos6.7.iso -x "ks=./ks1.cfg" --nographics

मैंने जो किया और जो आपने किया, उसके बीच मूल अंतर यह है कि मैंने अपने आईएसओ को इंगित करने के लिए --locationटैग ( -lसंक्षेप में) का उपयोग किया ।


यह बहुत गलत है। अंतर यह है कि वह डेबियन नेटइंस्टो आईएसओ फाइल से इंस्टॉल हो रहा है और आप इंस्टॉल कर रहे हैं RHCE2
18

0

हाल ही में इस मुद्दे में भाग गया। बस --location के साथ एक दूरस्थ इंस्टॉलर का उपयोग किया। मुझे इस बात पर जोर देना चाहिए कि आपके वायरल संस्करण के आधार पर, मैन पेज में दूरस्थ इंस्टालर के लिंक पुराने हो सकते हैं।

मैंने इस उदाहरण का अनुसरण किया और सब कुछ सुचारू रूप से चला: https://www.packet.com/developers/guides/kvm-and-lvvirt/

मेरे मामले में, मैंने http://us.archive.ubuntu.com/ubuntu/dists/xenial/main/installer-amd64/ में 'बायोनिक' के लिए 'xenial' को बदल दिया और इंस्टॉलेशन हो गया। अब से हर बार इस विधि का उपयोग करने जा रहे हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.