| Copyright: © 2007-2009, Spiros Georgaras <sng@hellug.gr> | Single page |
| Last update: 23/12/2009 | Printable version |
| Previous | Contents | Next |
Booting a linux system means loading a kernel, which is actually the operating system. Well, this is not exactly true, and it is not the only thing that happens during boot up phase, but it is not my intension to explain it here.
The kernel is loaded by Isolinux (the CD boot manager), which is able to pass a number of parameters to it, through its configuration file isolinux.cfg.
These parameters, called boot parameters, are documented by the kernel itself, and can differentiate its behavior dramatically. In our case, each CD (SystemRescueCD and Clonezilla Live) accept a different set of parameters, because they are based on gentoo and debian, respectively.
While in the splash screen of Clonezilla-SysRescCD, you can edit the boot parameters by pressing TAB. They will be presented to you, and you can add or remove what you want. You must be careful not to change or remove the parameters that are dedicated to the CD itself, as altering them will certainty make it unbootable. When you are done, just press ENTER to boot.
![]() |
The following info applies to SystemRescueCD v. 1.3.3. In case you need to get info for a more recent version of SystemRescueCD please see the page "Sysresccd-manual-en Booting the CD-ROM" |
A typical sysresccd isolinux entry is:
kernel rescuecd
append initrd=initram.igz video=ofonly
The kernel used is rescuecd, and anything after the word append is a boot parameter.
Available kernels (boot images):
The boot parameters you can use are:
General boot options
xx with your keymap (for example: setkmap=de for german keyboards)
docache option requires 400MB of memory if you want to cache everything (including the bootdisks and isolinux directories). You can add the lowmem option if you have less that 400MB of memory of to prevent these directories to be copied into memory.
/dev/sda6, you can type rescuecd root=/dev/sda6 and Gentoo Linux will be started instead of the system that is on the CD-ROM. Keep in mind that you must use a 64bits kernel if your system is made of 64bits programs. For instance, you can boot a 64bits linux system installed on /dev/sda6 with rescue64 root=/dev/sda6. From SystemRescueCd-1.0.4, this option works with LVM disks, so you can write something like rescuecd root=/dev/VolGroup00/LogVol00. SystemRescueCd-1.0.4 and newer versions also supports root=auto, that will scan all the block devices of the computer to find a linux system. The first linux system found on the disks will be started. So with root=auto let you start the system installed from the CD-ROM in case you have problem with your boot loader or with your kernel for instance. You can have more details about that option.
initscript=samba:start. This does the same thing as /etc/init.d/samba start. You can use this option several times with different services. All the action that are supported by an initscript can be used. This option is available with SystemRescueCd-1.0.2 and newer.
backstore=off on the boot command line. If you want to save your backing-store file on an harddisk, you will have to boot with backstore=alldev so that it scans all devices not just removable devices. The default place for backing-stores file is any file named sysrcd.bs located at the root of a disk which is often an USB key. You can change the path by using an option such as backstore=/sysrcd/mybackstore.bs and then sysresccd will try to find a file named mybackstore.bs located in /sysrcd in any block-device (partition, USB-stick, ...). You can find more information about on the page about backing-stores.
Hardware, drivers and troubleshooting options
noxdetect that was useful in previous versions.
doload=3c59x)
noload=3c59x). Use this option if you have a problem when the system loads a particular module at boot time.
startx by hand to get it.
startx command will load the Xvesa server instead of Xorg, and Xvesa will use the screen resolution given as parameter (eg: 1024x768, 1280x1024x32). The forcevesa option can take a parameter from SystemRescueCd-1.0.0 and more recent.
rescuecd all-generic-ide)
skipmount=/dev/sda1 skipmount=/dev/sda2 if you want SystemRescueCd to ignore these two partitions. This boot option requires SystemRescueCd-1.0.1 or more recent.
Network auto-configuration and remote access
dodhcp if you have a DHCP server on your network and you want the system to get a dynamic IP address at boot time.
/cidr extension is optional. For instance, if you use option ethx=192.168.0.1 on a machine with two ethernet adapters, both eth0 and eth1 will be configured with 192.168.0.1. You can also write something like ethx=10.0.0.1/24 (using the cidr notation) if you don't use the default netmask.
ethx=ipaddr/cidr but it configures only one interface at a time. Of course, you can use the eth0=ipaddr/cidr option it for all the ethernet interfaces, not just eth0. For instance if you want to configure the network on a server that has two interfaces, you can write something like this: eth0=192.168.10.1/24 eth1=192.168.20.1. This option requires SystemRescueCd-1.0.2 or newer.
dns=192.168.0.254 means that you want to use 192.168.0.254 as the DNS server.
gateway=192.168.0.254 means that the computer can connect to a computer outside of the local network via 192.168.0.254.
1234. That way you can connect from the network and ssh on the livecd and give 123456 password as the root password.
x with the number of displays you want, and 123456 with your password The password must be between 5 and 8 characters, else the boot option will be ignored. In other words the vncserver=2:MyPaSsWd option will give you access to two displays (display=1 on tcp/5901 and display=2 on tcp/5902). Display 0 is reserved for X.Org since SystemRescueCd-1.1.0.
nameif=eth0!00:0C:29:57:D0:6E,eth1!00:0C:29:57:D0:64. Be careful, you have to respect the separator (comma between the interfaces and exclamation marks between the name and the mac address).
Options provided by the autorun
/dev/sda1), an nfs share (nfs://192.168.1.1:/path/to/scripts), a samba share (smb://192.168.1.1/path/to/scripts), or an http directory (http://192.168.1.1/path/to/scripts).
autoruns=0,2,7 then the following autorun scripts will be executed: autorun0, autorun2, autorun7. Use autoruns=no to disable all the autorun scripts with a number.
/var/autorun/tmp after execution
autorun script will not be executed
![]() |
The following info applies to Clonezilla Live v. 1.2.2-31 In case you need to get info for a more recent version of Clonezilla Live please see the page "The boot parameters for Clonezilla live" |
A typical Clonezilla Live isolinux entry is:
kernel /live/vmlinuz1
append initrd=/live/initrd1.img boot=live union=aufs ocs_live_run="ocs-live-general"
ocs_live_extra_param="" ocs_live_keymap="" ocs_live_batch="no" ocs_lang="" vga=791 nolocales
The kernel used is vmlinuz, and anything after the word append is a boot parameter.
The following info comes from the page titled The boot parameters for Clonezilla live.
------------------------ #!/bin/bash cp -f /live/image/lsi/megasr.ko /lib/modules/`uname -r`/kernel/drivers/block/ chown root.root /lib/modules/`uname -r`/kernel/drivers/block/megasr.ko depmod -a modprobe megasr sleep 1 ------------------------
------------------------
label Clonezilla Live
MENU DEFAULT
# MENU HIDE
MENU LABEL Clonezilla Live
# MENU PASSWD
kernel vmlinuz1
append initrd=initrd1.img boot=live union=aufs noswap noprompt vga=788 ip=frommedia fetch=tftp://192.168.120.254/filesystem.squashfs ocs_prerun="busybox tftp -g -b 10240 -r custom-ocs-2 -l /tmp/custom-ocs-2 192.168.120.254" ocs_live_run="bash /tmp/custom-ocs-2" ocs_live_keymap="NONE" ocs_live_batch="no" ocs_lang="en_US.UTF-8" nolocales
TEXT HELP
Boot Clonezilla live via network
ENDTEXT
------------------------
The content of custom-ocs-2 can be like:
------------------------ #!/bin/bash . /opt/drbl/sbin/drbl-conf-functions . /opt/drbl/sbin/ocs-functions . /etc/ocs/ocs-live.conf # Load language file ask_and_load_lang_set en_US.UTF-8 # 1. Mount the clonezilla image home. # Types: local_dev, ssh_server, samba_server, nfs_server prep-ocsroot -t nfs_server # 2. Restore the image if mountpoint /home/partimag/ &>/dev/null; then ocs-sr -l en_US.UTF-8 -c -p choose restoredisk ask_user ask_user else [ "$BOOTUP" = "color" ] && $SETCOLOR_FAILURE echo "Fail to find the Clonezilla image home /home/partimag!" echo "Program terminated!" [ "$BOOTUP" = "color" ] && $SETCOLOR_NORMAL fi ------------------------
This is the manual of live-initramfs
live-initramfs(7)
=================
Name
----
live-initramfs - Debian Live initramfs hook
Synopsis
--------
BOOT=live
as kernel parameter at boot prompt.
Description
-----------
live-initramfs is a hook for the initramfs-tools, used to generate a initramfs
capable to boot live systems, such as those created by *live-helper*(7).
This includes the Debian Live isos, netboot tarballs, and usb stick images.
At boot time it will look for a (read-only) media containing a "/live"
directory where a root filesystems (often a compressed filesystem image like
squashfs) is stored. If found, it will create a writable environment, using
aufs, for Debian like systems to boot from.
You probably do not want to install this package onto a non-live system,
although it will do no harm.
live-initramfs is a fork of link:http://packages.ubuntu.com/casper/[casper].
casper was originally written by Tollef Fog Heen <tfheen@canonical.com>
and Matt Zimmerman <mdz@canonical.com>.
Boot options
------------
Here is the complete list of recognized boot parameters by live-initramfs.
access=*ACCESS*::
Set the accessibility level for physically or visually impared users. ACCESS
must be one of v1, v2, v3, m1, or m2. v1=lesser visual impairment, v2=moderate
visual impairment, v3=blindness, m1=minor motor difficulties, m2=moderate motor
difficulties.
console=*TTY,SPEED*::
Set the default console to be used with the "live-getty" option. Example:
"console=ttyS0,115200"
debug::
Makes initramfs boot process more verbose.
fetch=*URL*::
Another form of netboot by downloading a squashfs image from a given url,
copying to ram and booting it.
hostname=*HOSTNAME*, username=*USER*, userfullname=*USERFULLNAME*::
Those parameters lets you override values read from the config file.
ignore_uuid
Do not check that any UUID embedded in the initramfs matches the discovered
medium. live-initramfs may be told to generate a UUID by setting
LIVE_GENERATE_UUID=1 when building the initramfs.
integrity-check::
If specified, an MD5 sum is calculated on the live media during boot and
compared to the value found in md5sum.txt found in the root directory of the
live media.
ip=**[CLIENT_IP]:[SERVER_IP]:[GATEWAY_IP]:[NETMASK]:[HOSTNAME]:[DEVICE]:[AUTOCONF] [,[CLIENT_IP]:[SERVER_IP]:[GATEWAY_IP]:[NETMASK]:[HOSTNAME]:[DEVICE]:[AUTOCONF]]***::
Let you specify the name(s) and the options of the interface(s) that should be
configured at boot time. Do not specify this if you want to use dhcp (default).
It will be changed in a future release to mimick official kernel boot param
specification (e.g. ip=10.0.0.1::10.0.0.254:255.255.255.0::eth0,:::::eth1:dhcp).
ip[=**frommedia**]::
If this variable is set, dhcp and static configuration are just skipped and the
system will use the (must be) media-preconfigured /etc/network/interfaces
instead.
{keyb|kbd-chooser/method}=**KEYBOARD**, {klayout|console-setup/layoutcode}=**LAYOUT**, {kvariant|console-setup/variantcode}=**VARIANT**, {kmodel|console-setup/modelcode}=**CODE**, koptions=**OPTIONS**::
Configure the running keyboard as specified, if this one misses live-initramfs
behaves as if "keyb=us" was specified. It will be interfered from "locale=" if
locale is only 2 lowecase letters as a special case. You could also specify
console layout, variant, code, and options (no defaults).
live-getty::
This changes the auto-login on virtual terminals to use the (experimental)
live-getty code. With this option set the standard kernel argument "console=" is
parsed and if a serial console is specified then live-getty is used to autologin
on the serial console.
{live-media|bootfrom}=**DEVICE**::
If you specify one of this two equivalent forms, live-initramfs will first try
to find this device for the "/live" directory where the read-only root
filesystem should reside. If it did not find something usable, the normal scan
for block devices is performed.
{live-media-encryption|encryption}=**TYPE**::
live-initramfs will mount the encrypted rootfs TYPE, asking the passphrase,
useful to build paranoid live systems :-). TYPE supported so far are "aes" for
loop-aes encryption type.
live-media-offset=**BYTES**::
This way you could tell live-initramfs that your image starts at offset BYTES in
the above specified or autodiscovered device, this could be useful to hide the
Debian Live iso or image inside another iso or image, to create "clean" images.
live-media-path=**PATH**::
Sets the path to the live filesystem on the medium. By default, it is set to
'/live' and you should not change that unless you have customized your media
accordingly.
live-media-timeout=**SECONDS**::
Set the timeout in seconds for the device specified by "live-media=" to become
ready before giving up.
{locale|debian-installer/locale}=**LOCALE**::
Configure the running locale as specified, if not present the live-media rootfs
configured locale will be used and if also this one misses live-initramfs behave
as "locale=en_US.UTF-8" was specified. If only 2 lowercase letter are specified
(like "it"), the "maybe wanted" locale is generated (like en:EN.UTF-8), in this
case if also "keyb=" is unspecified is set with those 2 lowercase letters
(keyb=us). Beside that facility, only UTF8 locales are supported by
live-initramfs.
module=**NAME**::
Instead of using the default optional file "filesystem.module" (see below)
another file could be specified without the extension ".module"; it should be
placed on "/live" directory of the live medium.
netboot[=**nfs**|**cifs**]::
This tells live-initramfs to perform a network mount. The parameter "nfsroot="
(with optional "nfsopts="), should specify where is the location of the root
filesystem. With no args, will try cifs first, and if it fails nfs.
nfsopts=::
This lets you specify custom nfs options.
noautologin::
This parameter disables the automatic terminal login only, not touching gdk/kdm.
noxautologin::
This parameter disables the automatic login of gdm/kdm only, not touching
terminals.
nofastboot::
This parameter disables the default disabling of filesystem checks in
/etc/fstab. If you have static filesystems on your harddisk and you want them to
be checked at boot time, use this parameter, otherwise they are skipped.
nopersistent::
disables the "persistent" feature, useful if the bootloader (like syslinux) has
been installed with persistent enabled.
noprompt
Do not prompt to eject the CD on reboot.
nosudo::
This parameter disables the automatic configuration of sudo.
swapon::
This parameter enables usage of local swap partitions.
nouser::
This parameter disables the creation of the default user completely.
noxautoconfig::
This parameter disables Xorg auto-reconfiguration at boot time. This is valuable
if you either do the detection on your own, or, if you want to ship a custom,
premade xorg.conf in your live system.
persistent[=nofiles]::
live-initramfs will look for persistent and snapshot partitions or files labeled
"live-rw", "home-rw", and files called "live-sn*", "home-sn*" and will try to,
in order: mount as /cow the first, mount the second in /home, and just copy the
contents of the latter in appropriate locations (snapshots). Snapshots will be
tried to be updated on reboot/shutdown. Look at live-snapshot(1) for more
informations. If "nofiles" is specified, only filesystems with matching labels
will be searched; no filesystems will be traversed looking for archives or image
files. This results in shorter boot times.
{preseed/file|file}=**FILE**::
A path to a file present on the rootfs could be used to preseed debconf
database.
package/question=**VALUE**::
All debian installed packages could be preseeded from command-line that way,
beware of blanks spaces, they will interfere with parsing, use a preseed file in
this case.
quickreboot::
This option causes live-initramfs to reboot without attempting to eject the
media and without asking the user to remove the boot media.
showmounts::
This parameter will make live-initramfs to show on "/" the ro filesystems
(mostly compressed) on "/live". This is not enabled by default because could
lead to problems by applications like "mono" which store binary paths on
installation.
textonly
Start up to text-mode shell prompts, disabling the graphical user interface.
timezone=**TIMEZONE**::
By default, timezone is set to UTC. Using the timezone parameter, you can set it
to your local zone, e.g. Europe/Zurich.
todisk=**DEVICE**::
Adding this parameter, live-initramfs will try to copy the entire read-only
media to the specified device before mounting the root filesystem. It probably
needs a lot of free space. Subsequent boots should then skip this step and just
specify the "live-media=DEVICE" boot parameter with the same DEVICE used this
time.
toram::
Adding this parameter, live-initramfs will try to copy the whole read-only media
to the computer's RAM before mounting the root filesystem. This could need a lot
of ram, according to the space used by the read-only media.
union=**aufs**|**unionfs**::
By default, live-initramfs uses aufs. With this parameter, you can switch to
unionfs.
utc=**yes**|**no**::
By default, Debian systems do assume that the hardware clock is set to UTC. You
can change or explicitly set it with this parameter.
xdebconf::
Uses xdebconfigurator, if present on the rootfs, to configure X instead of the
standard procedure (experimental).
xvideomode=**RESOLUTION**::
Doesn't do xorg autodetection, but enforces a given resolution.
Files
-----
/etc/live.conf
Some variables can be configured via this config file (inside the live system).
/live/filesystem.module
This optional file (inside the live media) contains a list of white-space or
carriage-return-separated file names corresponding to disk images in the "/live"
directory. If this file exists, only images listed here will be merged into the
root aufs, and they will be loaded in the order listed here. The first entry
in this file will be the "lowest" point in the aufs, and the last file in
this list will be on the "top" of the aufs, directly below /cow. Without
this file, any images in the "/live" directory are loaded in alphanumeric order.
/etc/live-persistence.binds
This optional file (which resides in the rootfs system, not in the live media)
is used as a list of directories which not need be persistent: ie. their
content does not need to survive reboots when using the persistence features.
This saves expensive writes and speeds up operations on volatile data such as
web caches and temporary files (like e.g. /tmp and .mozilla) which are
regenerated each time. This is achieved by bind mounting each listed directory
with a tmpfs on the original path.
See also
--------
live-snapshot(1), initramfs-tools(8), live-helper(7), live-initscripts(7),
live-webhelper(7)
Bugs
----
Report bugs against live-initramfs
link:http://packages.qa.debian.org/live-initramfs[http://packages.qa.debian.org/live-initramfs].
Homepage
--------
More information about the Debian Live project can be found at
link:http://debian-live.alioth.debian.org/[http://debian-live.alioth.debian.org/] and
link:http://wiki.debian.org/DebianLive/[http://wiki.debian.org/DebianLive/].
Authors
-------
live-initramfs is maintained by Daniel Baumann <daniel@debian.org>
for the Debian project.
live-initramfs is a fork of link:http://packages.ubuntu.com/casper/[casper].
casper was originally written by Tollef Fog Heen <tfheen@canonical.com>
and Matt Zimmerman <mdz@canonical.com>.
| Previous | Contents | Next |