[SCM] live-manual branch, debian, updated. debian/2.0_a5-1-7-gd8377f2

Daniel Baumann daniel at debian.org
Tue Sep 7 12:25:25 UTC 2010


The following commit has been merged in the debian branch:
commit 126569f0b92f5f794ae504d0b1c0a8a94b2b4902
Author: Daniel Baumann <daniel at debian.org>
Date:   Tue Sep 7 14:22:15 2010 +0200

    Updating other_basics for squeeze.

diff --git a/manual/en/other_basics.ssi b/manual/en/other_basics.ssi
index 42bbb45..2ec267b 100644
--- a/manual/en/other_basics.ssi
+++ b/manual/en/other_basics.ssi
@@ -6,10 +6,10 @@ This chapter contains a brief overview of the build process as well as containin
 
 2~ What is a live system?
 
-A live system usually means an OS booted on a computer from a removable medium (such as CD-ROM, USB stick, or network), ready to use without any installation on the usual drive(s), with an auto-configuration done at runtime (see terms).
+A live system usually means an operating system booted on a computer from a removable medium (such as CD-ROM, USB stick, or network), ready to use without any installation on the usual drive(s), with an auto-configuration done at runtime (see terms).
 % FIXME: <xref linkend="terms"/>
 
-With Debian Live, it's a Debian GNU/Linux OS, built for one of the supported architectures (currently amd64, i386, powerpc and sparc). It is made from following parts:
+With Debian Live, it's a Debian GNU/Linux operating system, built for one of the supported architectures (currently amd64, i386, powerpc and sparc). It is made from following parts:
 
 _* Linux kernel
 
@@ -17,38 +17,38 @@ _* The Linux image, usually named #{vmlinuz*}#
 
 _* *{Initial RAM disk image (initrd)}*: RAM disk setup for the Linux boot, containing modules possibly needed to mount the filesystem's image and some scripts to do it.
 
-_* *{System image}*: The OS filesystem image. Debian Live uses SquashFS, a compressed filesystem, to minimize its image size. Note that it's read-only. So, during boot the Debian Live system will use a RAM disk and 'union' mechanism to enable writing files within the running system. However, all modifications will be lost upon shutdown unless optional persistence partition(s) are used. (See persistence.)
+_* *{System image}*: The operating systems filesystem image. Debian Live uses SquashFS, a compressed filesystem, to minimize its image size. Note that it's read-only. So, during boot the Debian Live system will use a RAM disk and 'union' mechanism to enable writing files within the running system. However, all modifications will be lost upon shutdown unless optional persistence partition(s) are used (see persistence).
 % FIXME: <xref linkend="persistence"/>
 
-_* *{Bootloader}*: A small piece of code, crafted to boot up from the chosen media, possibly presenting a prompt or menu to allow selection of options/configuration. It then loads the Linux kernel and its initrd to run with an associated filesystem image. Different solutions can be used depending on the target media and format of the filesystem containing the previous components: Isolinux to boot from a CD or DVD in ISO9660 format, syslinux for HDD or USB drive booting from a VFAT partition, GRUB for ext2/3 partition, pxelinux for PXE netboot, etc.
+_* *{Bootloader}*: A small piece of code, crafted to boot up from the chosen media, possibly presenting a prompt or menu to allow selection of options/configuration. It then loads the Linux kernel and its initrd to run with an associated filesystem image. Different solutions can be used depending on the target media and format of the filesystem containing the previous components: Isolinux to boot from a CD or DVD in ISO9660 format, syslinux for HDD or USB drive booting from a VFAT partition, extlinux for ext2/3/4 and btrfs partitions, pxelinux for PXE netboot, GRUB for ext2/3/4 partition, etc.
 
-_* The Debian Live tools will build the system image from your specifications, setup a Linux kernel and its initrd, a bootloader to run them, all in one media-dependant format(ISO9660 image, disk image, etc.)
+_* live-build will build the system image from your specifications, setup a Linux kernel and its initrd, a bootloader to run them, all in one media-dependant format (ISO9660 image, disk image, etc.)
 
 2~ First steps: building an ISO image
 
-The following sequence of helper commands, provided by live-helper, will create a basic ISO image containing just the Debian standard system without X.org. It is suitable for burning to CD or DVD media.
+The following sequence of commands, provided by live-build, will create a basic ISO image containing just the Debian standard system without X.org. It is suitable for burning to CD or DVD media.
 
-First, we run the lh config helper command which will create a "config/" hierarchy in the current directory for use by other helper commands:
+First, we run the #{lb config}# command which will create a "config/" hierarchy in the current directory for use by other commands:
 
 code{
 
-$ lh config
+$ lb config
 
 }code
 
