Làm cách nào để chạy Ubuntu 16.04 ARM trong QEMU?


9

Mục tiêu của tôi là chạy Ubuntu 16.04 (ARM) trong Qemu (trên máy chủ Ubuntu 16.04 x64).

Tôi đã cố gắng làm theo hướng dẫn -old- này mà không thành công:

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

Thay vì debian_squeeze_armel_standard.qcow2hình ảnh được sử dụng ở đó, tôi đã sử dụng ubfox-16.04-preinstalled-server-armhf + raspi2.img .

Quên về bài viết đã đề cập ở trên, đâu là cách chính xác để chạy Ubuntu 16.04-arm trên đầu Qemu?

Nếu không thể chạy nó qua Qemu một cách dễ dàng, có cách nào khác không?

Câu trả lời:


0

Điều này sẽ không hoạt động vì Hình ảnh bạn đang sử dụng được biên dịch sẵn cho thiết bị Raspberry Pi 2 và sẽ chỉ hoạt động trên Raspberry Pi 2. Hãy thử hướng dẫn này


Cảm ơn bạn. Tôi sẽ thử nó sau. Tôi nghĩ rằng sẽ trả lời câu hỏi của tôi.
Lepe

1

Trong câu trả lời này: Có bất kỳ hình ảnh QEMU Ubuntu dựng sẵn (32 bit) trực tuyến nào không? Tôi đã mô tả các thiết lập làm việc sau đây cho khách / máy chủ Ubuntu 18.04:

  • đám mây hình ảnh arm64: thiết lập nhanh nhất để bắt đầu
  • debootstrap arm64: nhanh chóng hợp lý, nhưng cho phép tùy chỉnh hình ảnh nhiều hơn

Các thiết lập đó cung cấp hình ảnh đĩa dựng sẵn và không đi qua trình cài đặt. Chúng là những lựa chọn tốt nhất mà tôi đã thấy cho đến nay.

Tiếp theo, tôi cũng đã quản lý để chạy hình ảnh máy chủ arm64 trên QEMU. Tuy nhiên, điều này đi qua trình cài đặt, đó là đường biên giới thực hiện chậm, trừ khi bạn không ở trên máy chủ ARM có KVM. Điều này đặc biệt đau đớn vì hàng tá tương tác được yêu cầu để hoàn tất cài đặt.

Đây là tập lệnh máy chủ, được thử nghiệm trên máy chủ 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 ngược dòng .

Xem thêm phần này để mô phỏng Raspberry Pi: /programming/28880833/how-to-emulation-the-raspberry-pi-2-on-qemu/45814913#45814913

máy tính để bàn amd64 hiển thị tại: Làm cách nào để chạy Ubuntu 16.04 Desktop trên QEMU?

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.