CHEATCODES AND HINTS FOR GRML ============================================================================== The following boot parameters can be combined and should be given on the kernel command line. In the GRUB menu, press 'E' to edit the menu item, and then add your boot parameters to the line starting with "linux". Not all boot parameters are available on grml-small, as it does not come with the necessary software. For example, the "startx" option does not work on grml-small. Further documentation regarding the boot process can be found at: * https://manpages.debian.org/live-boot-doc/live-boot.7.en.html * https://manpages.debian.org/initramfs-tools-core/initramfs-tools.7.en.html * https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html Regional settings: ------------------ lang=at|ch|de|de-neo|es|fr Specify language ($LANG, $LC_ALL, $LANGUAGE) + keyboard lang=hu|it|jp|uk|us|dvorak Specify language ($LANG, $LC_ALL, $LANGUAGE) + keyboard localtime Assume Hardware Clock (RTC) is set in localtime (default: RTC is in UTC) tz=Europe/Vienna Use specified timezone for TZ, defaults to TZ=UTC keyboard=us Use different keyboard layout (see list from lang=) Configuration settings: ----------------------- 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 autoconfig=SOMELABEL Set the DCS dir to the root of the device labeled with SOMELABEL. If undefined search for a device labeled with GRMLCFG. netconfig=server/config.tbz Download file and extract configuration archive netscript=server/file Download and execute file partconf=/dev/sda2 Copy files specified in /etc/grml/partconf from /dev/sda2 to booting grml system file=foobar.tbz Use specified file as name for configuration archive instead of the default one (config.tbz) extract=/etc Extract only /etc from configuration archive, use it in combination with myconfig or netconfig persistence Enable persistency feature, more details available at https://wiki.grml.org/doku.php?id=persistency hostname=... Set hostname to given argument hostname Set a random hostname nonetworking Do not create/overwrite /etc/network/interface during startup 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 debnet Search through local partitions for file /etc/network/interfaces, copy /etc/network to local system and restart networking then dns=8.8.8.8,8.8.4.4 Set DNS resolvers during boot and for live system. 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 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 debs Install all Debian packages from the "debs" directory of your DCS directory (see myconfig=, typically the root of your ISO image). 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/). 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. config=path-name Unpack archive that path-name points to noautoconfig Disable searching for device labeled GRMLCFG nobeep Disable welcome chime, sounded before grml-quickconfig starts. Notice: Take a look at https://grml.org/config/ and 'man 1 grml-autoconfig' for more information regarding the configuration framework of Grml. Booting related options: ------------------------ toram Copy the whole CD/medium to RAM and run from there 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 bootfrom=/dev/sda1 Use the squashfs file from directory 'live' of the specified device Setup can be done by executing: rsync -a --progress /run/live/medium/live /media/sda1/ NOTE: you can can also use bootfrom=/dev/disk/by-label/yourlabel (adjust yourlabel as needed), which should prevent choosing the wrong block device (e.g. if more than one disk is present). bootfrom=removable Restrict search for the live media to removable type only. bootfrom=removable-usb Restrict search for the live media to usb mass storage only. isofrom=[fs:][/device]/grml.iso Use specified ISO image for booting. Useful when booting as a rescue system from a different device. If you want to load the image from a device different from the root device specified through the bootloader, prefix its device path to the path, like in "/dev/sda1/grml.iso". Internally, the initrd will mount the given device, automatically detecting the file system. If needed, prefix the file system separated with a colon character to override the automatic detection, like in "ext4:/dev/sda1/grml.iso". As an example, boot the according grml kernel and initrd using the bootoptions "boot=live isofrom=btrfs:/dev/vda40/path/to/grml.iso" NOTE: "fromiso" does the same as "isofrom", it's just there to prevent any typing errors NOTE: you can can also use isofrom=/dev/disk/by-label/yourlabel (adjust yourlabel as needed), which should prevent choosing the wrong block device (e.g. if more than one disk is present). findiso=/grml-....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=....). fetch=$IP/filename.squashfs Download a squashfs image from a given url, copying to ram and booting it. live-media-path=/live/grml... Sets the path to the live filesystem on the medium By default, it is set to /live/$GRML_FLAVOUR/ (where $GRML_FLAVOUR is corresponding to grml64-full, grml32-full, grml64-small,... [Note: this parameter is mandatory] 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 https://wiki.grml.org/doku.php?id=tips#multiboot_usb_pen bootid=mybootid Use specified argument as identifier for the ISO. mybootid is specified in /conf/bootid.txt on the ISO. ignore_bootid Disable bootid verification. Debugging related settings: --------------------------- nocolor Disable colorized output while booting Also set SYSTEMD_COLORS=0 to disable colors in systemd output log Log error messages while booting to /tmp/grml.log.`date +%Y%m%d`" testcd Check CD data integrity and md5sums Security / login related settings: ---------------------------------- ssh=password Set password for root & grml user and start ssh-server passwd=... Set password for root & grml user encpasswd=.... Set specified hash as password for root & grml user, use e.g. 'mkpasswd -H md5' to generate such a hash (available in Grml >=2013.09) Service related settings: ------------------------- startup=script Start $script instead of grml-quickconfig on startup nogpm Disable GPM daemon noblank Disable console blanking noquick Disable grml-quickconfig startup script services={espeakup,rpcbind,...} Start system service(s) welcome Welcome message via soundoutput noeject Do NOT eject CD after halt/reboot noprompt Do NOT prompt to remove the CD when halting/rebooting the system startx{=windowmanager} Start X window system automatically 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.) getfile.retries=$NUM Retry the download of the files specified in the netconfig=... + netscript=... options up to $NUM times Accessibility related settings: ------------------------------- brltty=type,port,table Parameters for Braille device (e.g.: brltty=al,/dev/ttyS0,text.de.tbl) See https://brltty.app/guidelines.html for documentation. Hardware related settings: -------------------------- swap Activate present/detected swap partitions noswraid Disable scanning for software raid arrays (creates /etc/mdadm/mdadm.conf) swraid Enable automatic assembling of software raid arrays nolvm Disable scanning for Logical Volumes (LVM) lvm Automatically activate Logical Volumes (LVM) during boot read-only Make sure all harddisk devices (/dev/sd*) are forced to read-only mode ethdevice=... Use specified network device for network boot instead of default (eth0) ethdevice-timeout=... Use specified network configuration timeout instead of default (15sec) xmodule=ati|fbdev|i810|mga Use specified X.org-Module (1) xmodule=nv|radeon|savage|s3 Use specified X.org-Module (2) xmodule=radeon|svga|i810 Use specified X.org-Module (3) no{acpi,cpu,dhcp,fstab,swap} Skip parts of HW-detection blacklist=modulename[,module2] Completely disable loading of specified module(s) via blacklisting through udev's /etc/modprobe.d/grml nosound Mute sound devices (notice: this does not deactivate loading of sound drivers!) vol=number Set mixer volumes to level $number micvol=number Set mixer volume of microphone to level $number (default: 0) acpi=off Disable ACPI Bios completely pci=irqmask=0x0e98 Try this, if PS/2 mouse doesn't work *) pci=bios Workaround for bad PCI controllers libata.force=[ID:]VAL Force configurations for libata. Usage example: grml libata.force=1:pio4 to force pio4 mode on device "ata1:00:" libata.dma=0 Disable DMA on PATA and SATA devices libata.ignore_hpa=1 Disable host protected area (which should enable the whole disk) dis_ucode_ldr Disable loading of CPU microcode vga=normal No-framebuffer mode (does not influence X) vga=ask Display menu for framebuffer mode radeon.modeset=0 nomodeset Disable Kernel Mode Setting (KMS) for Radeon driver. i915.modeset=0 nomodeset Disable Kernel Mode Setting (KMS) for Intel driver. nouveau.modeset=0 nomodeset Disable Kernel Mode Setting (KMS) for Nouveau driver. cirrus.modeset=0 nomodeset Disable Kernel Mode Setting (KMS) for Cirrus driver. mgag200.modeset=0 nomodeset Disable Kernel Mode Setting (KMS) for MGAG200 driver. 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 noapic acpi=off nodma to skip some critical parts of the autodetection system. *) 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 https://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/grub/i386-pc/eltorito.img \ --grub2-boot-info --grub2-mbr \ grml_cd/boot/grub/i386-pc/boot_hybrid.img as option to mkisofs/xorriso. 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 physlock 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