From ArchWiki
Revision as of 18:32, 5 September 2013 by Lahwaacz (talk | contribs) (Creating bridge manually: expand my previous reply)
Jump to navigation Jump to search

Linear RAID

When I was updating the article yesterday, I had tried to fit the section about linear raid (boot a VM from a partition by prepending a MBR to it) into the article better. But I'm not sure the technique described is the right one at all. It looks like it works, but wouldn't it be easier to install a bootloader directly to the partition (e.g. syslinux)? Then the VM could be booted directly from the partition simply by using it as its virtual disk. --Synchronicity (talk) 19:23, 9 May 2012 (UTC)

qemu-* vs qemu-system-*?

What's the difference between qemu-* and qemu-system-*? So far, I haven't seen too much of a difference, except for a quite noticeable difference in filesize:

# ls -l $(which qemu{-system,}-x86_64);
-rwxr-xr-x 1 root root 4793008 Jun  8 02:14 /usr/bin/qemu-system-x86_64
-rwxr-xr-x 1 root root 2406208 Jun  8 02:14 /usr/bin/qemu-x86_64
Next time please add a signature after your post by typing four tildes (~~~~). Thanks.
There have been some changes recently and the wiki page isn't yet fully updated. I guess that the old qemu binary has been replaced by qemu-system-* depending on architecture and qemu-* binary is used internally. See qemu(1) for more details.
-- Lahwaacz (talk) 09:47, 16 July 2013 (UTC)
I've done some more research on this: qemu-system-* binaries emulate full virtual machine (that's currently described in QEMU, some time ago qemu was used for this purpose), whereas qemu-* binaries allow executing statically linked binaries for different architecture than the host system. You can even chroot into different-architecture system emulating even dynamically linked binaries. Perhaps some mention of this could be added to QEMU. -- Lahwaacz (talk) 20:54, 22 July 2013 (UTC)
No reply, closing. -- Lahwaacz (talk) 18:11, 5 September 2013 (UTC)

Creating bridge manually

I really don't know what to do with this section. I'd say it has been superseded by QEMU#Creating bridge using qemu-bridge-helper (available since qemu-1.1, we now have qemu-1.5) - or is someone still using this method? Perhaps link to or is sufficient. What do you think? -- Lahwaacz (talk) 20:42, 22 July 2013 (UTC)

Actually, I've become a happy user of this method. I've written some scripts to easily create bridge interface, TAP interface, and combined with Xyne's excellent scripts to set up NAT and launch DHCP server, I have complete solution to easily manage multiple VMs on one (or even more) bridge.
My scripts are available on github: [1], [2], [3] but I won't probably integrate them into the wiki, I'l just leave a note when I do some more testing.
The thing is, what to do with the current content? Personally I think that links to [4], [5] and my scripts are sufficient (of course others are welcome). I'd also leave the note at the end to disable the firewall on the bridge, I find it extremely useful.
-- Lahwaacz (talk) 18:24, 5 September 2013 (UTC)

Preparing an (Arch) Linux guest

adding the virtio modules to use virtual devices doesn't appear to be necessary as of the VM I built this week(Jul 26, 2013). Kernel 3.9.9-1 Surlyjake (talk) 03:42, 27 July 2013 (UTC)

In newer kernel versions (I think since 3.4) the kernel modules are loaded automatically. I'd still keep the section as it is for now, linux-lts is still at 3.0. -- Lahwaacz (talk) 21:09, 20 August 2013 (UTC)

Starting QEMU virtual machines with Systemd

The custom systemd service script does not work. It always fails with {{ic|Failed at step EXEC spawning /usr/bin/qemu-{type}: No such file or directory}}. To Fix this modify the ExecStart command

ExecStart=/usr/bin/sh -c "/usr/bin/qemu-${type} -name %i -nographic ${args}"

Also echo 'system_powerdown' | nc localhost 7101 kills the VM immediatly. To fix this change the stop script. It simply checks each second if the main process is still running.

ExecStop=/usr/bin/sh -c "${haltcmd} && while [[ `pidof qemu-${type} | grep $MAINPID` ]]; do sleep 1; done"

gnu-netcat does not work to connect to the monitor. You need to use openbsd-netcat. -- Ant32 (talk) 17:48, 5 September 2013 (UTC)