Compare commits

...

2 Commits

Author SHA1 Message Date
forksand 5efa1db28d vweb3
3 years ago
forksand 2b39ed9d69 qemu ppc64le host, riscv64 guest
3 years ago

@ -0,0 +1,77 @@
#!/bin/bash
set -x
sudo qemu-system-riscv64 \
-serial telnet:localhost:2018,server,nowait \
-monitor telnet:127.0.0.1:2019,server,nowait \
-vga none \
-runas vriscv64-build \
-daemonize \
-display none \
-M virt \
-smp 8 \
-m 8192 \
-name vriscv64-build \
-device virtio-net-device,netdev=usernet -netdev user,id=usernet,hostfwd=tcp::47721-:22 \
-kernel /srv/kvm/vriscv64-build/vmlinux \
-initrd /srv/kvm/vriscv64-build/initrd.img \
-append "root=/dev/vda1 rw ipv6.disable=1 selinux=0" \
-bios /usr/lib/riscv64-linux-gnu/opensbi/generic/fw_jump.elf \
-object rng-random,filename=/dev/urandom,id=rng0 \
-device virtio-rng-device,rng=rng0 \
-device virtio-blk-device,drive=hd0 \
-device virtio-blk-device,drive=hd1 \
-drive file=/srv/kvm/vriscv64-build/root.img,format=qcow2,cache=writeback,discard=on,id=hd0 \
-drive file=/srv/kvm/vriscv64-build/home.img,format=qcow2,cache=writeback,discard=on,id=hd1
exit
-append "root=/dev/vda1 rw ipv6.disable=1 selinux=0" \
# To update kernel:
# * update guest debian.
# * copy guest kernel & initrd to host
# scp -p vriscv64-build:/boot/vmlinux-5.10.0-5-riscv64 /srv/kvm/vriscv64-build/vmlinux
# scp -p vriscv64-build:/boot/initrd.img-5.10.0-5-riscv64 /srv/kvm/vriscv64-build/initrd.img
# chown vriscv64-build:vriscv64-build /srv/kvm/vriscv64-build/vmlinux /srv/kvm/vriscv64-build/initrd.img
# chmod 400 /srv/kvm/vriscv64-build/vmlinux chmod 400 /srv/kvm/vriscv64-build/initrd.img
# kernel, initrd.img for install:
# https://cdimage.debian.org/cdimage/ports/snapshots
# https://cdimage.debian.org/cdimage/ports/debian-installer/2020-12-03/riscv64/debian-installer-images_20201202_riscv64.tar.gz
-nic tap,model=virtio,mac=52:54:00:12:34:16 \
-kernel /home/jebba/devel/distros/debian/riscv/vmlinux \
-initrd /home/jebba/devel/distros/debian/riscv/initrd.img \
# IMAGE
# qemu-img create -f qcow2 /srv/kvm/vriscv64-build/home.img 20G
# chown vriscv64-build:vriscv64-build /srv/kvm/vriscv64-build/home.img
# chmod 600 /srv/kvm/vriscv64-build/home.img
# qemu-img create -f qcow2 /home/jebba/KVM/riscv64-build/boot.img 256M
# qemu-img create -f qcow2 /home/jebba/KVM/riscv64-build/swap.img 128M
# qemu-img create -f qcow2 /home/jebba/KVM/riscv64-build/root.img 2G
# Resize
# qemu-img resize foo.img +10G
# qemu-img resize /home/jebba/KVM/riscv64-build/root.img +10G
#misc
-device virtio-net-device,netdev=usernet -netdev user,id=usernet,hostfwd=tcp::22549-:22 \
-append "root=/dev/vda1 rw" \
-daemonize \
-display none \
-nographic \
-display none \
-kernel /home/jebba/devel/distros/debian/riscv/debian-installer-images/installer-riscv64/20201202/images/netboot/vmlinux \
-initrd /home/jebba/devel/distros/debian/riscv/debian-installer-images/installer-riscv64/20201202/images/netboot/initrd.gz \
-net nic,model=virtio \
-net user,hostfwd=tcp:192.168.110.22:22549-:22 \
-kernel /usr/lib/u-boot/qemu-riscv64_smode/uboot.elf \
-bios /usr/lib/riscv64-linux-gnu/opensbi/generic/fw_jump.elf \
-object rng-random,filename=/dev/urandom,id=rng0 \
-device virtio-rng-device,rng=rng0
-M virt \
-device virtio-net-device,netdev=usernet -netdev user,id=usernet,hostfwd=tcp::22549-:22 \
-M sifive_u \

