Giter VIP home page Giter VIP logo

Comments (1)

cloudymax avatar cloudymax commented on May 23, 2024

Thanks for the heads up!

I tried to reproduce the issue on my end but was unable to, i'll list the steps I followed for testing the image below.

Requirements

You will need to have a VNC client (tigerVNC or Remmina etc...) installed as well as the following packages:

    sudo apt-get install -y qemu-kvm \
        bridge-utils \
        virtinst\
        ovmf \
        qemu-utils \
        cloud-image-utils \
        ubuntu-drivers-common \
        whois \
        git \
        guestfs-tools
  • You will need to replace my host IP (192.168.50.100) with your own.
  • Also change the path to the ISO file to match your system.
  • I have also set this VM to forward ssh over port 1234 instead of 22, feel free to change that as well.

Steps to Reproduce

  1. Do fresh clone of the pxeless repo

  2. Create the iso with

    docker run --rm --volume "$(pwd):/data" --user $(id -u):$(id -g) deserializeme/pxeless -a -u user-data.basic -n jammy
  3. Create a virtual disk with

    qemu-img create -f qcow2 hdd.img 8G
  4. Create a test VM to boot the ISO files with

    sudo qemu-system-x86_64 -machine accel=kvm,type=q35 \
    -cpu host,kvm=off,hv_vendor_id=null \
    -smp 2,sockets=1,cores=1,threads=2,maxcpus=2 \
    -m 2G \
    -cdrom /home/max/repos/pxeless/ubuntu-autoinstall.iso \
    -object iothread,id=io1 \
    -device virtio-blk-pci,drive=disk0,iothread=io1 \
    -drive if=none,id=disk0,cache=none,format=qcow2,aio=threads,file=hdd.img \
    -netdev user,id=network0,hostfwd=tcp::1234-:22 \
    -device virtio-net-pci,netdev=network0 \
    -serial stdio -vga virtio -parallel none \
    -bios /usr/share/ovmf/OVMF.fd \
    -usbdevice tablet \
    -vnc 192.168.50.100:0
  5. Select "Try or install Ubuntu" from the grub pop-up
    Screenshot 2022-12-29 at 06 57 01

  6. Connect to the VM using VNC so we can watch the grub process run.

    Screenshot 2022-12-29 at 07 01 06
  7. After the install process completes and the VM reboots, select the "Boot from next volume" grub option to prevent installing again

    Screenshot 2022-12-29 at 06 58 50
  8. I was then able to log into he machine using vmadmin and password for the credentials

    Screenshot 2022-12-29 at 07 00 01
  9. Finally i tried to SSH to the machine (since the vm I created is using SLIRP networking I have to reach it via a forwarded port)

    Screenshot 2022-12-29 at 07 05 58

Final Thoughts

The most common issues I run into with this process are improperly formatted yaml in the user-data file, and errors in the process of burning the ISO to a USB drive.

In those cases, the machine will perform a partial install but instead of seeing pxeless login: as the machine name at login it will still say ubuntu login:.

I prefer to use Etcher to create the USB drives on MacOS and dd on Linux as they seem to cause the fewest errors.

If your install makes it through Ubiquiti and into the Cloud-Init phase then the debugging steps here can be helpful tracking down the errors.

Hope this helps!

from pxeless.

Related Issues (16)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.