Bagaimana menjalankan Ubuntu 16.04 ARM di QEMU?

9

Tujuan saya adalah menjalankan Ubuntu 16.04 (ARM) di Qemu (di host Ubuntu 16.04 x64).

Saya mencoba mengikuti tutorial -old- ini tanpa hasil:

Home directory not accessible: Permission denied
pulseaudio: pa_context_connect() failed
pulseaudio: Reason: Connection refused
pulseaudio: Failed to initialize PA contextaudio: Could not init `pa' audio driver
Could not initialize SDL(No available video device) - exiting

Alih-alih debian_squeeze_armel_standard.qcow2gambar yang digunakan di sana, saya menggunakan ubuntu-16.04-preinstalled-server-armhf + raspi2.img .

Lupa tentang artikel yang disebutkan di atas, yang merupakan cara yang benar untuk menjalankan Ubuntu 16.04-arm di atas Qemu?

Jika tidak mungkin menjalankannya dengan mudah di Qemu, apakah ada alternatif lain?

lepe
sumber

Jawaban:

0

Ini tidak akan berfungsi karena Gambar yang Anda gunakan sudah dikompilasi sebelumnya untuk perangkat Raspberry Pi 2 dan hanya akan berfungsi pada Raspberry Pi 2. Coba tutorial ini

Rustam Isaev
sumber
Terima kasih. Saya akan mencobanya nanti. Saya pikir itu akan menjawab pertanyaan saya.
lepe
1

Dalam jawaban ini: Apakah ada gambar Ubuntu QEMU prebuilt (32bit) online? Saya telah menjelaskan pengaturan kerja berikut untuk Ubuntu 18.04 guest / host:

  • cloud image arm64: pengaturan tercepat untuk memulai
  • debootstrap arm64: cukup cepat, tetapi memungkinkan untuk lebih banyak penyesuaian gambar

Pengaturan tersebut memberikan gambar disk prebuilt, dan tidak melalui installer. Mereka adalah pilihan terbaik yang pernah saya lihat sejauh ini.

Selanjutnya, saya juga berhasil menjalankan image server arm64 di QEMU. Namun, ini berjalan melalui penginstal, yang merupakan batas tidak praktis untuk dilakukan, kecuali Anda tidak berada pada host ARM dengan KVM. Ini sangat menyakitkan karena lusinan interaksi diperlukan untuk menyelesaikan instalasi.

Berikut ini skrip server, yang diuji pada host Ubuntu 18.10:

#!/usr/bin/env bash

set -eux

# Tested on Ubuntu 18.10.
# - /superuser/942657/how-to-test-arm-ubuntu-under-qemu-the-easiest-way
# - /ubuntu/797599/how-to-run-ubuntu-16-04-arm-in-qemu

# Parameters.
id=ubuntu-18.04.1-server-arm64
#id=debian-9.6.0-arm64-xfce-CD-1
img="${id}.img.qcow2"
img_snapshot="${id}.img.snapshot.qcow2"
iso="${id}.iso"
flash0="${id}-flash0.img"
flash1="${id}-flash1.img"

# Images.
if [ ! -f "$iso" ]; then
  wget "http://cdimage.ubuntu.com/releases/18.04/release/${iso}"
fi
if [ ! -f "$img" ]; then
  qemu-img create -f qcow2 "$img" 1T
fi
if [ ! -f "$img_snapshot" ]; then
  qemu-img \
    create \
    -b "$img" \
    -f qcow2 \
    "$img_snapshot" \
  ;
fi
if [ ! -f "$flash0" ]; then
  dd if=/dev/zero of="$flash0" bs=1M count=64
  dd if=/usr/share/qemu-efi/QEMU_EFI.fd of="$flash0" conv=notrunc
fi
if [ ! -f "$flash1" ]; then
  dd if=/dev/zero of="$flash1" bs=1M count=64
fi

# Run.
#
# cdrom must be scsi or else the installation fails midway with:
#
# > Detect and mount CD-ROM
# >
# > Your installation CD-ROM couldn't be mounted. This probably means
# > that the CD-ROM was not in the drive. If so you can insert it and try
# > again.
# >
# > Retry mounting the CD-ROM?
# > Your installation CD-ROM couldn't be mounted.
#
# This is because the drivers for the default virtio are not installed in the ISO,
# because in the past it was not reliable on qemu-system-aarch64.
#
# See also:
# https://bazaar.launchpad.net/~ubuntu-testcase/ubuntu-manual-tests/trunk/view/head:/testcases/image/1688_ARM64_Headless_KVM_Guest
qemu-system-aarch64 \
  -cpu cortex-a57 \
  -device rtl8139,netdev=net0 \
  -device virtio-scsi-device \
  -device scsi-cd,drive=cdrom \
  -device virtio-blk-device,drive=hd0 \
  -drive "file=${iso},id=cdrom,if=none,media=cdrom" \
  -drive "if=none,file=${img_snapshot},id=hd0" \
  -m 2G \
  -machine virt \
  -netdev user,id=net0 \
  -nographic \
  -pflash "$flash0" \
  -pflash "$flash1" \
  -smp 2 \
;

GitHub hulu .

Lihat juga ini untuk emulasi Raspberry Pi: /programming/28880833/how-to-emulate-the-raspberry-pi-2-on-qemu/45814913#45814913

desktop amd64 ditampilkan di: Bagaimana menjalankan Desktop Ubuntu 16.04 di QEMU?

Ciro Santilli 冠状 病毒 审查 六四 事件 法轮功
sumber