@ -0,0 +1,70 @@
#!/bin/bash
set -x
sudo qemu-system-riscv64 \
-serial telnet:localhost:2016,server,nowait \
-monitor telnet:127.0.0.1:2017,server,nowait \
-vga none \
-runas vriscv64-sid \
-daemonize \
-display none \
-M virt \
-smp 8 \
-m 8192 \
-name vriscv64-sid \
-device virtio-net-device,netdev=usernet -netdev user,id=usernet,hostfwd=tcp::22549-:22 \
-kernel /srv/kvm/vriscv64-sid/vmlinux \
-initrd /srv/kvm/vriscv64-sid/initrd.img \
-append "root=/dev/vda1 rw ipv6.disable=1 selinux=0" \
-bios /usr/lib/riscv64-linux-gnu/opensbi/generic/fw_jump.elf \
-object rng-random,filename=/dev/urandom,id=rng0 \
-device virtio-rng-device,rng=rng0 \
-device virtio-blk-device,drive=hd0 \
-drive file=/srv/kvm/vriscv64-sid/root.img,format=qcow2,cache=writeback,discard=on,id=hd0
exit
-append "root=/dev/vda1 rw ipv6.disable=1 selinux=0" \
# To update kernel:
# * update guest debian.
# * copy guest kernel & initrd to host
# scp -p vriscv64-sid:/boot/vmlinux-5.10.0-5-riscv64 /srv/kvm/vriscv64-sid/vmlinux
# scp -p vriscv64-sid:/boot/initrd.img-5.10.0-5-riscv64 /srv/kvm/vriscv64-sid/initrd.img
# chown vriscv64-sid:vriscv64-sid /srv/kvm/vriscv64-sid/vmlinux /srv/kvm/vriscv64-sid/initrd.img
# chmod 400 /srv/kvm/vriscv64-sid/vmlinux chmod 400 /srv/kvm/vriscv64-sid/initrd.img
# kernel, initrd.img for install:
# https://cdimage.debian.org/cdimage/ports/snapshots
# https://cdimage.debian.org/cdimage/ports/debian-installer/2020-12-03/riscv64/debian-installer-images_20201202_riscv64.tar.gz
-nic tap,model=virtio,mac=52:54:00:12:34:16 \
-kernel /home/jebba/devel/distros/debian/riscv/vmlinux \
-initrd /home/jebba/devel/distros/debian/riscv/initrd.img \
-device virtio-net-device,netdev=usernet -netdev user,id=usernet,hostfwd=tcp::22549-:22 \
-append "root=/dev/vda1 rw" \
-daemonize \
-display none \
-nographic \
-display none \
-kernel /home/jebba/devel/distros/debian/riscv/debian-installer-images/installer-riscv64/20201202/images/netboot/vmlinux \
-initrd /home/jebba/devel/distros/debian/riscv/debian-installer-images/installer-riscv64/20201202/images/netboot/initrd.gz \
-net nic,model=virtio \
-net user,hostfwd=tcp:192.168.110.22:22549-:22 \
-kernel /usr/lib/u-boot/qemu-riscv64_smode/uboot.elf \
-bios /usr/lib/riscv64-linux-gnu/opensbi/generic/fw_jump.elf \
-object rng-random,filename=/dev/urandom,id=rng0 \
-device virtio-rng-device,rng=rng0
-M virt \
-device virtio-net-device,netdev=usernet -netdev user,id=usernet,hostfwd=tcp::22549-:22 \
-M sifive_u \
# IMAGE
# qemu-img create -f qcow2 /home/jebba/KVM/riscv64-sid/boot.img 256M
# qemu-img create -f qcow2 /home/jebba/KVM/riscv64-sid/swap.img 128M
# qemu-img create -f qcow2 /home/jebba/KVM/riscv64-sid/root.img 2G
# Resize
# qemu-img resize foo.img +10G
# qemu-img resize /home/jebba/KVM/riscv64-sid/root.img +10G

@ -0,0 +1,41 @@
#!/bin/bash
set -x
sudo kvm \
-serial telnet:localhost:2020,server,nowait \
-monitor telnet:127.0.0.1:2021,server,nowait \
-vga none \
-runas vweb3 \
-daemonize \
-display none \
-nic tap,model=virtio,mac=52:54:00:12:34:20 \
-machine pseries,accel=kvm,kvm-type=HV \
-smp 4 \
-m 4096 \
-name vweb3 \
-drive format=qcow2,cache=writeback,discard=on,file=/srv/kvm/vweb3/boot.img \
-drive format=qcow2,cache=writeback,discard=on,file=/srv/kvm/vweb3/swap.img \
-drive format=qcow2,cache=writeback,discard=on,file=/srv/kvm/vweb3/root.img \
-drive format=qcow2,cache=writeback,discard=on,file=/srv/kvm/vweb3/home.img
exit
# Install
# -boot d \
# -cdrom /srv/devel/distros/debian/debian-apache-mini.iso \
# IMAGE
# qemu-img create -f qcow2 /srv/kvm/vweb3/boot.img 256M
# qemu-img create -f qcow2 /srv/kvm/vweb3/swap.img 128M
# qemu-img create -f qcow2 /srv/kvm/vweb3/root.img 2G
# Resize
# qemu-img resize foo.img +10G
# qemu-img resize /srv/kvm/vweb3/root.img +10G
# to use the kvm_pr.ko kernel module.
# qemu-system-ppc64 -M pseries,accel=kvm,kvm-type=PR
# to use kvm_hv.ko instead.
# qemu-system-ppc64 -M pseries,accel=kvm,kvm-type=HV
Loading…
Cancel
Save