Please notice that you should have a fast network connection as all the Debian
packages will be downloaded and installed via network. If you want to use a
local mirror (strongly recommended if you plan to use grml-live more than once)
-checkout mkdebmirror (see /usr/share/doc/grml-live/examples/mkdebmirror),
-debmirror(1), reprepro(1) (see /usr/share/doc/grml-live/examples/reprepro/ for a
+checkout debmirror(1), reprepro(1) (see /usr/share/doc/grml-live/examples/reprepro/ for a
sample configuration), apt-cacher(1) and approx(8). To avoid downloading the
base system again and again check out <<create-a-base-tgz,the base tar.gz
feature>>.
Specify the CLASSES to be used for building the ISO via FAI. By default only
the classes GRMLBASE, GRML_FULL and I386/AMD64 (depending on system
-architecture) are assumed, resulting in a base system of about 350MB
-total ISO size. If using a non-I386 system (like AMD64) you should specify the
-appropriate architecture as well. Additionally you can specify a class providing
-a grml-kernel (see <<classes,the 'CLASSES' section in this document>> for
-details about available classes). So instead of GRML_FULL you can also use
-GRML_SMALL and GRML_FULL.
+architecture) are assumed. Additionally you can specify a class providing a
+(grml-)kernel (see <<classes,the 'CLASSES' section in this document>> for
+details about available classes). So instead of GRML_FULL you can also use e.g.
+GRML_SMALL.
[IMPORTANT]
All class names should be written in uppercase letters. Do not use a dash, use
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 "jessie"). Please be aware that recent Debian
+corresponding release names like "stretch"). 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.
Usage examples
--------------
-To get a Debian-stable and Grml-based Live-CD using /grml/grml-live
+To get a Debian-stable and Grml-based Live-CD using ./grml
as build and output directory just run:
# grml-live
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
use this class. Please be aware that using *just* the GRMLBASE class won't be
-enough, because the kernel packages (e.g. linux-image-i386-grml +
-linux-image-amd64-grml) are chosen in further GRML_* classes (to provide maximum
-flexibility with kernel selection). If you don't want to use the existing
-GRML_FULL or GRML_SMALL classes, define your own CLASS file choosing the kernel
-package you want to use (and don't forget to include your CLASS in the arguments
-of grml-live's -c... command line option).
+enough, because the kernel packages (e.g. linux-image-*) are chosen in further
+GRML_* classes (to provide maximum flexibility with kernel selection). If you
+don't want to use the existing GRML_FULL or GRML_SMALL classes, define your own
+CLASS file choosing the kernel package you want to use (and don't forget to
+include your CLASS in the arguments of grml-live's -c... command line option).
* GRML_FULL: full featured Grml, also known as the "normal", full grml as
-introduced in December 2011 (~460MB ISO size).
+introduced in December 2011 (~600MB ISO size).
-* GRML_SMALL: minimum sized Grml version, known as grml-small (~230MB ISO
+* GRML_SMALL: minimum sized Grml version, known as grml-small (~300MB ISO
size).
* LATEX: LaTeX(-related) packages like auctex, texlive,...
Directory with lists of software packages to be installed or removed. The
different classes describe what should find its way to your ISO. When running
"grml-live -c GRMLBASE,GRML_SMALL,AMD64 ..." only the configuration of GRMLBASE,
-GRML_SMALL and and AMD64 will be taken. If you use 'grml-live -c
+GRML_SMALL and AMD64 will be taken. If you use 'grml-live -c
GRMLBASE,GRML_SMALL,AMD64,FOOBAR ...' then the files of GRMLBASE, GRML_SMALL,
AMD64 **plus** the files from FOOBAR will be taken. So just create a new class to
adjust the package selection according to your needs. Please notice that the
grml-live on a plain Debian installation>> for details how to set up grml-live
on a plain, original Debian system.
-* enough free disk space; at least 800MB are required for a minimal grml-live
-run (\~400MB for the chroot [$CHROOT_OUTPUT], \~150MB for the build target
-[$BUILD_OUTPUT] and \~150MB for the resulting ISO [$ISO_OUTPUT] plus some
-temporary files), if you plan to use GRML_FULL you should have at least 4GB of
-total free disk space
+* enough free disk space; at least 1.5GB are required for a minimal grml-live
+run (\~850MB for the chroot [$CHROOT_OUTPUT], \~300MB for the build target
+[$BUILD_OUTPUT], \~30MB for the netboot files and \~300MB for the resulting ISO
+[$ISO_OUTPUT] plus some 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" to workaround this problem as far as possible)
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 jessie (8.x).
+What we have: plain, original Debian stretch (9.x).
-What we want: build a Grml ISO based on Debian/jessie for the amd64 architecture
+What we want: build a Grml ISO based on Debian/stretch for the amd64 architecture
using grml-live.
Instructions
# SQUASHFS_BINARY='/usr/bin/mksquashfs'
## install local files into the chroot
# CHROOT_INSTALL="/etc/grml/fai/chroot_install"
- ## adjust if necessary (defaults to /grml/grml-live):
+ ## adjust if necessary (defaults to ./grml/):
## OUTPUT="/srv/grml-live"
- FAI_DEBOOTSTRAP="jessie http://ftp.debian.org/debian/"
+ FAI_DEBOOTSTRAP="stretch http://ftp.debian.org/debian/"
# ARCH="amd64"
CLASSES="GRMLBASE,GRML_FULL,AMD64"
EOF
[...]
APT_PROXY="http://localhost:3142/"
[...]
- FAI_DEBOOTSTRAP="jessie http://localhost:3142/ftp.debian.org/debian jessie main contrib non-free"
+ FAI_DEBOOTSTRAP="stretch http://localhost:3142/ftp.debian.org/debian stretch 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.
First of all create the chroot using debootstrap (requires root):
BASECHROOT='/tmp/basefile' # path where the chroot gets generated
- SUITE='jessie' # using the current stable release should always work
+ SUITE='stretch' # using the current stable release should always work
debootstrap --exclude=info,tasksel,tasksel-data "$SUITE" "$BASECHROOT" http://ftp.debian.org/debian
tar -C "$BASECHROOT" --exclude='var/cache/apt/archives/*.deb' -zcf "${SUITE}".tar.gz ./
# export GRML_FAI_CONFIG=$(pwd)/etc/grml/fai
# export SCRIPTS_DIRECTORY=$(pwd)/scripts
+ # export TEMPLATE_DIRECTORY=$(pwd)/templates
# ./grml-live -s sid -a amd64 -c GRMLBASE,GRML_FULL,AMD64
[[source]]