X-Git-Url: https://git.grml.org/?p=grml-live.git;a=blobdiff_plain;f=docs%2Fgrml-live.txt;h=55736bbe703d925116c1818359960e0148292abc;hp=9de557d5af497c719cc88062d0e18c20ae3b055e;hb=3f821b3f1ea5d7d8359c3df425fbb0038c069427;hpb=b9d53b2a4c8f5e8bf506f893c7d7e3c75a7f548a diff --git a/docs/grml-live.txt b/docs/grml-live.txt index 9de557d..55736bb 100644 --- a/docs/grml-live.txt +++ b/docs/grml-live.txt @@ -203,9 +203,10 @@ Specify name of the release. -s **SUITE**:: -Specify the Debian suite you want to use for your live-system. Defaults to -"squeeze" (being current Debian/stable). Supported values are: etch, lenny, -squeeze, sid. Debian "squeeze" requires a recent base.tgz +Specify the Debian suite you want to use for your live-system. If unset defaults +to "testing". Supported values are: stable, testing, unstable (or their +corresponding release names like "wheezy"). Please be aware that recent Debian +suites might require a recent base.tgz (${GRML_FAI_CONFIG}/config/basefiles/$CLASSNAME.tar.gz) or a recent version of debootstrap. @@ -252,8 +253,8 @@ system: [NOTE] -If you have enough RAM, just run "mount -t tmpfs none /mnt/ramdisk" to get a -tmpfs ("RAMDISK"), and use /mnt/ramdisk as build and output directory - this +If you have enough RAM, just run "mount -t tmpfs none /media/ramdisk" to get a +tmpfs ("RAMDISK"), and use /media/ramdisk as build and output directory - this results in a very fast build process. Note that these files will be gone when rebooting. @@ -318,6 +319,10 @@ selected. The following classes are predefined: * DEBORPHAN: get rid of all packages listed in output of deborphan +* FRESHCLAM: execute freshclam (if it's present) to update clamav definitions +(increases resulting ISO size ~70MB). By default it's skipped to avoid bigger +ISO size. + * GRMLBASE: the main class responsible for getting a minimal subset of what's defining a Grml system. Important parts of the buildprocess are specified in this class as well, so unless you have a really good reason you should always @@ -400,16 +405,6 @@ GRML_FAI_CONFIG=/etc/grml/fai/config - both pointing to a directory shipped by grml-live out-of-the-box so you shouldn't have to configure anything in this file. - ${GRML_FAI_CONFIG}/make-fai-nfsroot.conf - -This file is used by make-fai-nfsroot(8) only. Usually you don't have to change -anything inside this file. If you want to modify NFSROOT though you can adjust -it there. - - ${GRML_FAI_CONFIG}/NFSROOT - -This file specifies the package list for creating the NFSROOT. - ${GRML_FAI_CONFIG}/config/ The main directory for configuration of FAI/grml-live. More details below. @@ -477,8 +472,7 @@ temporary files), if you plan to use GRML_FULL you should have at least 4GB of total free disk space * fast network access for retrieving the Debian packages used for creating the -chroot (check out "local mirror" and "NFSROOT" to workaround this problem as far -as possible) +chroot (check out "local mirror" to workaround this problem as far as possible) For further information see next section. @@ -488,8 +482,8 @@ Current state of grml-live with squashfs-tools and kernel --------------------------------------------------------- Use squashfs-tools >=4.2-1 (available from Grml repositories as well as from -Debian/testing and Debian/unstable) to build Grml (based) ISOs featuring kernel -version 2.6.38-grml[64] or newer. +Debian) to build Grml (based) ISOs featuring kernel version 2.6.38-grml[64] or +newer. [[faq]] FAQ @@ -503,8 +497,7 @@ The easiest way to get a running grml-live setup is to just use Grml. Of course using grml-live on a plain, original Debian installation is supported as well. So there we go. -What we have: plain, original Debian squeeze (6.0) with debian-backports -enabled. (This is important for squashfs-tools.) +What we have: plain, original Debian wheezy (7.x). What we want: build a Grml ISO based on Debian/wheezy for the amd64 architecture using grml-live. @@ -535,9 +528,7 @@ Instructions # mv AMD64.tar.gz /etc/grml/fai/config/basefiles/ # install relevant tools - # please check out http://grml.org/grml-live/#current_state when encountering problems! - apt-get install -t squeeze-backports squashfs-tools - apt-get -o APT::Install-Recommends=false install grml-live + apt-get --no-install-recommends install grml-live # adjust grml-live configuration for our needs: cat > /etc/grml/grml-live.local << EOF @@ -550,19 +541,19 @@ Instructions # CHROOT_INSTALL="/etc/grml/fai/chroot_install" ## adjust if necessary (defaults to /grml/grml-live): ## OUTPUT="/srv/grml-live" - FAI_DEBOOTSTRAP="wheezy http://cdn.debian.net/debian/" + FAI_DEBOOTSTRAP="wheezy http://ftp.debian.org/debian/" # ARCH="amd64" CLASSES="GRMLBASE,GRML_FULL,AMD64" EOF # just optional(!) - upgrade FAI to latest available version: - cat >> /etc/apt/sources.list << EOF - # fai: - deb http://fai-project.org/download squeeze koeln + cat >> /etc/apt/sources.list.d/fai.list << EOF + deb http://jenkins.grml.org/debian fai main + deb-src http://jenkins.grml.org/debian fai main EOF # get gpg key of FAI repos and install current FAI version: - gpg -a --recv-keys AB9B66FD; gpg -a --export AB9B66FD | apt-key add - + wget -O - http://jenkins.grml.org/debian/C525F56752D4A654.asc | sudo apt-key add - apt-get update apt-get install fai-client fai-server fai-doc @@ -617,7 +608,7 @@ Can I use my own (local) Debian mirror? Yes. Set up an according sources.list configuration as class file in ${GRML_FAI_CONFIG}/config/files/etc/apt/sources.list.d/ and adjust the variable -FAI_DEBOOTSTRAP (if not already using NFSROOT's base.tgz) inside +FAI_DEBOOTSTRAP (if not already using a base.tgz) inside /etc/grml/grml-live.conf[.local]. If you're setting up your own class file don't forget to include the class name in the class list (grml-live -c ...). @@ -657,44 +648,29 @@ what you are searching for just run: dpkg -i --force-confnew --force-confmiss /path/to/grml-live_..._all.deb [[create-a-base-tgz]] -How do I create a base.tgz for use as NFSROOT? -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -First of all build the chroot system: +How do I create a base.tgz? +~~~~~~~~~~~~~~~~~~~~~~~~~~~ - mkdir /tmp/nfsroot && cd /tmp/nfsroot - debootstrap squeeze /tmp/nfsroot/ http://cdn.debian.net/debian - tar zcf base.tgz ./ +First of all create the chroot using debootstrap: -Then check out where your NFSROOT is located: + BASECHROOT='/tmp/basefile' + debootstrap wheezy "$BASECHROOT" http://ftp.debian.org/debian + tar -C "$BASECHROOT" --exclude='var/cache/apt/archives/*.deb' -zcf base.tar.gz ./ - # grep '^NFSROOT' /etc/grml/fai/make-fai-nfsroot.conf - NFSROOT=/grml/fai/nfsroot - -So as /grml/fai/nfsroot is your NFSROOT place the file under -/grml/fai/nfsroot/live/filesystem.dir/var/tmp/: - - mv base.tgz /grml/fai/nfsroot/live/filesystem.dir/var/tmp/base.tgz - -or even better use /etc/grml/fai/config/basefiles/$CLASSNAME.tar.gz instead. -Use I386 as $CLASSNAME for i386 builds and AMD64 for amd64 builds. - -Now running "grml-live ..." will use this file as main system instead of -executing debootstrap. Check out the output for the following lines if using -NFSROOT: +[TIP] +By default debootstrap builds a chroot matching the architecture of the running +host system. If you're using an amd64 system and want to build an i386 base.tgz +then invoke debootstrap using the '--arch i386' option. Disclaimer: building an +AMD64 base.tgz won't work if you are using a 32bit kernel system of course. - [...] - Calling task_extrbase - Unpacking Debian base archive - Extracting /grml/fai/nfsroot/live/filesystem.dir/var/tmp/base.tgz - Calling task_mirror - [...] +Then move the base.tar.gz to /etc/grml/fai/config/basefiles/$CLASSNAME.tar.gz. +Use e.g. I386 as $CLASSNAME for i386 chroots and AMD64 for amd64 chroots. -or if using /etc/grml/fai/config/basefiles/$CLASSNAME.tar.gz for: +Now executing grml-live should use this file as base system instead of executing +debootstrap. Check out the output for something like: [...] - ftar: extracting /etc/grml/fai/config/basefiles///AMD64.tar.gz to - /grml-live/grml-live_20071029.22138/grml_chroot// + ftar: extracting //etc/grml/fai/config/basefiles///AMD64.tar.gz to /srv/grml64_testing/grml_chroot// [...] [TIP] @@ -711,7 +687,7 @@ FAI_DEBOOTSTRAP: [...] APT_PROXY="http://localhost:3142/" [...] - FAI_DEBOOTSTRAP="squeeze http://localhost:3142/cdn.debian.net/debian squeeze main contrib non-free" + FAI_DEBOOTSTRAP="wheezy http://localhost:3142/ftp.debian.org/debian wheezy main contrib non-free" Make sure apt-cacher-ng is running ('/etc/init.d/apt-cacher-ng restart'). That's it. All downloaded files will be cached in /var/cache/apt-cacher-ng then. @@ -738,7 +714,7 @@ How do I create a base tar.gz (I386.tar.gz or AMD64.tar.gz) Execute the following commands (requires root): ARCH='amd64' # replace with i386 if necessary - SUITE='squeeze' # using the current stable release should always work + SUITE='wheezy' # using the current stable release should always work debootstrap --arch "$ARCH" --exclude=info,tasksel,tasksel-data "$SUITE" "$ARCH" http://debian.netcologne.de/debian cd "$ARCH" rm var/cache/apt/archives/*.deb