|
|
|
@ -2,33 +2,53 @@
|
|
|
|
|
|
|
|
|
|
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 \
|
|
|
|
|
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 65536 \
|
|
|
|
|
-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/sda1 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 \
|
|
|
|
|
-object iothread,id=iothread-virtioscsi0 \
|
|
|
|
|
-device virtio-scsi-pci,id=virtioscsi0,addr=0x1,iothread=iothread-virtioscsi0 \
|
|
|
|
|
-device scsi-hd,bus=virtioscsi0.0,channel=0,scsi-id=0,lun=0,drive=drive-scsi0,id=scsi0 \
|
|
|
|
|
-drive file=/srv/kvm/vriscv64-build/root.img,format=qcow2,cache=writeback,discard=on,id=drive-scsi0 \
|
|
|
|
|
-object iothread,id=iothread-virtioscsi1 \
|
|
|
|
|
-device virtio-scsi-pci,id=virtioscsi1,addr=0x2,iothread=iothread-virtioscsi1 \
|
|
|
|
|
-device scsi-hd,bus=virtioscsi1.0,channel=0,scsi-id=0,lun=1,drive=drive-scsi1,id=scsi1 \
|
|
|
|
|
-drive file=/srv/kvm/vriscv64-build/home.img,format=qcow2,cache=writeback,discard=on,id=drive-scsi1 \
|
|
|
|
|
-object iothread,id=iothread-virtioscsi2 \
|
|
|
|
|
-device virtio-scsi-pci,id=virtioscsi2,addr=0x3,iothread=iothread-virtioscsi2 \
|
|
|
|
|
-device scsi-hd,bus=virtioscsi2.0,channel=0,scsi-id=0,lun=2,drive=drive-scsi2,id=scsi2 \
|
|
|
|
|
-drive file=/srv/kvm/vriscv64-build/srv.img,format=qcow2,cache=writeback,discard=on,id=drive-scsi2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
exit
|
|
|
|
|
-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
|
|
|
|
|
|
|
|
|
|
-device virtio-blk-device,drive=hd1 \
|
|
|
|
|
-drive file=/srv/kvm/vriscv64-build/home.img,format=qcow2,cache=writeback,discard=on,id=hd1 \
|
|
|
|
|
|
|
|
|
|
-device virtio-scsi-pci,id=virtioscsi0,bus=pci.3,addr=0x1,iothread=iothread-virtioscsi0 \
|
|
|
|
|
|
|
|
|
|
exit
|
|
|
|
|
-append "root=/dev/vda1 rw ipv6.disable=1 selinux=0" \
|
|
|
|
|
-device virtio-scsi-pci,id=virtioscsi0,bus=pci.3,addr=0x1,iothread=iothread-virtioscsi0
|
|
|
|
|
-drive file=/dev/rbd/nvmepool/vm-192-disk-1,if=none,id=drive-scsi0,cache=writeback,discard=on,format=raw,aio=threads,detect-zeroes=unmap
|
|
|
|
|
-device scsi-hd,bus=virtioscsi0.0,channel=0,scsi-id=0,lun=0,drive=drive-scsi0,id=scsi0,bootindex=100
|
|
|
|
|
|
|
|
|
|
-append "root=/dev/vda1 rw ipv6.disable=1 selinux=0" \
|
|
|
|
|
# To update kernel:
|
|
|
|
|
# * update guest debian.
|
|
|
|
|
# * copy guest kernel & initrd to host
|
|
|
|
|