CASPER(7)

NAME
casper - a hook for initramfs-tools to boot live systems.

SYNOPSIS
BOOT=casper As kernel parameter boot prompt.

DESCRIPTION
Casper is a hook for initramfs-tools used to generate an initramfs capable to boot live systems as those created by make-live. This includes the Debian-Live isos, netboot tarballs, and usb stick images and Ubuntu live cds. At boot time it will look for a (read-only) media containing a "/casper" directory where a root filesystems (often a compressed squashfs) is stored. If found, it will create a writable environment, using overlay, for debian like systems to boot from.

RECOGNIZED BOOT OPTIONS

casper-getty
    This enables a special "serial" login shell (experimental).

xdebconf
    uses xdebconfigurator, if present on the rootfs, to configure X instead of the standard procedure (experimental).

fsck.mode=skip
    Let you skip the file system check on boot.

hostname=HOSTNAME , userfullname=USERFULLNAME , username=USERNAME
    Those parameters lets you override values read from the config file.

{keyb|kbd-chooser/method}=KEYBOARD , {klayout|console-setup/layoutcode|keyboard-configuration/layoutcode}=LAYOUT , {kvariant|console-setup/variantcode|keyboard-configuration/variantcode}=VARIANT , {kmodel|console-setup/modelcode|keyboard-configuration/modelcode}=CODE ,  koptions=OPTIONS
    Configure the running keyboard as specified, if this one misses casper 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).

ip=IFACE,ADDRESS,NETMASK,GATEWAY[:IFACE,ADDRESS,NETMASK,GATEWAY]*
    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).

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.

{live-media|bootfrom}=DEVICE
    If you specify one of this two equivalent forms, casper will first try to find this device for the "/casper" 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-offset=BYTES
    This way you could tell casper 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 "/casper" and you should not change that unless you have customized your media accordingly.

layerfs-path=PATH
    Sets the path to the leaf layer of an overlay-compatible multi-layer live filesystem on the medium. By default, it is not set and multi layer is disabled and falls back to the default behaviour of casper. A relative path uses "live-mediate-path" as root directory. All the layer images of the same hierarchy must be in the same directory.

locale=LOCALE | debian-installer/locale=LOCALE|debian-installer/language="LANG
    Configure the running locale as specified, if not present the live-media rootfs configured locale will be used and if also this one misses casper 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 it:IT.UTF-8), in this case if also "keyb=" is unspecified is set with those 2 lowercase letters (keyb=it). if debian-installer/language is set, it will choose the appropriate locale corresponding to this language (it,fr,us,...)

debian-installer/driver-update=
    Add a ubiquity hook to install driver-updates to the target system.

netboot[=nfs|cifs|url]
    This tells casper 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. If url method is chosen, "iso-url=" parameter should point to the location of the ".iso" that will be downloaded and mounted. Note "iso-url=" on the commandline alone, by default sets "netboot=url" method too.

iso-url|url=URL
    This tells casper the download location of the installer ISO. The ISO will be downloaded and mounted. Networking is required for this option to work, which can be configured with "ip=" option. Note, setting this option, will also set "netboot=url" method.

persistent
    Casper will look for persistent and snapshot partitions or files labeled "casper-rw", "home-rw", and files called "casper-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 casper-snapshot(1) for more informations.

nopersistent
    disables the above mentioned "persistent" feature, useful if the bootloader (like syslinux) has been installed with persistent enabled.

persistent-path=PATH
    Casper will look for persistency files in the root directory of a partition. With this parameter, the path can be configured so that you can have multiple directories on the same partition to store persistency files.

serialtty=tty
    Redirect output to tty of choice for debugging purposes in live sessions

showmounts|show-cow
    This parameter will make casper to show on "/" the ro filesystems (mostly compressed) on /casper. This is not enabled by default because could lead to problems by applications like "mono" which store binary paths on installation.

textonly|automatic-ubiquity|only-ubiquity|noninteractive
    Start up to text-mode shell prompts, disabling the graphical user interface.

todisk=DEVICE
    Adding this parameter, casper 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, casper 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.

{preseed/file|file}=FILE
    A path to a file present on the rootfs could be used to preseed debconf database.

preseed/allow-network=true
    Bring up the network while running preseed/early_command.

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.

uuid=UUID
    Check that the discovered medium matches UUID rather than the default UUID embedded in the initramfs.

ignore_uuid
    Do not check that any UUID embedded in the initramfs matches the discovered medium. casper may be told to generate a UUID by setting CASPER_GENERATE_UUID=1 when building the initramfs.

noprompt
    Do not prompt to eject the CD on reboot.

access=[v1|v2|v3|m1|m2]
    Adding this parameter will tune the graphic configuration to different accessibility needs. access=v1 for Lesser Visual Impairment, access=v2 for Moderate Visual Impairment, access=v3 for Blindness, access=m1 for Minor motor difficulties and access and m2 for Motor difficulties with pointing devices.

braille=ask
    Adding this parameter will enable graphic configuration for screen reader.

xforcevesa
    Create basic xorg.conf to force VESA mode only which could help if no suitable video driver is available

FILES
/etc/casper.conf some variables can be configured via this config file.

BUGS
casper works fully on amd64, i386 and ppc, it should also run on other archs.

HOMEPAGE
Debian Live project <http://live.debian.net/>

SEE ALSO
casper-snapshot(1),initramfs-tools(8),make-live(8),make-live.conf(5)

AUTHOR
casper was written by Tollef Fog Heen <tfheen@canonical.com>, Matt Zimmerman <mdz@canonical.com>, and Marco Amadori <marco.amadori@gmail.com>.

This manual page was written by Marco Amadori <marco.amadori@gmail.com>,
    for the Debian project (but may be used by others).