diff --git a/qemu-doc.texi b/qemu-doc.texi index e5d7ac41ab..6feac2cdbd 100644 --- a/qemu-doc.texi +++ b/qemu-doc.texi @@ -230,12 +230,12 @@ Note that, by default, GUS shares IRQ(7) with parallel ports and so qemu must be told to not have parallel ports to have working GUS @example -qemu dos.img -soundhw gus -parallel none +qemu-system-i386 dos.img -soundhw gus -parallel none @end example Alternatively: @example -qemu dos.img -device gus,irq=5 +qemu-system-i386 dos.img -device gus,irq=5 @end example Or some other unclaimed IRQ. @@ -251,7 +251,7 @@ CS4231A is the chip used in Windows Sound System and GUSMAX products Download and uncompress the linux image (@file{linux.img}) and type: @example -qemu linux.img +qemu-system-i386 linux.img @end example Linux should boot and give you a prompt. @@ -261,7 +261,7 @@ Linux should boot and give you a prompt. @example @c man begin SYNOPSIS -usage: qemu [options] [@var{disk_image}] +usage: qemu-system-i386 [options] [@var{disk_image}] @c man end @end example @@ -575,7 +575,7 @@ QEMU can automatically create a virtual FAT disk image from a directory tree. In order to use it, just type: @example -qemu linux.img -hdb fat:/my_directory +qemu-system-i386 linux.img -hdb fat:/my_directory @end example Then you access access to all the files in the @file{/my_directory} @@ -585,14 +585,14 @@ them via SAMBA or NFS. The default access is @emph{read-only}. Floppies can be emulated with the @code{:floppy:} option: @example -qemu linux.img -fda fat:floppy:/my_directory +qemu-system-i386 linux.img -fda fat:floppy:/my_directory @end example A read/write support is available for testing (beta stage) with the @code{:rw:} option: @example -qemu linux.img -fda fat:floppy:rw:/my_directory +qemu-system-i386 linux.img -fda fat:floppy:rw:/my_directory @end example What you should @emph{never} do: @@ -610,14 +610,14 @@ QEMU can access directly to block device exported using the Network Block Device protocol. @example -qemu linux.img -hdb nbd:my_nbd_server.mydomain.org:1024 +qemu-system-i386 linux.img -hdb nbd:my_nbd_server.mydomain.org:1024 @end example If the NBD server is located on the same host, you can use an unix socket instead of an inet socket: @example -qemu linux.img -hdb nbd:unix:/tmp/my_socket +qemu-system-i386 linux.img -hdb nbd:unix:/tmp/my_socket @end example In this case, the block device must be exported using qemu-nbd: @@ -633,15 +633,15 @@ qemu-nbd --socket=/tmp/my_socket --share=2 my_disk.qcow2 and then you can use it with two guests: @example -qemu linux1.img -hdb nbd:unix:/tmp/my_socket -qemu linux2.img -hdb nbd:unix:/tmp/my_socket +qemu-system-i386 linux1.img -hdb nbd:unix:/tmp/my_socket +qemu-system-i386 linux2.img -hdb nbd:unix:/tmp/my_socket @end example If the nbd-server uses named exports (since NBD 2.9.18), you must use the "exportname" option: @example -qemu -cdrom nbd:localhost:exportname=debian-500-ppc-netinst -qemu -cdrom nbd:localhost:exportname=openSUSE-11.1-ppc-netinst +qemu-system-i386 -cdrom nbd:localhost:exportname=debian-500-ppc-netinst +qemu-system-i386 -cdrom nbd:localhost:exportname=openSUSE-11.1-ppc-netinst @end example @node disk_images_sheepdog @@ -666,7 +666,7 @@ qemu-img convert @var{filename} sheepdog:@var{image} You can boot from the Sheepdog disk image with the command: @example -qemu sheepdog:@var{image} +qemu-system-i386 sheepdog:@var{image} @end example You can also create a snapshot of the Sheepdog image like qcow2. @@ -678,7 +678,7 @@ where @var{tag} is a tag name of the newly created snapshot. To boot from the Sheepdog snapshot, specify the tag name of the snapshot. @example -qemu sheepdog:@var{image}:@var{tag} +qemu-system-i386 sheepdog:@var{image}:@var{tag} @end example You can create a cloned image from the existing snapshot. @@ -692,7 +692,7 @@ If the Sheepdog daemon doesn't run on the local host, you need to specify one of the Sheepdog servers to connect to. @example qemu-img create sheepdog:@var{hostname}:@var{port}:@var{image} @var{size} -qemu sheepdog:@var{hostname}:@var{port}:@var{image} +qemu-system-i386 sheepdog:@var{hostname}:@var{port}:@var{image} @end example @node disk_images_iscsi @@ -899,7 +899,7 @@ zero-copy communication to the application level of the guests. The basic syntax is: @example -qemu -device ivshmem,size=[,shm=] +qemu-system-i386 -device ivshmem,size=[,shm=] @end example If desired, interrupts can be sent between guest VMs accessing the same shared @@ -909,9 +909,9 @@ is qemu.git/contrib/ivshmem-server. An example syntax when using the shared memory server is: @example -qemu -device ivshmem,size=[,chardev=] - [,msi=on][,ioeventfd=on][,vectors=n][,role=peer|master] -qemu -chardev socket,path=,id= +qemu-system-i386 -device ivshmem,size=[,chardev=] + [,msi=on][,ioeventfd=on][,vectors=n][,role=peer|master] +qemu-system-i386 -chardev socket,path=,id= @end example When using the server, the guest will be assigned a VM ID (>=0) that allows guests @@ -941,7 +941,7 @@ kernel testing. The syntax is: @example -qemu -kernel arch/i386/boot/bzImage -hda root-2.4.20.img -append "root=/dev/hda" +qemu-system-i386 -kernel arch/i386/boot/bzImage -hda root-2.4.20.img -append "root=/dev/hda" @end example Use @option{-kernel} to provide the Linux kernel image and @@ -956,8 +956,8 @@ If you do not need graphical output, you can disable it and redirect the virtual serial port and the QEMU monitor to the console with the @option{-nographic} option. The typical command line is: @example -qemu -kernel arch/i386/boot/bzImage -hda root-2.4.20.img \ - -append "root=/dev/hda console=ttyS0" -nographic +qemu-system-i386 -kernel arch/i386/boot/bzImage -hda root-2.4.20.img \ + -append "root=/dev/hda console=ttyS0" -nographic @end example Use @key{Ctrl-a c} to switch between the serial console and the @@ -1020,7 +1020,7 @@ Network adapter that supports CDC ethernet and RNDIS protocols. @var{options} specifies NIC options as with @code{-net nic,}@var{options} (see description). For instance, user-mode networking can be used with @example -qemu [...OPTIONS...] -net user,vlan=0 -usbdevice net:vlan=0 +qemu-system-i386 [...OPTIONS...] -net user,vlan=0 -usbdevice net:vlan=0 @end example Currently this cannot be used in machines that support PCI NICs. @item bt[:@var{hci-type}] @@ -1030,7 +1030,7 @@ no type is given, the HCI logic corresponds to @code{-bt hci,vlan=0}. This USB device implements the USB Transport Layer of HCI. Example usage: @example -qemu [...OPTIONS...] -usbdevice bt:hci,vlan=3 -bt device:keyboard,vlan=3 +qemu-system-i386 [...OPTIONS...] -usbdevice bt:hci,vlan=3 -bt device:keyboard,vlan=3 @end example @end table @@ -1108,7 +1108,7 @@ For this setup it is recommended to restrict it to listen on a UNIX domain socket only. For example @example -qemu [...OPTIONS...] -vnc unix:/home/joebloggs/.qemu-myvm-vnc +qemu-system-i386 [...OPTIONS...] -vnc unix:/home/joebloggs/.qemu-myvm-vnc @end example This ensures that only users on local box with read/write access to that @@ -1129,7 +1129,7 @@ option, and then once QEMU is running the password is set with the monitor. Unti the monitor is used to set the password all clients will be rejected. @example -qemu [...OPTIONS...] -vnc :1,password -monitor stdio +qemu-system-i386 [...OPTIONS...] -vnc :1,password -monitor stdio (qemu) change vnc password Password: ******** (qemu) @@ -1146,7 +1146,7 @@ support provides a secure session, but no authentication. This allows any client to connect, and provides an encrypted session. @example -qemu [...OPTIONS...] -vnc :1,tls,x509=/etc/pki/qemu -monitor stdio +qemu-system-i386 [...OPTIONS...] -vnc :1,tls,x509=/etc/pki/qemu -monitor stdio @end example In the above example @code{/etc/pki/qemu} should contain at least three files, @@ -1164,7 +1164,7 @@ then validate against the CA certificate. This is a good choice if deploying in an environment with a private internal certificate authority. @example -qemu [...OPTIONS...] -vnc :1,tls,x509verify=/etc/pki/qemu -monitor stdio +qemu-system-i386 [...OPTIONS...] -vnc :1,tls,x509verify=/etc/pki/qemu -monitor stdio @end example @@ -1175,7 +1175,7 @@ Finally, the previous method can be combined with VNC password authentication to provide two layers of authentication for clients. @example -qemu [...OPTIONS...] -vnc :1,password,tls,x509verify=/etc/pki/qemu -monitor stdio +qemu-system-i386 [...OPTIONS...] -vnc :1,password,tls,x509verify=/etc/pki/qemu -monitor stdio (qemu) change vnc password Password: ******** (qemu) @@ -1198,7 +1198,7 @@ used for authentication, but assuming use of one supporting SSF, then QEMU can be launched with: @example -qemu [...OPTIONS...] -vnc :1,sasl -monitor stdio +qemu-system-i386 [...OPTIONS...] -vnc :1,sasl -monitor stdio @end example @node vnc_sec_certificate_sasl @@ -1212,7 +1212,7 @@ credentials. This can be enabled, by combining the 'sasl' option with the aforementioned TLS + x509 options: @example -qemu [...OPTIONS...] -vnc :1,tls,x509,sasl -monitor stdio +qemu-system-i386 [...OPTIONS...] -vnc :1,tls,x509,sasl -monitor stdio @end example @@ -1380,8 +1380,8 @@ QEMU has a primitive support to work with gdb, so that you can do In order to use gdb, launch qemu with the '-s' option. It will wait for a gdb connection: @example -> qemu -s -kernel arch/i386/boot/bzImage -hda root-2.4.20.img \ - -append "root=/dev/hda" +qemu-system-i386 -s -kernel arch/i386/boot/bzImage -hda root-2.4.20.img \ + -append "root=/dev/hda" Connected to host network interface: tun0 Waiting gdb connection on port 1234 @end example @@ -2669,7 +2669,8 @@ installation directory. @end itemize -Wine can be used to launch the resulting qemu.exe compiled for Win32. +Wine can be used to launch the resulting qemu-system-i386.exe +and all other qemu-system-@var{target}.exe compiled for Win32. @node Mac OS X @section Mac OS X diff --git a/qemu-options.hx b/qemu-options.hx index 4170d6177d..17e996349d 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -233,47 +233,47 @@ is off. Instead of @option{-cdrom} you can use: @example -qemu -drive file=file,index=2,media=cdrom +qemu-system-i386 -drive file=file,index=2,media=cdrom @end example Instead of @option{-hda}, @option{-hdb}, @option{-hdc}, @option{-hdd}, you can use: @example -qemu -drive file=file,index=0,media=disk -qemu -drive file=file,index=1,media=disk -qemu -drive file=file,index=2,media=disk -qemu -drive file=file,index=3,media=disk +qemu-system-i386 -drive file=file,index=0,media=disk +qemu-system-i386 -drive file=file,index=1,media=disk +qemu-system-i386 -drive file=file,index=2,media=disk +qemu-system-i386 -drive file=file,index=3,media=disk @end example You can connect a CDROM to the slave of ide0: @example -qemu -drive file=file,if=ide,index=1,media=cdrom +qemu-system-i386 -drive file=file,if=ide,index=1,media=cdrom @end example If you don't specify the "file=" argument, you define an empty drive: @example -qemu -drive if=ide,index=1,media=cdrom +qemu-system-i386 -drive if=ide,index=1,media=cdrom @end example You can connect a SCSI disk with unit ID 6 on the bus #0: @example -qemu -drive file=file,if=scsi,bus=0,unit=6 +qemu-system-i386 -drive file=file,if=scsi,bus=0,unit=6 @end example Instead of @option{-fda}, @option{-fdb}, you can use: @example -qemu -drive file=file,index=0,if=floppy -qemu -drive file=file,index=1,if=floppy +qemu-system-i386 -drive file=file,index=0,if=floppy +qemu-system-i386 -drive file=file,index=1,if=floppy @end example By default, @var{interface} is "ide" and @var{index} is automatically incremented: @example -qemu -drive file=a -drive file=b" +qemu-system-i386 -drive file=a -drive file=b" @end example is interpreted like: @example -qemu -hda a -hdb b +qemu-system-i386 -hda a -hdb b @end example ETEXI @@ -297,7 +297,7 @@ STEXI Set default value of @var{driver}'s property @var{prop} to @var{value}, e.g.: @example -qemu -global ide-drive.physical_block_size=4096 -drive file=file,if=ide,index=0,media=disk +qemu-system-i386 -global ide-drive.physical_block_size=4096 -drive file=file,if=ide,index=0,media=disk @end example In particular, you can use this to set driver properties for devices which are @@ -359,11 +359,11 @@ the recommended is 320x240, 640x480, 800x640. @example # try to boot from network first, then from hard disk -qemu -boot order=nc +qemu-system-i386 -boot order=nc # boot from CD-ROM first, switch back to default order after reboot -qemu -boot once=d +qemu-system-i386 -boot once=d # boot with a splash picture for 5 seconds. -qemu -boot menu=on,splash=/root/boot.bmp,splash-time=5000 +qemu-system-i386 -boot menu=on,splash=/root/boot.bmp,splash-time=5000 @end example Note: The legacy format '-boot @var{drives}' is still supported but its @@ -454,12 +454,12 @@ Enable audio and selected sound hardware. Use ? to print all available sound hardware. @example -qemu -soundhw sb16,adlib disk.img -qemu -soundhw es1370 disk.img -qemu -soundhw ac97 disk.img -qemu -soundhw hda disk.img -qemu -soundhw all disk.img -qemu -soundhw ? +qemu-system-i386 -soundhw sb16,adlib disk.img +qemu-system-i386 -soundhw es1370 disk.img +qemu-system-i386 -soundhw ac97 disk.img +qemu-system-i386 -soundhw hda disk.img +qemu-system-i386 -soundhw all disk.img +qemu-system-i386 -soundhw ? @end example Note that Linux's i810_audio OSS kernel (for AC97) module might @@ -1368,7 +1368,7 @@ a guest from a local directory. Example (using pxelinux): @example -qemu -hda linux.img -boot n -net user,tftp=/path/to/tftp/files,bootfile=/pxelinux.0 +qemu-system-i386 -hda linux.img -boot n -net user,tftp=/path/to/tftp/files,bootfile=/pxelinux.0 @end example @item smb=@var{dir}[,smbserver=@var{addr}] @@ -1403,7 +1403,7 @@ screen 0, use the following: @example # on the host -qemu -net user,hostfwd=tcp:127.0.0.1:6001-:6000 [...] +qemu-system-i386 -net user,hostfwd=tcp:127.0.0.1:6001-:6000 [...] # this host xterm should open in the guest X11 server xterm -display :1 @end example @@ -1413,7 +1413,7 @@ the guest, use the following: @example # on the host -qemu -net user,hostfwd=tcp::5555-:23 [...] +qemu-system-i386 -net user,hostfwd=tcp::5555-:23 [...] telnet localhost 5555 @end example @@ -1452,20 +1452,22 @@ Examples: @example #launch a QEMU instance with the default network script -qemu linux.img -net nic -net tap +qemu-system-i386 linux.img -net nic -net tap @end example @example #launch a QEMU instance with two NICs, each one connected #to a TAP device -qemu linux.img -net nic,vlan=0 -net tap,vlan=0,ifname=tap0 \ - -net nic,vlan=1 -net tap,vlan=1,ifname=tap1 +qemu-system-i386 linux.img \ + -net nic,vlan=0 -net tap,vlan=0,ifname=tap0 \ + -net nic,vlan=1 -net tap,vlan=1,ifname=tap1 @end example @example #launch a QEMU instance with the default network helper to #connect a TAP device to bridge br0 -qemu linux.img -net nic -net tap,"helper=/usr/local/libexec/qemu-bridge-helper" +qemu-system-i386 linux.img \ + -net nic -net tap,"helper=/usr/local/libexec/qemu-bridge-helper" @end example @item -net bridge[,vlan=@var{n}][,name=@var{name}][,br=@var{bridge}][,helper=@var{helper}] @@ -1481,13 +1483,13 @@ Examples: @example #launch a QEMU instance with the default network helper to #connect a TAP device to bridge br0 -qemu linux.img -net bridge -net nic,model=virtio +qemu-system-i386 linux.img -net bridge -net nic,model=virtio @end example @example #launch a QEMU instance with the default network helper to #connect a TAP device to bridge qemubr0 -qemu linux.img -net bridge,br=qemubr0 -net nic,model=virtio +qemu-system-i386 linux.img -net bridge,br=qemubr0 -net nic,model=virtio @end example @item -net socket[,vlan=@var{n}][,name=@var{name}][,fd=@var{h}] [,listen=[@var{host}]:@var{port}][,connect=@var{host}:@var{port}] @@ -1502,12 +1504,14 @@ specifies an already opened TCP socket. Example: @example # launch a first QEMU instance -qemu linux.img -net nic,macaddr=52:54:00:12:34:56 \ - -net socket,listen=:1234 +qemu-system-i386 linux.img \ + -net nic,macaddr=52:54:00:12:34:56 \ + -net socket,listen=:1234 # connect the VLAN 0 of this instance to the VLAN 0 # of the first instance -qemu linux.img -net nic,macaddr=52:54:00:12:34:57 \ - -net socket,connect=127.0.0.1:1234 +qemu-system-i386 linux.img \ + -net nic,macaddr=52:54:00:12:34:57 \ + -net socket,connect=127.0.0.1:1234 @end example @item -net socket[,vlan=@var{n}][,name=@var{name}][,fd=@var{h}][,mcast=@var{maddr}:@var{port}[,localaddr=@var{addr}]] @@ -1530,30 +1534,35 @@ Use @option{fd=h} to specify an already opened UDP multicast socket. Example: @example # launch one QEMU instance -qemu linux.img -net nic,macaddr=52:54:00:12:34:56 \ - -net socket,mcast=230.0.0.1:1234 +qemu-system-i386 linux.img \ + -net nic,macaddr=52:54:00:12:34:56 \ + -net socket,mcast=230.0.0.1:1234 # launch another QEMU instance on same "bus" -qemu linux.img -net nic,macaddr=52:54:00:12:34:57 \ - -net socket,mcast=230.0.0.1:1234 +qemu-system-i386 linux.img \ + -net nic,macaddr=52:54:00:12:34:57 \ + -net socket,mcast=230.0.0.1:1234 # launch yet another QEMU instance on same "bus" -qemu linux.img -net nic,macaddr=52:54:00:12:34:58 \ - -net socket,mcast=230.0.0.1:1234 +qemu-system-i386 linux.img \ + -net nic,macaddr=52:54:00:12:34:58 \ + -net socket,mcast=230.0.0.1:1234 @end example Example (User Mode Linux compat.): @example # launch QEMU instance (note mcast address selected # is UML's default) -qemu linux.img -net nic,macaddr=52:54:00:12:34:56 \ - -net socket,mcast=239.192.168.1:1102 +qemu-system-i386 linux.img \ + -net nic,macaddr=52:54:00:12:34:56 \ + -net socket,mcast=239.192.168.1:1102 # launch UML /path/to/linux ubd0=/path/to/root_fs eth0=mcast @end example Example (send packets from host's 1.2.3.4): @example -qemu linux.img -net nic,macaddr=52:54:00:12:34:56 \ - -net socket,mcast=239.192.168.1:1102,localaddr=1.2.3.4 +qemu-system-i386 linux.img \ + -net nic,macaddr=52:54:00:12:34:56 \ + -net socket,mcast=239.192.168.1:1102,localaddr=1.2.3.4 @end example @item -net vde[,vlan=@var{n}][,name=@var{name}][,sock=@var{socketpath}] [,port=@var{n}][,group=@var{groupname}][,mode=@var{octalmode}] @@ -1568,7 +1577,7 @@ Example: # launch vde switch vde_switch -F -sock /tmp/myswitch # launch QEMU instance -qemu linux.img -net nic -net vde,sock=/tmp/myswitch +qemu-system-i386 linux.img -net nic -net vde,sock=/tmp/myswitch @end example @item -net dump[,vlan=@var{n}][,file=@var{file}][,len=@var{len}] @@ -1853,21 +1862,21 @@ Syntax for specifying iSCSI LUNs is Example (without authentication): @example -qemu -iscsi initiator-name=iqn.2001-04.com.example:my-initiator \ --cdrom iscsi://192.0.2.1/iqn.2001-04.com.example/2 \ --drive file=iscsi://192.0.2.1/iqn.2001-04.com.example/1 +qemu-system-i386 -iscsi initiator-name=iqn.2001-04.com.example:my-initiator \ + -cdrom iscsi://192.0.2.1/iqn.2001-04.com.example/2 \ + -drive file=iscsi://192.0.2.1/iqn.2001-04.com.example/1 @end example Example (CHAP username/password via URL): @example -qemu -drive file=iscsi://user%password@@192.0.2.1/iqn.2001-04.com.example/1 +qemu-system-i386 -drive file=iscsi://user%password@@192.0.2.1/iqn.2001-04.com.example/1 @end example Example (CHAP username/password via environment variables): @example LIBISCSI_CHAP_USERNAME="user" \ LIBISCSI_CHAP_PASSWORD="password" \ -qemu -drive file=iscsi://192.0.2.1/iqn.2001-04.com.example/1 +qemu-system-i386 -drive file=iscsi://192.0.2.1/iqn.2001-04.com.example/1 @end example iSCSI support is an optional feature of QEMU and only available when @@ -1893,12 +1902,12 @@ Syntax for specifying a NBD device using Unix Domain Sockets Example for TCP @example -qemu --drive file=nbd:192.0.2.1:30000 +qemu-system-i386 --drive file=nbd:192.0.2.1:30000 @end example Example for Unix Domain Sockets @example -qemu --drive file=nbd:unix:/tmp/nbd-socket +qemu-system-i386 --drive file=nbd:unix:/tmp/nbd-socket @end example @item Sheepdog @@ -1923,7 +1932,7 @@ Syntax for specifying a sheepdog device Example @example -qemu --drive file=sheepdog:192.0.2.1:30000:MyVirtualMachine +qemu-system-i386 --drive file=sheepdog:192.0.2.1:30000:MyVirtualMachine @end example See also @url{http://http://www.osrg.net/sheepdog/}. @@ -1986,7 +1995,7 @@ and communicate. Requires the Linux @code{vhci} driver installed. Can be used as following: @example -qemu [...OPTIONS...] -bt hci,vlan=5 -bt vhci,vlan=5 +qemu-system-i386 [...OPTIONS...] -bt hci,vlan=5 -bt vhci,vlan=5 @end example @item -bt device:@var{dev}[,vlan=@var{n}] @@ -2289,7 +2298,7 @@ connections will likely be TCP-based, but also UDP, pseudo TTY, or even stdio are reasonable use case. The latter is allowing to start qemu from within gdb and establish the connection via a pipe: @example -(gdb) target remote | exec qemu -gdb stdio ... +(gdb) target remote | exec qemu-system-i386 -gdb stdio ... @end example ETEXI