Execute freshclam only if class FRESHCLAM is set
[grml-live.git] / docs / grml-live.txt
index 9de557d..1c6a0e7 100644 (file)
@@ -205,9 +205,9 @@ Specify name of the release.
 
 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
-(${GRML_FAI_CONFIG}/config/basefiles/$CLASSNAME.tar.gz) or a recent version of
-debootstrap.
+squeeze, wheezy, sid. 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.
 
   -t **TEMPLATE_DIRECTORY**::
 
@@ -252,8 +252,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 +318,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 +404,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 +471,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.
 
@@ -535,9 +528,8 @@ 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
@@ -617,7 +609,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 +649,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:
-
-  mkdir /tmp/nfsroot && cd /tmp/nfsroot
-  debootstrap squeeze /tmp/nfsroot/ http://cdn.debian.net/debian
-  tar zcf base.tgz ./
+How do I create a base.tgz?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-Then check out where your NFSROOT is located:
+First of all create the chroot using debootstrap:
 
-  # grep '^NFSROOT' /etc/grml/fai/make-fai-nfsroot.conf
-  NFSROOT=/grml/fai/nfsroot
+  BASECHROOT='/tmp/basefile'
+  debootstrap wheezy "$BASECHROOT" http://http.debian.net/debian
+  tar -C "$BASECHROOT" --exclude='var/cache/apt/archives/*.deb' -zcf base.tar.gz ./
 
-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]