|
Kernel command line switches
This is a list of the UML-specific command line arguments, plus a few
generic ones which deserve mention here.
This causes UML to print its version and exit.
This causes UML to print a usage message and exit.
con=channel
attaches one or more UML consoles to the
named channel. The format of the channel is described
here.
Starts up the kernel under the control of gdb. See the
kernel debugging tutorial and the
debugging session pages for more
information. Another form of this switch is debug=go which is the
same as debug except that the kernel runs instead of stopping at the
beginning of start_kernel.
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.
Causes the ubd device to put its partition information in
/proc/partitions under the device name "hd" rather than "ubd". Again,
this is to fake out installation procedures which are overly picky in
their sanity-checking.
gdb=channel
, when used with debug, attaches gdb to the
named channel. The format of the channel is described
here.
gdb-pid=pid
, when used with debug, specifies the pid of
an already running debugger that UML should attach to. This can be used
to debug UML with a gdb wrapper such as emacs or ddd, as well as with debuggers
other than gdb. See the
debugging page for more information.
mem=size
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.
ncpus=number
tells an SMP kernel how many virtual processors to
start. Currently, this has no effect because SMP isn't enabled.
ssl=channel
attaches one or more UML serial lines to the
named channel. The format of the channel is described
here.
root=root device
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
ubd=number
causes the ubd device to take over a different major
number than the one assigned to it. This is useful for making it appear to
be an "hd" device.
ubdn=filename
is used to associate a device with a file
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.
n must be in the range 0 to 7. Appending an 'r' to the number will
cause that device to be mounted read-only.
umid=name
is used to assign a name to a virtual machine. This
is intended to make it easy for UIs to manage multiple UMLs. Currently, the
only effect of this is that UML writes its tracing thread pid in
/tmp/uml/name.
umn=ip-address
sets the ip address of the host side of the slip
device that the umn device configures. This is necessary if you want to set up
networking, but your local net isn't 192.168.0.x, or you want to run
multiple virtual machines on a network, in which case, you need to
assign different ip addresses to the different machines. See the
networking tutorial for more information.
|