X-Git-Url: https://git.grml.org/?p=grml2usb.git;a=blobdiff_plain;f=grml2usb.8.txt;h=d09ebcf467353656fe07639b505cb82e00ff0cc4;hp=43b7ac634fd6ccf42919afb4cfa6c24e3a14dbe2;hb=e3271ff457c955c12b859591542b3e597677d584;hpb=844bfae19ec2fdef0e400eeacdaaa53a9d5ec997 diff --git a/grml2usb.8.txt b/grml2usb.8.txt index 43b7ac6..d09ebcf 100644 --- a/grml2usb.8.txt +++ b/grml2usb.8.txt @@ -31,6 +31,10 @@ grub is being used as default bootloader. Avoid installation of the default MBR using the '--skip-mbr' option or if you encounter any problems with the default MBR consider using '--syslinux-mbr' instead. +[NOTE] +Whereas grml2usb is the script to install recent grml ISOs (>=2009.10) the +script grml2usb-compat supports older grml releases (<2009.10) as well. + [[options]] Options ------- @@ -47,7 +51,8 @@ The following options are supported: *\--bootoptions=...*:: -Use specified bootoptions as default. +Use specified bootoptions as default. To use flavour name as a argument for a +boot parameter use %flavour which will be expanded to the flavour name. *\--bootloader-only*:: @@ -77,9 +82,8 @@ Force any (possible dangerous) actions requiring manual interaction (like --fat1 *\--grub-mbr*:: Install grub into MBR (Master Boot Record) instead of PBR (Partition Boot -Record). This option sadly had to be introduced because grub2 can not be -installed to partitions (PBR) instead of MBR anymore. Check out <> for further details. +Record). Check out <> for further details. *\--help*:: @@ -127,6 +131,12 @@ Do not output anything but just errors on console. Do not install /boot/addons/ files (like dos, grub, memdisk,...). + *\--remove-bootoption=...*:: + +Remove specified bootoption (could be a regex) from existing boot options. Use +multiple entries for removing different bootoptions at once. (Note: this option +is not support in grml2usb-compat.) + *\--skip-grub-config*:: Skip generation of grub configuration files. By default the configuration @@ -145,7 +155,7 @@ file no matter whether you're using grub or syslinux as bootloader. *\--syslinux*:: -This option is deprecated and is being left only for backwards compability +This option is deprecated and is being left only for backwards compatibility reasons. Syslinux is the default bootloader of grml2usb and therefore the '--syslinux' option doesn't have any effects. If you do not want to use syslinux as bootloader consider using the '--grub' option. @@ -215,24 +225,14 @@ Directory layout on usb device | |-- linux26 | |-- initrd.gz |-- grub/ - | |-- grml.png [splash screen for grub2] + | |-- grml.png [graphical bootsplash background image for grub2] | |-- grub.cfg [configuration file for grub2] | |-- menu.lst [configuration file for grub1] | |-- splash.xpm.gz [splash screen for grub1] `-- syslinux/ - |-- boot.msg [boot splash for syslinux] - |-- f1 [screen when pressing f1] - |-- f2 [screen when pressing f2] - |-- f3 [...] - |-- f4 - |-- f5 - |-- f6 - |-- f7 - |-- f8 - |-- f9 - |-- f10 - |-- logo.16 [graphical part of boot splash] - `-- syslinux.cfg [configuration file for syslinux] + |-- grml.png [graphical bootsplash background image for syslinux] + |-- syslinux.cfg [main configuration file for syslinux] + `-- [....] [several further config files for syslinux] grml/ |-- grml2usb.txt [not yet implemented] @@ -289,14 +289,14 @@ or: Finally create a filesystem and execute grml2usb as needed: # mkfs.vfat /dev/loop1 - # grml2usb --bootloader-only /grml/isos/grml-small_2009.05.iso /dev/loop1 + # grml2usb --bootloader-only /grml/isos/grml-small_2009.10.iso /dev/loop1 [[performance-tracing]] Performance tracing ~~~~~~~~~~~~~~~~~~~ # blktrace -d /dev/sdX -o - | blkparse -i - - # grml2usb grml_2009.05.iso /dev/sdX1 + # grml2usb grml_2009.10.iso /dev/sdX1 [[troubleshooting]] Troubleshooting and Pitfalls when booting @@ -323,6 +323,19 @@ kernel loads but you very soon get the error message. *Reason*:: the partition layout is not ok. Very probably there's no primary partition (/dev/sdX{1..4}) or none has the flag 'bootable' set. +*Error message*:: Boot error. + +*Reason*:: Some BIOSses offer different modes for USB booting. The proper mode +to boot a USB stick is USB-HDD. If that doesn’t work or is not supported by your +system, you need to format your USB-Stick as USB-ZIP. To do this, syslinux +contains an utility called mkdiskimage, which you can use to re-format your USB +stick in USB-ZIP format running 'mkdiskimage -4 /dev/sdX 1 64 32'. Please be +aware that this procedure will erase all data on your stick. After executing +mkdiskimage just continue installing as usual (grml2usb ... /dev/sdX4). Note +that this is not going to work for any device larger than 8 GB, since +mkdiskimage only supports 1024c 256h 63s. For a more detailed explanation, refer +to /usr/share/doc/syslinux-common/usbkey.txt. + *Error message*:: No operating system found. *Reason*:: you forgot to set the boot-flag on the partition. Or there really isn't @@ -389,30 +402,30 @@ grml2usb) and you can carry additional files on a writable medium with yourself. Why can't I just dd the ISO to a USB device? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Well, you can. :) +Well, you can. :) Starting with grml 2009.10 the ISOs are dd-able straight out-of-the-box. [IMPORTANT] Note that ANY existing data on your USB device will be destroyed when using the dd approach. +/////////////////////////////////////////////////////////////////////////////////////////////////// Grab a recent grml ISO and use link:http://syslinux.zytor.com/wiki/index.php/Doc/isolinux#HYBRID_CD-ROM.2FHARD_DISK_MODE[isohybrid from the syslinux project]: - % isohybrid grml_2009.05.iso + % isohybrid grml_2009.10.iso +/////////////////////////////////////////////////////////////////////////////////////////////////// -This allows you to dd the grml ISO to your USB device (use for example +This allows you to dd the Grml ISO to your USB device (use for example link:http://www.chrysocome.net/rawwrite[rawwrite] if you've just a Windows system available) running: - % dd if=grml_2009.05.iso of=/dev/sdX - -where /dev/sdX is your USB device. + % dd if=grml_2009.10.iso of=/dev/sdX -[TIP] -Upcoming stable versions of grml will provide dd-able ISOs straight -out-of-the-box (and current link:http://daily.grml.org/[daily snapshots] already -do) using a so called manifold boot method. +where /dev/sdX is your USB device. Of course this doesn't provide such a +flexible system like with grml2usb (no multi-ISO setup, no additional default +bootoptions,...) but it's a nice way to get a working USB boot setup if you +don't have grml2usb available. [[grml2usb-vs-dd]] What's the difference between grml2usb and just using dd? @@ -420,7 +433,7 @@ What's the difference between grml2usb and just using dd? grml2usb does not remove any data from your USB device and does not alter the partition table at all. grml2usb provides multi-ISO support, support for adding -default bootoptions and selecting the bootloader (grub vs. syslinux) without +default bootoptions and selecting the bootloader (syslinux vs. grub) without having to manually touch the ISO at all. [[grml2iso]] @@ -430,6 +443,23 @@ What's grml2iso? grml2iso is a script which uses grml2usb to generate a multiboot ISO out of several grml ISOs. See 'man grml2iso' for further details. +[[grml2usb-compat]] +grml2usb fails with "Fatal: file default.cfg could not be found." +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +If you are trying to install an older grml ISO (older than grml 2009.10) with a +recent version of grml2usb then you might notice: + + Fatal: file default.cfg could not be found. + Note: this grml2usb version requires an ISO generated by grml-live >=0.9.24 ... + ... either use grml releases >=2009.10 or switch to an older grml2usb version. + Please visit http://grml.org/grml2usb/#grml2usb-compat for further information + Fatal: a critical error happend during execution (not a grml ISO?), giving up + +Breaking the backward compatibility was necessary to avoid maintainability hell. +If you want to install older grml ISOs please use the grml2usb-compat script +which provides support for older releases. + [[menu-lst]] Why is there a menu.lst and a grub.cfg inside /boot/grub/? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -508,19 +538,14 @@ The following message: grub-setup: warn: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and its use is discouraged. grub-setup: error: Cannot read `/grub/core.img' correctly -appears because recent grub2 versions sadly introduced a regression which avoids -that grub is being installed into a partition (PBR, Partition Boot Record) -instead of MBR (Master Boot Record). - -To work around this issue you can install grub into the MBR (Master Boot Record) -using the '--grub-mbr' option of grml2usb or switch to syslinux as bootmanager -(just drop the '--grub' option). - -To fix this issue manually you can also execute (adjust '/dev/sdX' to your -device of course): +appears when using grub2 versions older than 1.98 as those version introduced a +regression which avoids that grub is being installed into a partition (PBR, +Partition Boot Record) instead of MBR (Master Boot Record). - mount /dev/sdX1 /mnt/test - grub-install --force --recheck --no-floppy --root-directory=/mnt/test /dev/sdX +To work around this issue you can either 1) upgrade to grub versions >=1.98, 2) +install grub into the MBR (Master Boot Record) using the '--grub-mbr' option of +grml2usb or 3) switch to syslinux as bootmanager (just drop the '--grub' +option). [[splash-xpm]] I'm getting something like "Error: /usr/share/grml2usb/grub/splash.xpm.gz can not be read"!? @@ -570,57 +595,68 @@ of your grml2usb commandline (consider using the "\--verbose" option). Usage examples -------------- - # grml2usb /home/grml/grml_2009.05.iso /dev/sdX1 + # grml2usb /home/grml/grml_2009.10.iso /dev/sdX1 Install specified ISO on device /dev/sdX1. - # grml2usb /home/grml/grml_2009.05.iso /home/grml/grml_small_2009.05.iso /dev/sdX1 + # grml2usb /home/grml/grml_2009.10.iso /home/grml/grml_small_2009.10.iso /dev/sdX1 Install specified ISOs on device /dev/sdX1 for multibooting ISOs. -Note: boot "grml" as usual, for booting grml-small use "grml-small on the -bootprompt, for grml64 use "grml64" and so on... The *first* specified ISO is -the one being the default (when just pressing enter or waiting until the timeout -is reached). # grml2usb /live/image /dev/sdX1 Install currently running grml live system on device /dev/sdX1. - # grml2usb /live/image /home/grml/grml_2009.05.iso /dev/sdX1 + # grml2usb /live/image /home/grml/grml_2009.10.iso /dev/sdX1 Install currently running grml live system and the specified ISO on device /dev/sdX1 for multibooting. - # grml2usb --fat16 /home/grml/grml_2009.05.iso /dev/sdX1 + # grml2usb --fat16 /home/grml/grml_2009.10.iso /dev/sdX1 Install specified ISO on device /dev/sdX1 and format partition /dev/sdX1 with FAT16 filesystem. - # grml2usb --grub --grub-mbr /home/grml/grml_2009.05.iso /dev/sdX1 + # grml2usb --grub --grub-mbr /home/grml/grml_2009.10.iso /dev/sdX1 Install specified ISO on device /dev/sdX1 and use grub as bootloader (instead of syslinux being the default) and install a master boot record (MBR) to the MBR of /dev/sdX. + # grml2usb-compat /home/grml/grml_2009.05.iso /dev/sdX1 + +Install older grml ISO on device /dev/sdX1. + /////////////////////////////////////////////////////////////////////////////////////// # grml2usb --kernel=/boot/vmlinuz-2.6.28-grml --initrd=/boot/initrd.img-2.6.28-grml \ - /home/grml/grml_2009.05.iso /dev/sdX1 + /home/grml/grml_2009.10.iso /dev/sdX1 Install specified ISO on device /dev/sdX1 but use given kernel and initrd instead of the ones provided by the ISO. # grml2usb --squashfs=/grml/grml-live/grml_cd/live/grml.squashfs \ - /home/grml/grml_2009.05.iso /dev/sdX1 + /home/grml/grml_2009.10.iso /dev/sdX1 Install specified ISO on device /dev/sdX1 but use given squashfs file instead of the one provided by the ISO. /////////////////////////////////////////////////////////////////////////////////////// - # grml2usb --bootoptions="lang=de ssh=mysecret" grml_2009.05.iso /dev/sdX1 + # grml2usb --bootoptions="lang=de ssh=mysecret" grml_2009.10.iso /dev/sdX1 Install specified ISO on device /dev/sdX1 and use "lang=de ssh=mysecret" as default bootoptions. + + # grml2usb --remove-bootoption="vga=791" --remove-bootoption="quiet" grml_2009.10.iso /dev/sdX1 + +Install specified ISO on device /dev/sdX1 remove vga=791 and quiet from existing bootoptions. + + # grml2usb --bootoptions="persistent-path=%flavour_name" grml64_2010.04.iso grml_2010.04.iso /dev/sdX1 + +Install specified Isos on device /dev/sdx and add parameter persisten-path +to every menu entry. %flavour_name will be expanded to the flavour of the specific +iso, e.g. grml64 and grml. + [[ressources]] Online Ressources -----------------