Add relevant template files for deployment ISO, update docs how to build a new ISO.

From: Michael Prokop <mprokop@sipwise.com>
changes/06/606/1
Michael Prokop 14 years ago
parent aa5048be65
commit 480464e0e0

@ -1,9 +1,25 @@
How to set up grml-live
-----------------------
Copy the templates/ directory to /srv/grml-live/grml-sipwise/templates, and
etc/grml/fai/config/package_config/GRML_SIPWISE to
/etc/grml/fai/config/package_config/GRML_SIPWISE - then invoke:
grml-live -a amd64 -s wheezy -c GRMLBASE,GRML_MEDIUM,GRML_SIPWISE,RELEASE,AMD64 \
-o /srv/grml-live/grml-sipwise -v $(date +%Y.%m.%d) \
-g grml-sipwise -r grml-ftw -t /srv/grml-live/grml-sipwise/templates
Copy local mirror files to grml_chroot/srv/mirror/.
How to build the local mirror
-----------------------------
apt-get clean
apt-get -y --print-uris --reinstall --download-only install $(dpkg --get-selections | awk '{print $1}') | grep "^\'" | cut -d\' -f2 > install.txt
wget -c --input-file install.txt
On a running, working sipwise provide installation, run:
apt-get clean
apt-get -y --print-uris --reinstall --download-only install \
$(dpkg --get-selections | awk '{print $1}') | grep "^\'" | cut -d\' -f2 > install.txt
wget -c --input-file install.txt
Place downloaded .deb files in /srv/mirror/debs/ inside
the ISO, then execute ./make_reprepro.sh inside /srv/mirror.

