Man Linux: Main Page and Category List

NAME

       linux -- User-mode Linux

SYNOPSIS

       linux [options ...]

DESCRIPTION

       This manual page briefly documents User-mode Linux.

       This  manual  page  was  written  for the Debian GNU/Linux distribution
       because the original program does not have a manual page.  Check  linux
       --help for an up-to-date synopsis.

OPTIONS

       mem=memory
                 This controls how much "physical" memory the kernel allocates
                 for the system. The size is specified as a number followed by
                 one  of  'k', 'K', 'm', 'M', which have the obvious meanings.
                 This is not related to the amount of memory in  the  physical
                 machine.  It  can be more, and the excess, if it's ever used,
                 will just be swapped out.

       iomem=name,file
                 Configure file as a named IO memory region named name.

       gdb-pid=pid
                 gdb-pid is used to attach an external debugger to UML.   This
                 may be an already-running gdb or a debugger-like process like
                 strace.

       debugtrace
                 Causes the tracing thread to pause until it is attached by  a
                 debugger and continued.  This is mostly for debugging crashes
                 early during boot, and should be pretty much obsoleted by the
                 debug switch.

       honeypot  This  makes  UML  put  process stacks in the same location as
                 they are on the host, allowing exploits such as stack smashes
                 to work against UML.

       debug     Starts up the kernel under the control of gdb. See the kernel
                 debugging tutorial and the debugging  session  pages  in  the
                 user-mode-linux-doc package for more information.

       root=file This  is  actually  used by the generic kernel in exactly the
                 same way as in any other kernel. If you configure a number of
                 block devices and want to boot off something other than ubd0,
                 you  would  use  something  like  "root=/dev/ubd5".   Another
                 notation  is the use of the major and the minor number of the
                 device, i.e. root=98:0, for ubd0.

                 To use  hostfs  for  the  root  filesystem,  use  the  syntax
                 "root=/dev/root rootflags=/ rootfstype=hostfs"

       umid=name This  is used to assign a unique identity to this UML machine
                 This is used for naming the pid file and  management  console
                 socket.  I.e.  to  access  to  the  management console for an
                 already  running  image   (i.e.   umid=test),   just   launch
                 uml_mconsole test from the host command line.

       uml_dir=directory
                 The location to place the pid and umid files.

       initrd=file
                 This  is used to boot UML from an initrd image.  The argument
                 is the name of the file containing the image.

       jail      Enables the protection of kernel memory from processes

       con[0-9]*=description
                 Attach a console to a host  channel.   Examples  of  channels
                 include   ttys,   ptys,   pts  terminals,  xterms,  and  file
                 descriptors.

                 tty       This  will  make  UML  attach  the  device  to  the
                           specified  tty.  If the tty that you specify is the
                           slave end of a tty/pty pair,  something  else  must
                           have  already opened the corresponding pty in order
                           for this to work.

                           con1=tty:/dev/tty3

                 pty       This will cause UML to allocate a free host pty for
                           the  device.  The pty will be announced in the boot
                           log. You would attach to it via  the  corresponding
                           tty.

                           con1=pty

                 pts terminal
                           This is similar to pty above, but the specified UML
                           device will be attached to a free pts device on the
                           host. Look at the boot log to see which one.

                           con1=pts

                 xterm     UML  will  run  an  xterm  and  the  device will be
                           attached to it.

                           con1=xterm

                 file descriptors
                           If you set up a file descriptor on the UML  command
                           line,  you  can  attach a UML device to it. This is
                           most commonly used to put the main console back  on
                           stdin  and  stdout  after  assigning  all the other
                           consoles to something else.

                           con0=fd:0,fd:1 con=xterm

                 You can also specify different input and output channels  for
                 a device by putting a comma between them:

                 ssl3=tty:/dev/tty2,xterm

                 See  Setting  up  Serial  Lines  and  Consoles  (link  to URL
                 file:///usr/share/doc/user-mode-linux-doc/html/input.html)
                 for a more information.

       ssl[0-9]*=description
                 Attach a serial line to a host channel.  The same options are
                 supported as for consoles, described above.

       fake_ide  Create ide0 entries that map onto ubd devices.

       ubd[0-7][r][s]=file

                            ubd0r=/tmp/debian-woody.ext2

                            ubd0rs=/tmp/debian-woody.ext2

                            ubd0=/tmp/chroot

                 This is used to associate a device with  a  file  or  in  the
                 underlying  filesystem. Usually, there is a filesystem in the
                 file, but that's not required.  Swap devices containing  swap
                 files  can be specified like this. Also, a file which doesn't
                 contain a filesystem  can  have  its  contents  read  in  the
                 virtual machine by running dd on the device. Appending an 'r'
                 will cause that device to be mounted read-only. Appending  an
                 's'  tells  UML  to  open  the file using O_SYNC (synchronous
                 I/O).

                 The ubd option can no longer be used to specify a hostfs root
                 filesystem.  See the "root" option for a more correct method.

       udb       This option is here solely to catch ubd -> udb  typos,  which
                 can   be   to   impossible   to  catch  visually  unless  you
                 specifically look for them. The only  result  of  any  option
                 starting with 'udb' is an error in the boot output.

       fakehd    Change  the ubd device name to "hd", allowing programs within
                 UML to access UBD devices as if they were normal IDE disks.

       eth[0-9]+=transport,options
                 Configure a network device.  Formats and examples follow (one
                 for each configured transport).

                           eth[0-9]+=ethertap,device,ethernet_address,tap_ip_address

                            eth0=ethertap,tap0,,192.168.0.1

                           eth[0-9]+=tuntap,,ethernet_address,ip_address

                            eth0=tuntap,,fe:fd:0:0:0:1,192.168.0.1

                           eth[0-9]+=daemon,ethernet_address,type,control_socket,data_socket

                                               eth0=daemon,,unix,/var/run/uml-
                           utilities/uml_switch.ctl

                           eth[0-9]+=slip,slip_ip

                            eth0=slip,192.168.0.1

                           eth[0-9]+=mcast,ethernet_address,address,port,ttl

                            eth0=mcast,,224.2.3.4:5555,3

       mode=tt   When  both  CONFIG_MODE_TT  and CONFIG_MODE_SKAS are enabled,
                 this option forces UML to run in tt  (tracing  thread)  mode.
                 It  is  not  the  default because it's slower and less secure
                 than skas mode.

       mode=skas0
                 Disables SKAS3 usage, so  that  SKAS0  is  used,  unless  you
                 specify mode=tt. Note that this was recently added - on older
                 kernels you must use simply "skas0".

       skas0     Disables SKAS3 usage, so  that  SKAS0  is  used,  unless  you
                 specify mode=tt.

       mconsole=notify:socket
                 Requests that the mconsole driver send a message to the named
                 Unix socket containing the name of the mconsole socket.  This
                 also  serves  to notify outside processes when UML has booted
                 far enough to respond to mconsole requests.

       aio=2.4   This is used to force UML to use 2.4-style AIO even when  2.6
                 AIO  is  available.   2.4 AIO is a single thread that handles
                 one request at a time, synchronously.  2.6 AIO  is  a  thread
                 which  uses  the  2.6  AIO  interface  to handle an arbitrary
                 number of pending requests.  2.6 AIO is not available  in  tt
                 mode,   on   2.4   hosts,   or   when   UML   is  built  with
                 /usr/include/linux/aio_abi.h     not     available.      Many
                 distributions  don't  include  aio_abi.h, so you will need to
                 copy it from a kernel  tree  to  your  /usr/include/linux  in
                 order to build an AIO-capable UML.

       hostfs=rootdir,flags
                 This  is  used  to set hostfs parameters.  The root directory
                 argument is used to confine all hostfs mounts to  within  the
                 specified   directory  tree  on  the  host.   If  this  isn't
                 specified, then a user inside UML can mount anything  on  the
                 host  that's  accessible  to the user that's running it.  The
                 only flag currently supported is  'append',  which  specifies
                 that  all  files  opened  by  hostfs will be opened in append
                 mode.

       xterm=terminal emulator,title switch,exec switch
                 Specifies an alternate  terminal  emulator  to  use  for  the
                 debugger,  consoles,  and serial lines when they are attached
                 to the xterm channel.  The values are the  terminal  emulator
                 binary,  the  switch it uses to set its title, and the switch
                 it uses to execute a  subprocess,  respectively.   The  title
                 switch  must  have  the  form  exec switch must have the form
                 '<switch>  command  arg1  arg2   The   default   values   are
                 'xterm=xterm,-T,-e'.     Values    for   gnome-terminal   are
                 'xterm=gnome-terminal,-t,-x'.

       noptraceldt
                 Turns off usage of PTRACE_LDT, even if host supports it.   To
                 support  PTRACE_LDT,  the  host needs to be patched using the
                 current skas3 patch.

       noptracefaultinfo
                 Turns off usage of PTRACE_FAULTINFO, even  if  host  supports
                 it. To support PTRACE_FAULTINFO, the host needs to be patched
                 using the current skas3 patch.

       noprocmm  Turns off usage of /proc/mm, even if host  supports  it.   To
                 support  /proc/mm,  the  host  needs  to be patched using the
                 current skas3 patch.

       nosysemu  Turns off syscall emulation patch  for  ptrace  (SYSEMU)  on.
                 SYSEMU  is  a performance-patch introduced by Laurent Vivier.
                 It changes behaviour of  ptrace()  and  helps  reducing  host
                 context  switch  rate.  To make it working, you need a kernel
                 patch       for       your       host,       too.         See
                 http://perso.wanadoo.fr/laurent.vivier/UML/    for    further
                 information.

       --help    Prints syntax information.

       --version Prints the version number of the kernel.

       --showconfig
                 Prints the configuration used to build the kernel.  To  print
                 all the options used to build the "linux" uml kernel and save
                 them in "config_file" you can use

                 linux --showconfig > config_file

SEE ALSO

       The UserModeLinux-HOWTO (link to  URL  file:///usr/share/doc/user-mode-
       linux-doc/html/UserModeLinux-HOWTO.html)

AUTHOR

       User-mode Linux was written by Jeff Dike and others.

       This  manual  page was written by Matt Zimmerman mdz@debian.org for the
       Debian GNU/Linux system, based on linux --help       and the user-mode-
       linux website.

                                                                      LINUX(1)