---
name: "linux"
section: "1"
platform: "linux"
package: "user-mode-linux"
version: "2.4.18.17um-1"
release: "Debian 3.0 (Woody)"
platforms: ["linux"]
url: "https://new.carta.tech/linux"
---

# linux(1)

User-mode Linux

## 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.

## 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 expoits 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".

- 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.

- 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/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).

-

  As a special case, if a directory is specified instead of  a file for the ubd0 device, the root filesystem will be  mounted as a hostfs filesystem using the specified  directory.

- 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,/tmp/uml.ctl,/tmp/uml.data**

-

  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**

- \--help

  Prints syntax information.

- \--version

  Prints the version number of the kernel

## SEE ALSO

The *UserModeLinux-HOWTO (link to URL file:/usr/share/doc/user-mode-linux-doc/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.