@ -0,0 +1,327 @@
CHEATCODES AND HINTS FOR GRML
==============================================================================
These options work from the (isolinux/grub) bootprompt of Grml based (live) systems.
The following kernel options are available (do NOT use them as 'grml $OPTION',
use them as '$OPTION'!):
grml Use default settings (same as just pressing return)
grml2ram Copy Grml's squashfs file to RAM and
run from there (compare with 'grml toram')
memtest Run Memtest86+ instead of Linux
fb1280x1024 Use fixed framebuffer graphics (1)
fb1024x768 Use fixed framebuffer graphics (2) [notice: Grml's default]
fb800x600 Use fixed framebuffer graphics (3)
nofb Disable framebuffer
floppy Boot from floppydisk
hd / hd1 / hd2 / hd3 Boot from (local) primary / secondary /... harddisk
failsafe Boot with (almost) no HW-detection
debug Get shells during process of booting for debugging
bootchart Create chart of booting sequence in /var/log/bootchart.tgz
forensic Do not touch any harddisks during hardware recognition
serial Activate ttyS0 and start a getty
grub Boot Grub bootloader (special all-in-one-image)
dos Boot FreeDOS
bsd Boot MirOS BSD
hdt Boot Hardware Detection Tool (from syslinux project)
Further documentation regarding the boot process can be found at:
* http://git.grml.org/?p=live-initramfs-grml.git;a=blob_plain;f=manpages/live-initramfs.en.7.txt;hb=HEAD
* http://git.grml.org/?p=live-boot-grml.git;a=blob;f=manpages/en/live-boot.7;hb=HEAD
* http://git.debian.org/?p=kernel/initramfs-tools.git;a=blob_plain;f=initramfs-tools.8;hb=HEAD
* http://www.kernel.org/doc/Documentation/kernel-parameters.txt
The following boot options can be combined.
Notice: not all of them are available on all the Grml flavours.
For example the X window system is not part of grml-small.
Regional settings:
------------------
grml lang=at|de|cn|da|es|fr|it Specify language ($LANG, $LC_ALL, $LANGUAGE - utf8) + keyboard
grml lang=nl|pl|ru|sk|tr|tw|us Specify language ($LANG, $LC_ALL, $LANGUAGE - utf8) + keyboard
grml lang=$LANG-iso Activate $LANG (use like in lines above) with iso-mode instead of utf8
grml gmt Use GMT-based time (UTC=yes)
grml utc Use Coordinated Universal Time (UTC=yes)
grml localtime Use local time (UTC=no)
grml tz=Europe/Vienna Use specified timezone for TZ
grml keyboard=us xkeyboard=us Use different keyboard layout (text-console/X)
Configuration settings:
-----------------------
grml myconfig=/dev/fd0 Set the DCS dir (debs, config, scripts) to the root of this device
DCS dir defaults to the live image or a device labeled GRMLCFG
If a file /config.tbz exists, it is extracted from there.
/dev/fd0 for floppy disk
/dev/sda1 for USB-stick/first SCSI-device
grml autoconfig=SOMELABEL Set the DCS dir to the root of the device labeled with SOMELABEL.
If undefined search for a device labeled with GRMLCFG.
grml netconfig=server/config.tbz Download file and extract configuration archive
grml netscript=server/file Download and execute file
grml partconf=/dev/sda2 Copy files specified in /etc/grml/partconf from /dev/sda2
to booting grml system
grml file=foobar.tbz Use specified file as name for configuration archive
instead of the default one (config.tbz)
grml extract=/etc Extract only /etc from configuration archive,
use it in combination with myconfig or netconfig
grml persistent=nofiles Enable persistency feature, more details available at
http://wiki.grml.org/doku.php?id=persistency
Notice that the "=nofiles" argument is optional, though recommended
as default setting.
grml hostname=... Set hostname to given argument
grml hostname Set a random hostname
[Note: only available with releases newer than 2010.04]
grml nodhcphostname Do not to set the hostname according to the dns information
grml nonetworking Do not create/overwrite /etc/network/interface during startup
grml distri=... Set distribution name to given argument. If a jpg file named like the
given distri name can be found in directory desktop on the ISO
(/cdrom/desktop/"$DISTRI") it will be taken as wallpaper for grml
grml debnet Search through local partitions for file /etc/network/interfaces,
copy /etc/network to local system and restart networking then
grml dns=8.8.8.8,8.8.4.4 Set DNS resolvers during boot and for live system.
grml ip=... Standard Linux kernel ip= boot option. Arguments:
clientip:nfsserverip:gwip:netmask:hostname:device:autoconf
Valid values for autoconf: off, on, dhcp, bootp, rarp, both.
Almost everything is optional. Most common form: ip=dhcp
grml mypath=... Add specified option into $PATH of Zsh
For example when using "grml mypath=/foobar" then /foobar
will be added to the end of $PATH inside Zsh
grml debs Install all Debian packages from the "debs" directory of your DCS
directory (see myconfig=, typically the root of your ISO image).
grml debs=path-name-wildcard Install Debian packages from DCS directory (see myconfig=,
typically the root of your ISO image). If path does not contain a
"/" the package(s) will be installed from directory "debs" of the
DCS directory instead. The "path-name-wildcard" can contain
wildcards (e.g. debs=rat* will install a packages starting with "rat"
from directory debs/).
grml scripts=path-name Execute script (defaulting to grml.sh) inside DCS dir. Path names
allowed. If path-name points to a directory, all scripts found in
the directory are executed.
grml config=path-name Unpack archive that path-name points to
grml noautoconfig Disable searching for device labeled GRMLCFG
Notice: Take a look at http://grml.org/config/ and 'man 1 grml-autoconfig'
for more information regarding the configuration framework of Grml.
Booting related options:
------------------------
grml toram Copy the whole CD/medium to RAM and run from there
grml toram=filename.squashfs Copy the specified file to RAM and run from there
Usage example: grml toram=grml-medium.squashfs
Notice: grml2ram is an alias for this option which
corresponds with the grml flavour settings by default
grml tohd=/dev/sda1 Copy Grml's squashfs file to harddisk partition for later
use via "grml bootfrom=/dev/sda1"
grml bootfrom=/dev/sda1 Use the squashfs file from directory 'live' of the specified device
Setup can be done booting 'grml tohd=/dev/sda1' or
running 'rsync -a --progress /live/image/live /mnt/sda1/'
grml bootfrom=removable Restrict search for the live media to removable type only.
grml bootfrom=removable-usb Restrict search for the live media to usb mass storage only.
grml isofrom=/dev/sda1/grml.iso Use specified ISO image for booting
Useful when booting as a rescue system from harddisk - just boot
the according grml kernel and initrd using the bootoptions
"boot=live isofrom=/dev/sda1/grml.iso"
Notice: "fromiso" does the same as "isofrom", it's just there
to prevent any typing errors
grml findiso=/grml_2010.12.iso Look for the specified ISO file on all disks where it usually
looks for the .squashfs file (so you don't have to know the device name
as in isofrom=....).
grml fetch=$IP/filename.squashfs Download a squashfs image from a given url, copying to ram and booting it.
[Note: releases before 2011.05 didn't support DNS but IP only.]
grml live-media-path=live Sets the path to the live filesystem on the medium
By default, it is set to /live
grml module=grml Instead of using the default "$name.module" another file can
be specified without the extension ".module"; it should be placed
on "/live" directory of the live medium
Useful for Multiboot USB pen, see
http://wiki.grml.org/doku.php?id=tips#multiboot_usb_pen
grml bootid=mybootid Use specified argument as identifier for the ISO.
mybootid is specified in /conf/bootid.txt on the ISO.
[Note: only available since release 2010.04]
grml ignore_bootid Disable bootid verification.
[Note: only available since release 2010.04]
Debugging related settings:
---------------------------
grml debug Get shells during process of booting, using GNU screen, be verbose
grml debug=1 Get shells during process of booting, using GNU screen, be verbose and
display shell code being executed in initramfs.
grml debug=noscreen Get shells during process of booting, verbose, but without using GNU screen
grml nocolor Disable colorized output while booting
grml log Log error messages while booting to /tmp/grml.log.`date +%Y%m%d`"
and /var/log/boot
grml testcd Check CD data integrity and md5sums
Service related settings:
-------------------------
grml ssh=password Set password for user grml and start ssh-server
grml startup=script Start $script instead of grml-quickconfig on startup
grml nosyslog Do not start syslog daemon
grml nogpm Disable GPM daemon
grml noconsolefont Disable setting of console font (using consolechars)
grml noblank Disable console blanking
grml tsplash Text based bootsplash
grml noquick Disable grml-quickconfig startup script
grml small Do not start that many consoles
grml wondershaper=eth0,1000,500 Set up basic traffic shaping
grml services={postfix,mysql,...} Start service(s) which have an init-script (/etc/init.d/)
grml welcome Welcome message via soundoutput
grml noeject Do NOT eject CD after halt/reboot
grml noprompt Do NOT prompt to remove the CD when halting/rebooting the system
grml distcc=$NETWORK,$INTERFACE Activate distcc-daemon to listen on specified network
and interface, usage example:
distcc=192.168.0.1/24,eth0
grml gcc=3.4 gpp=3.4 Link /usr/bin/gcc, /usr/bin/cpp and /usr/bin/c++ to specified version
grml startx{=windowmanager} Start X window system automatically
Default window manager (if not provided): wm-ng (wrapper around fluxbox)
grml nostartx If using startx as default bootoption the nostartx *disables* automatic
startup of X again. (This bootoption is relevant for grml based derivatives
which decide to enable startx by default only, plain grml does not use
automatic startup of X by default.)
Accessibility related settings:
-------------------------------
grml blind Start Braille-Terminal (no X)
grml hwspeak Probe all available speakup hardware modules
grml swspeak Prepare system for use with software synthesizer through speakup
Run 'swspeak' after booting up to activate sound output
grml swspeak=espeak Use espeakup (if available) as connector to speakup
Run 'swspeak' after booting up to activate sound output
grml swspeak=speechd Use speech-dispatcher / speechd-up (if available) as connector to speakup
Run 'swspeak' after booting up to activate sound output
grml brltty=type,port,table Parameters for Braille device (e.g.: brltty=al,/dev/ttyS0,text.de.tbl)
grml speakup.synth=... Use speakup kernel module with given hardware type
Usage example: speakup.synth=apollo
Hardware related settings:
--------------------------
grml swap Activate present/detected swap partitions
grml noswraid Disable scanning for software raid arrays (creates /etc/mdadm/mdadm.conf)
grml swraid Enable automatic assembling of software raid arrays
grml nodmraid Do not enable present dmraid devices.
grml dmraid=on Automatically enable any present dmraid devices.
grml dmraid=off Actively try to stop any present dmraid devices.
grml nolvm Disable scanning for Logical Volumes (LVM)
grml lvm Automatically activate Logival Volumes (LVM) during boot
grml readonly Make sure all harddisk devices (/dev/hd* /dev/sd*) are forced to read-only mode
grml ethdevice=... Use specified network device for network boot instead of default (eth0)
grml xmodule=ati|fbdev|i810|mga Use specified X.org-Module (1)
grml xmodule=nv|radeon|savage|s3 Use specified X.org-Module (2)
grml xmodule=radeon|svga|i810 Use specified X.org-Module (3)
grml no{acpi,agp,apm,cpu,dhcp} Skip parts of HW-detection (1)
grml no{dma,fstab,modem} Skip parts of HW-detection (2)
grml no{pcmcia,scsi,swap,usb} Skip parts of HW-detection (3)
grml 915resolution=... Start resolution modify tool for Intel graphic chipset
usage: $MODE,$XRESO,$YRESO
grml blacklist=modulename[,module2] Completely disable loading of specified module(s) via
blacklisting through udev's /etc/modprobe.d/grml
grml fwtimeout=50 Set firmware timeout via /sys/class/firmware/timeout to specified value
grml nosound Mute sound devices (notice: this does not deactivate loading of sound drivers!)
grml vol=number Set mixer volumes to level $number
grml micvol=number Set mixer volume of microphone to level $number (default: 0)
grml pnpbios=off No PnP Bios initialization
grml acpi=off Disable ACPI Bios completely
grml nousb2 Disable initialization of USB 2.x controller(s)
grml nousb Disable initialization of USB in booting sequence
grml nofirewire Disable initialization of firewire devices in booting sequence
grml pci=irqmask=0x0e98 Try this, if PS/2 mouse doesn't work *)
grml pci=bios Workaround for bad PCI controllers
grml ide2=0x180 nopcmcia Boot from PCMCIA-CD-ROM (some notebooks)
grml mem=128M Specify Memory size in MByte
grml libata.force=[ID:]VAL Force configurations for libata.
Usage example: grml libata.force=1:pio4
to force pio4 mode on device "ata1:00:"
grml libata.dma=0 Disable DMA on PATA and SATA devices
grml libata.ignore_hpa=1 Disable host protected area (which should enable the whole disk)
grml vga=normal No-framebuffer mode (does not influence X)
grml vga=ask Display menu for framebuffer mode
grml radeon.modeset=0 nomodeset Disable Kernel Mode Setting (KMS) for Radeon driver.
grml i915.modeset=0 nomodeset Disable Kernel Mode Setting (KMS) for Intel driver.
grml nouveau.modeset=0 nomodeset Disable Kernel Mode Setting (KMS) for Nouveau driver.
Installation related settings:
------------------------------
Caution: do *NOT* use the grml2hd and/or debian2hd bootoption if you do not know what you are doing!
Install plain Debian via debian2hd bootoption (which runs grml-debootstrap in non-interactive mode):
debian2hd <options> ... whereas valid options for debian2hd are:
target= target partition/directory of the new Debian system, e.g.: target=/dev/sda1
grub= where to install grub to, e.g.: grub=/dev/sda
release= specify release of new Debian system (default is stable), e.g.: release=sid
mirror= specify mirror for apt-get/aptitude, e,g.: mirror=http://cdn.debian.net/debian
password= set passwort of user root without prompting for it, e.g.: password=AiTh5ahn
Usage example for automatic installation:
debian2hd target=/dev/sda1 grub=/dev/sda mirror=http://cdn.debian.net/debian password=foobar
See http://grml.org/grml-debootstrap/ for more information.
Install grml via grml2hd bootoption (which runs grml2hd in non-interactive mode):
grml2hd <options> ... whereas valid options for grml2hd are:
user= user name for user which should be used at hd-install
filesystem={ext2|ext3|reiserfs|reiser4|jfs|xfs} filesystem to be used
mbr=/dev/... partition where MBR should be installed (default:=partition)
partition=/dev/... partition where grml should be installed
Usage example for booting:
grml2hd partition=/dev/sda4 mbr=/dev/sda filesystem=ext3 user=mika
Passwords of user root and user are "grml" - please adjust after hd-install!
See http://grml.org/grml2hd/ for more information.
Additional notes:
-----------------
*) If your Grml-CD makes strange noises during boot, or you see frequent
errors like "squashfs: read error", or programs are crashing randomly,
then your CD image is probably defective or incomplete, your CD-burner
created a defective CD due to wrong writing speed or bad media or your
CD-ROM drive is broken. This is the most common error reported. Please
boot with "grml testcd" to check if the CD is OK, and/or even better,
verify the MD5 checksums that are present on the mirrors before writing
the CD. Check your CD low-level via running 'readcd -c2scan
dev=/dev/cdrom'. In some cases, defective IDE controllers cause this
error if you have DMA enabled. Also, please read the grml-FAQ.
*) In case of a failing hardware autodetection, try booting with any of
the "no-" options as shown in the table above, like in
grml noagp noapm noapic acpi=off nodma
to skip some critical parts of the autodetection system.
*) Some boards (especially those with E-ISA slots) apparently don't pass
the proper memory size to the linux-kernel. It may cause the message
"Panic: cannot mount root file system" and the system hangs. Use "grml
mem=128M" to solve that problem if your system has 128MByte memory for
example (caution: you MUST use a capital "M" here).
*) The "myconfig=/dev/partition" option allows you to reconfigure the
system after autoconfiguration by running a bourne shell script called
"grml.sh" and/or extracting configuration files from a file named
config.tbz from the root directory on the given device (or floppy).
Take a look at http://grml.org/config/ for more information regarding
the configuration framework of grml.
*) If you wish to remaster the CD, please don't forget to specify
-no-emul-boot -boot-load-size 4 -boot-info-table \
-b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat
as option to mkisofs. Otherwise your CD won't be bootable. The
directory live, containing the squashfs compressed filesystem file,
must be located in the top level directory of the CD.
*) Caution: screensavers: Don't start vlock or any other screensaver
that requires a password manually. There are no default passwords on
the live system - all accounts are LOCKED by default for security reasons.
Instead just invoke the script grml-lock which prompts for setting a
password.
# EOF