-By passing no parameters to lh config we indicated that we wish to use the defaults. This will create an image of type binary (see lh-config).
-% FIXME: <xref linkend="lh-config"/>
+By passing no parameters to #{lb config}# we indicated that we wish to use the defaults (see lb-config).
+% FIXME: <xref linkend="lb-config"/>
 
-Now that we have a "config/" hierarchy, we may build the image with the lh build helper command:
+Now that we have a "config/" hierarchy, we may build the image with the lb build command:
 
 code{
 
-# lh build
+# lb build
 
 }code
 
-This process can take a while, depending on the speed of your network connection (see lh-build).
-% FIXME: <xref linkend="lh-build"/>
+This process can take a while, depending on the speed of your network connection (see lb-build).
+% FIXME: <xref linkend="lb-build"/>
 
 3~ Testing an ISO image with Qemu
 
@@ -56,7 +56,9 @@ Testing an ISO is simple:
 
 code{
 
-# apt-get install qemu $ qemu -cdrom binary.iso
+# apt-get install qemu
+
+$ qemu -cdrom binary.iso
 
 }code
 
@@ -70,33 +72,9 @@ code{
 
 }code
 
-and either install
-
-_* the modules package for a stock kernel eg virtualbox-ose-modules-2.6.26-1-486 or
-
-_* the modules package compiled for your kernel using module-assistant from the package virtualbox-ose-source
-
-Run Virtualbox:
-
-For example, in Gnome Applications -> System Tools -> VirtualBox OSE
-
-Create a virtual machine from your Live ISO
-
-To create a virtual machine "mylive" from A CDROM ISO "binary.iso" in VirtualBox:
-
-Machine -> New
-
-In the Wizard: FIXME
+and either install #{virtualbox-ose-source}# or #{virtualbox-ose-dkms}# to build the required kernel modules to run virtualbox-ose.
 
-3~ Testing an ISO image with VMware Workstation
-
-In order to test the ISO with VMware Workstation:
-
-Run VMware Workstation:
-
-Click on Edit virtual machine settings in the VM summary page
-
-Then, click on the CD-ROM device and select Use ISO image. Remeber to connect the CD-ROM device at power on and remeber to adjust the boot order in the bios.
+After successful installation, virtualbox can be e.g. found in the GNOME menu under 'Applications/System Tools/VirtualBox OSE'.
 
 3~ Burning an ISO image to a physical medium
 
@@ -105,36 +83,37 @@ Burning an ISO image is easy:
 code{
 
 # apt-get install wodim
+
 $ wodim binary.iso
 
 }code
 
 2~ Building an USB/HDD image
 
-The following sequence of helper commands will create a basic USB/HDD image containing just the Debian standard system without X.org. It is suitable for booting from USB sticks, USB hard drives, and various other portable storage devices.
+The following sequence of commands will create a basic USB/HDD image containing just the Debian standard system without X.org. It is suitable for booting from USB sticks, USB hard drives, and various other portable storage devices.
 
-Note if you created an iso image with the previous example, you will need to clean up your working directory with the lh clean helper command (see lh-clean):
-% FIXME: <xref linkend="lh-clean"/>
+Note if you created an iso image with the previous example, you will need to clean up your working directory with the #{lb clean} command (see lb-clean):
+% FIXME: <xref linkend="lb-clean"/>
 
 code{
 
-$ lh clean --binary
+$ lb clean --binary
 
 }code
 
-Run the lh config helper command with the parameters to configure the "config/" hierarchy to create a USB/HDD image type:
+Run the #{lb config}# command with the parameters to configure the "config/" hierarchy to create a USB/HDD image type:
 
 code{
 
-$ lh config -b usb-hdd
+$ lb config -b usb-hdd
 
 }code
 
-Now build the image with the lh build helper command:
+Now build the image with the #{lb build} command:
 
 code{
 
-# lh build
+# lb build
 
 }code
 
@@ -156,21 +135,15 @@ where #{${USBSTICK}}# is the device file of your key, like #{/dev/sdb}# (not a p
 
 code{
 
-# apt-get install qemu $ qemu -hda binary.img
-
-}code
-
-3~ Testing an USB/HDD image with VMware Workstation
+# apt-get install qemu
 
-In order to test the USB/HDD image with VMware Workstation:
+$ qemu -hda binary.img
 
-Run VMware Workstation:
-
-Write the image to an usb stick. In VMware, click on Edit virtual machine settings in VM summary page. Then, add a new physical harddisk device and enter the device node of your usb stick.
+}code
 
 3~ Using the space left on a USB stick
 
