Fedora LiveCD

How To Create A Fedora LiveCD

The first step in creating a Fedora livecd is to install LiveCD tools:

sudo yum install livecd-tools

Create a directory to store the files for the livecd(the name does not matter):

mkdir livecd

Livecd-tools uses kickstart files to construct the filesystem for the livecd. The kickstart file specifies what packages will be installed on the cd. Livecd-tools downloads all of the packages locally before installing them. Create a directory to store the packages in:

cd livecd
mkdir cache

To create a livecd, a kickstart file must be created. Thankfully, Fedora provides some kickstart example files:

sudo yum install spin-kickstarts

The kickstarts get installed in /usr/share/spin-kickstarts. The provided default fedora desktop livecd kickstart fedora-livecd-desktop.ks is a good starting point. The default fedora kickstart relies on fedora-live-base.ks. Both of these files can be copied to the livecd directory and customized. Livecd kickstart files have the same syntax as a normal kickstart file. However, some kickstart options are not supported by the livecd-tools. The syntax of a kickstart file is beyond the scope of this document but more information can be found at:

Kickstart

The livecd iso is automatically created using livecd-creator. The filsesystem label for the livecd can be set using the fslabel option. The command to create the livecd iso is:

sudo livecd-creator -c fedora-livecd-desktop.ks --fslabel=FedoraLive --cache=cache -v

The resultant iso can be burned to a cd or put on a usb disk.

Adding Custom Packages to a LiveCD

The easist way to add custom rpms to a livecd is to create a local respository.

First, install the createrepo tool:

sudo yum install createrepo

Next, create a directory for your respository file:

mkdir myrepo

The custom rpms should be copied into myrepo. The local repository can be created using:

createrepo myrepo

Add the local repository to your livecd kickstart file by adding the line:

repo --name=local --baseurl=file://<absolute path to myrepo>

It is necessary to use the absolute path to myrepo. A relative path will not work correctly.

Finally, add the names of the rpms in myrepo to your kickstart file like a normal rpm.

Writing a Fedora LiveCD to a usb disk

Livecd-tools can also copy a livecd to a usb disk without destroying the data on the disk. Additionally, it can create an overlay file which will make data added to the usb linux system persistent. It is important to unmount the usb disk before copying the image. To copy the image use:

sudo livecd-iso-to-disk --noverify --reset-mbr --overlay-size-mb=<size in mb> <livecd iso file> /dev/<usb disk>

Table Of Contents

Previous topic

General Concurrency Control Guidelines

Next topic

TAGS

This Page