@ -0,0 +1 @@
%RELEASE_INFO% [%DATE%]

Binary file not shown.

Binary file not shown.

@ -1,9 +0,0 @@
#label ipxe
# menu label Run iP^XE
# kernel /boot/addons/ipxe.lkrn
#
# text help
# Start Etherboot/iPXE for booting via
# network (PXE).
# endtext
#

@ -1,9 +0,0 @@
# local disk:
#label hd
# menu label ^Boot from Hard Disk
# localboot 0x80
# text help
# Boot from first local hard disk -
# if present and bootable.
# endtext
#

@ -0,0 +1,83 @@
# Filename: isolinux.cfg
# Purpose: main and central configuration file for isolinyx
# Authors: grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
# Bug-Reports: see http://grml.org/bugs/
# License: This file is licensed under the GPL v2 or any later version.
################################################################################
# File Overview:
# - addons.cfg -> configuration file for /boot/addons/ (only used if NO_ADDONS not set)
# - addons_list.cfg -> list of entries for addon menu
# - addon_* -> definition for entries in the addon menu
# - boot-beep.msg -> bootsplash config for console version sending beep sound
# - boot.msg -> bootsplash config for console version (no graphical boot menu)
# - console.cfg -> console version configuration of isolinux (no graphical boot menu)
# - default.cfg -> default boot entry (default select)
# - distri.cfg -> configuration file which specifies which file provides the labels
# - f1. ..f10 -> bootsplash screens when pressing f1...f10 in console version
# - grml.cfg -> definitions of labels for main bootoptions of the grml live system
# - grmlmain.cfg -> automatically generated by grml-live (includes several other files)
# - grml.png -> background image of graphical bootsplash for grml
# - hd.cfg -> definition for boot from hd menu entry
# - hidden.cfg -> definitions for isolinux prompt
# - isolinux.bin -> isolinux binary
# - isolinux.cfg -> this file, includes the according files as requested
# - isopromt.cfg -> definition for isoprompt menu entry
# - logo.16 -> logo visible in console version of bootsplash
# - menudefaults.cfg -> menu entry for default boot mode
# - menuoptions.cfg -> menu for additional boot entries for the (grml) flavour
# - options.cfg -> label definitions for further boot layout
# - prompt.cfg -> helper file to jump between graphical and console based version
# - syslinux.cfg -> syslinux specific configuration file
# - vesamenu.c32 -> vesamenu binary for graphical boot menu
# - vesamenu.cfg -> configuration of graphical boot splash/menu
################################################################################
# Shortcut keys of vesamenu bootsplash
#
# Instructions: Just press the specified key to jump to the according menu entry.
# For example press 'i' to select the 'Isolinux prompt' menu entry.
#
# s = Standard ($version, $arch)
#
# Additional boot entries for $FLAVOUR:
#
# b = Back to main menu...
# d = Debug Mode
# a = Disable Framebuffer
# s = Enable SSH (with random password)
# f = Failsafe Mode
# o = Forensic Mode
# g = German Settings
# m = Graphical Mode
# p = Persistent Mode
# r = Load to RAM
# c = Serial Console
#
# Further boot options:
# Addons:
#
# b = Back to main menu...
# 2 = Grub2
# 1 = Grub1
# a = All-in-One-Image
# x = GPXE
# f = FreeDOS
# 4 = MirOS bsd4grml
# m = Memtest86+
# t = Hardware Detection Tool
#
# i = Isolinux prompt
# b = Boot from Hard Disk
################################################################################
# timeout settings:
timeout 300
# boot from hard disk instead by default:
# ontimeout chain.32 hd0 0
# use this to control the bootup via a serial port:
# serial 0 9600
# finally either include 'console.cfg' for console based bootsplash
# or 'vesamenu.cfg' for graphic menu version of bootsplash (adjusted
# automatically in build process via grml-live):
Loading…
Cancel
Save