-If you want to use the remaining free space after you have installed the binary.img, you can use a partitioning tool such as gparted or parted to create a new partition on the stick. The first partition will be used by the Debian Live system.
+If you want to use the remaining free space after you have installed the binary.img, you can use a partitioning tool such as #{gparted}# or #{parted}# to create a new partition on the stick. The first partition will be used by the Debian Live system.
 
 code{
 
@@ -178,11 +151,11 @@ code{
 
 }code
 
-Ater the creation of the partition you have to create a filsystem on it. One possible choice would be ext2 (ext3 isn't recommended because the journaling causes too many writes to the stick).
+Ater the creation of the partition you have to create a filsystem on it. One possible choice would be ext4.
 
 code{
 
-# mkfs.ext2 ${USBSTICK}
+# mkfs.ext4 ${USBSTICK}
 
 }code
 
@@ -196,58 +169,50 @@ code{
 
 *{Remember: Every time you install a new binary.img on the stick, all your data will be lost because the image includes a complete partition table.}*
 
-FIXME: Describe installing Debian Live to a partition (e.g. /dev/sdc1) AND using a bootloader to boot this.
-
 2~ Building a netboot image
 
-The following sequence of helper commands will create a basic netboot image containing the Debian standard system without X.org. It is suitable for booting over the network.
+The following sequence of commands will create a basic netboot image containing the Debian standard system without X.org. It is suitable for booting over the network.
 
-Note if you performed any previous examples, you will need to clean up your working directory with the lh clean helper command:
+Note if you performed any previous examples, you will need to clean up your working directory with the #{lb clean}# command:
 
 code{
 
-$ lh clean --binary
+$ lb clean --binary
 
 }code
 
-Run the lh config helper command with the parameters to configure the "config/" hierarchy to create our netboot image:
+Run the #{lb config}# command with the parameters to configure the "config/" hierarchy to create our netboot image:
 
 code{
 
-$ lh config -b net --net-root-path "/srv/debian-live" --net-root-server "192.168.0.1"
+$ lb config -b net --net-root-path "/srv/debian-live" --net-root-server "192.168.0.1"
 
 }code
 
 In contrast with the ISO and USB hdd images, netbooting does not support serving a filesystem image with the client so the files must be served via NFS. The net-root-path and net-root-server options specify the location and server, respectively, of the NFS server where the filesytem image will be located at boot-time.
 
-Now build the image with the lh build helper command:
+Now build the image with the #{lb build}# command:
 
 code{
 
-# lh build
+# lb build
 
 }code
 
-In a network boot the client runs a small piece of software, which usually resides on the EPROM of the Ethernet card. This program sends a DHCP request to get an IP address and information about what to do next. Typically the next step is getting a higher level boot loader via the TFTP protocol. That could be Grub, PXELINUX, or even boot directly to an operating system like Linux.
+In a network boot the client runs a small piece of software, which usually resides on the EPROM of the Ethernet card. This program sends a DHCP request to get an IP address and information about what to do next. Typically the next step is getting a higher level boot loader via the TFTP protocol. That could be PXELINUX, Grub or even boot directly to an operating system like Linux.
 
-For example, if you unpack the generated binary-net.tar.gz archive in the /srv/debian-live directory, you'll find the filesystem image in live/filesystem.squashfs and the kernel, initrd and PXE Linux bootloader in tftpboot/debian-live/i386.
+For example, if you unpack the generated binary-net.tar.gz archive in the /srv/debian-live directory, you'll find the filesystem image in live/filesystem.squashfs and the kernel, initrd and PXELINUX bootloader in tftpboot/debian-live/i386.
 
-We must now configure three services on the server to enable netboot:
+We must now configure three services on the server to enable netboot.
 
 3~ DHCP server
 
 We must configure our network's DHCP server to be sure to give an IP address to the computer netbooting, and to advertise the location of the PXE bootloader.
 
-Here is an example for inspiration, written for the ISC DHCP server (package dhcp3-server) in the /etc/dhcp3/dhcpd.conf configuration file;
+Here is an example for inspiration, written for the ISC DHCP server #{isc-dhcp-server}# in the /etc/dhcp/dhcpd.conf configuration file;
 
+% FIXME
 code{
-# Options DHCP spécifiques à Pxelinux:
-option space pxelinux;
-option pxelinux.magic      code 208 = string;
-option pxelinux.configfile code 209 = text;
-option pxelinux.pathprefix code 210 = text;
-option pxelinux.reboottime code 211 = unsigned integer 32;
-
 
 subnet 192.168.1.0 netmask 255.255.255.0 {   # 192.168.1.0/24
 
@@ -265,57 +230,40 @@ subnet 192.168.1.0 netmask 255.255.255.0 {   # 192.168.1.0/24
   # net boot configuration for guests with a PXE client :
   if substring (option vendor-class-identifier, 0, 9) = "PXEClient" {
     # Note : all files for PXE are relatives to the TFTP server's root
-    # path, as usually defined in /etc/inetd.conf.
 
     # PXE boot loader (first program to be loaded, by TFTP)
     filename "pxelinux.0";
 
-    # describe some specific pxelinux's options through DHCP options :
-    site-option-space "pxelinux";
-    option pxelinux.magic f1:00:74:7e;
-    if exists dhcp-parameter-request-list {
-      # Always send the PXELINUX options (specified in hexadecimal)
-      option dhcp-parameter-request-list = concat(option dhcp-parameter-request-list,d0,d1,d2,d3);
-    }
-
-    # For a PXE boot menu, different versions are available : simple
-    # text, text with curses, graphic (VESA)
-    #option pxelinux.configfile "pxelinux/config_simple";
-    #option pxelinux.configfile "pxelinux/config_curses";
-    option pxelinux.configfile "pxelinux/config_vesa";
-
-    # automatically reboot after 10 minutes of no activity
-    option pxelinux.reboottime 600;
   }
 }
 
 }code
 
-3~ TFTPd server
+3~ TFTP server
 
 This serves the kernel and initial ramdisk to the system at run-time.
 
-You should install the tftpd-hpa package. It can serve all files contained inside a root directory, usually /var/lib/tftpboot/, as defined with its -s option. To let it serve files inside /srv/debian-live/tftpboot, modify its start definition in /etc/inetd.conf with:
+You should install the tftpd-hpa package. It can serve all files contained inside a root directory, usually /srv/tftp. To let it serve files inside /srv/debian-live/tftpboot, run as root the following command:
 
 code{
 
-tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /srv/debian-live/tftpboot -r blksize -v -v
+dpkg-reconfigure -plow tftpd-hpa
 
-}code
+code}
 
-and reload the super server with /etc/init.d/openbsd-inetd reload.
+and fill in the new tftp server directory when being asked about it.
 
 3~ NFS server
 
 Once the guest computer has downloaded and booted a Linux kernel and loaded its initrd, it will try to mount the Live filesystem image through a NFS server.
 
-You should install the nfs-kernel-server package -- nfs-user-server does not function correctly with netboot.
+You need to install the nfs-kernel-server package.
 
 Then, make the filesystem image available through NFS by adding a line like the following to /etc/exports:
 
 code{
 
-/srv/debian-live *(ro,async,subtree_check,no_root_squash)
+/srv/debian-live *(ro,async,no_root_squash,no_subtree_check)
 
 }code
 
@@ -331,10 +279,33 @@ Setting up these three services can be a little tricky. You might need some pati
 
 3~ Netboot testing HowTo
 
-Netboot image creation is made easy with live-helper magic, but testing the images on physical machines can be really time consuming.
+Netboot image creation is made easy with live-build magic, but testing the images on physical machines can be really time consuming.
 
 To make our life easier, we can use virtualization. There are two solutions.
 
+3~ Qemu
+
+_* Install qemu, bridge-utils, sudo.
+
+Edit /etc/qemu-ifup:
+
+code{
+
+#!/bin/sh
+sudo -p "Password for $0:" /sbin/ifconfig $1 172.20.0.1
+echo "Executing /etc/qemu-ifup"
+echo "Bringing up $1 for bridged mode..."
+sudo /sbin/ifconfig $1 0.0.0.0 promisc up
+echo "Adding $1 to br0..."
+sudo /usr/sbin/brctl addif br0 $1
+sleep 2
+
+}code
+
+Get, or build a grub-floppy-netboot (in the svn).
+
+Launch qemu with "-net nic,vlan=0 -net tap,vlan=0,ifname=tun0"
+
 3~ VMWare Player
 
 _* Install VMWare Player ("free as in beer" edition)
@@ -375,26 +346,3 @@ _* You can play with this configuration file (i.e. change memory limit to 256)
 _* Double click on this file (or run VMWare player and selecet this file).
 
 _* When running just press space if that strange question comes up...
-
-3~ Qemu
-
-_* Install qemu, bridge-utils, sudo.
-
-Edit /etc/qemu-ifup:
-
-code{
-
-#!/bin/sh
-sudo -p "Password for $0:" /sbin/ifconfig $1 172.20.0.1
-echo "Executing /etc/qemu-ifup"
-echo "Bringing up $1 for bridged mode..."
-sudo /sbin/ifconfig $1 0.0.0.0 promisc up
-echo "Adding $1 to br0..."
-sudo /usr/sbin/brctl addif br0 $1
-sleep 2
-
-}code
-
-Get, or build a grub-floppy-netboot (in the svn).
-
-Launch qemu with "-net nic,vlan=0 -net tap,vlan=0,ifname=tun0"

-- 
live-manual



More information about the debian-live-changes mailing list