Add vga=791 to syslinux.cfg
[grml2usb.git] / grml2usb.8.txt
index b49bce9..1e7ad6d 100644 (file)
@@ -13,13 +13,23 @@ grml2usb [ options ] <ISO[s]> <device>
 Important! The grml team does not take responsibility for loss of any data!
 *******************************************************************************
 
+Introduction
+------------
+
+grml2usb installs grml on a given partition of your usb device and makes it
+bootable. It provides multi-iso support, meaning you can specify several grml
+ISOs on the command line at once and select the grml flavour you would like to
+boot on the bootbrompt then. Note that the *first* ISO specified on the grml2usb
+command line will become the default one (that's the one that will boot when
+just pressing enter on the bootprompt or wait until the boot timeout matches).
+
 Options
 -------
 
 The ISO[s] might be the path to one or multiple grml-ISOs as well as the path to
 the currently running live-system (being /live/image).
 
-The device either might be a device name like /dev/usb-sda1 or a directory. When
+The device either might be a device name like /dev/sda1 or a directory. When
 specifying a device name the device is mounted automatically. When specifying a
 directory it won't be touched but instead grml2usb is assuming that you did set
 up a bootloader on your own and a bootloader won't be installed automatically.
@@ -30,22 +40,32 @@ The following options are supported:
 
 Use specified bootoptions as default.
 
+  *--bootloader-only*::
+
+Do *not* copy files but instead just install a bootloader.
+
+  *--copy-only*::
+
+Copy files only but do *not* install a bootloader.
+
   *--dry-run*::
 
-Do not actually execute any commands, instead just show what would be executed.
+Avoid executing commands, instead show what would be executed.
+Warning: please notice that the ISO has to be mounted anyway, otherwise
+identifying the grml flavour would not be possible.
 
   *--fat16*::
 
-Format specified partition with FAT16. **Important:** this will defstroy any existing
-data on the specified partition!
+Format specified partition with FAT16.
+**Important:** this will destroy any existing data on the specified partition!
 
   *--force*::
 
-Force any actions requiring manual interaction (like --fat16, --mbr).
+Force any (possible dangerous) actions requiring manual interaction (like --fat16).
 
   *--grub*::
 
-Install grub bootloader instead of syslinux.
+Install grub bootloader instead of syslinux. [Notice: not implemented yet.]
 
   *--help*::
 
@@ -54,28 +74,39 @@ Display usage information and exit.
   *--initrd=...*::
 
 Install specified initrd instead of the default. You might want to specify
-option *--kernel* as well.
+option *--kernel* as well. (Be aware when using multiboot setup.)
+[Notice: not implemented yet.]
 
   *--kernel=...*::
 
 Install specified kernel instead of the default. You might want to specify
 option *--initrd* as well. (Be aware when using multiboot setup.)
+[Notice: not implemented yet.]
 
-  *--mbr*::
+  *--lilo=...*::
 
-Install master boot record (MBR) on the device.
+Use specified lilo executable for installing master boot record (MBR).  By
+default any system wide (from $PATH) lilo executable is taken.  If there can not
+be find any lilo executable the statically compiled version of the grml2usb
+Debian package (see /usr/share/grml2usb/lilo/lilo.static.[amd64|i386]) is taken.
 
-  *--squashfs=*::
+  *--quiet*::
+
+Do not output anything but just errors on console.
 
-Install specified squashfs file as the default.
+  *--skip-addons*::
 
-  *--syslinux*::
+Do not install /boot/addons/ files (like dos, grub, memdisk,...).
 
-Install syslinux bootloader (default, requires FAT16 filesystem on the specified partition).
+  *--squashfs=*::
+
+Install specified squashfs file instead of the default.
+[Notice: not implemented yet.]
 
   *--uninstall*::
 
 Uninstall grml ISO files.
+[Notice: not implemented yet.]
 
   *-v*, *--version*::
 
@@ -85,14 +116,11 @@ Return version and exit.
 
 Enable verbose mode.
 
-Introduction
-------------
-
-grml2usb installs grml on a given partition on your usb device and makes it
-bootable.
+Developers Corner
+-----------------
 
 Directory layout on usb device
-------------------------------
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
   boot/ ->
     |-- addons/
@@ -124,9 +152,8 @@ Directory layout on usb device
     |   |-- menu.lst
     |   |-- splash.xpm.gz
     |   `-- stage2_eltorito
-    `-- isolinux/
+    `-- syslinux/
         |-- boot.msg
-        |-- boot-beep.msg
         |-- f1
         |-- f2
         |-- f3
@@ -138,8 +165,6 @@ Directory layout on usb device
         |-- f9
         |-- f10
         |-- logo.16
-        |-- isolinux-main.cfg
-        |-- isolinux.cfg
         `-- syslinux.cfg
 
   grml/
@@ -172,59 +197,138 @@ Directory layout on usb device
     |-- grml64-small.module
     `-- grml64-small.squashfs
 
+Grabbing the source
+~~~~~~~~~~~~~~~~~~~
+
+  % git clone git://git.grml.org/grml2usb.git
+
+Developers Debugging Hints
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+To play with grml2usb you can avoid using a real device via a loopback file
+setup, like:
+
+  # dd if=/dev/zero of=~/loopback bs=1M count=100 # adjust size to your needs
+  # losetup /dev/loop1 ~/loopback
+
+Then create according partitions either running for example:
+
+  # echo -en "n\np\n1\n\n\nt\n6\na\n1\n w\n" | fdisk /dev/loop1
+
+or:
+
+  # parted /dev/loop1 -s "mkpart primary fat16 0 -1s mkfs 1 fat16"
+
+Finally create a filesystem and execute grml2usb as needed:
+
+  # mkfs.vfat /dev/loop1
+  # grml2usb --bootloader-only /grml/isos/grml-small_2008.11.iso /dev/loop1
+
+Performance tracing
+~~~~~~~~~~~~~~~~~~~
+
+  # blktrace -d /dev/sdb -o - | blkparse -i -
+  # grml2usb grml_2008.11.iso /dev/sdb1
+
+Frequently Asked Questions (FAQ)
+--------------------------------
+
+What's the difference between grml2hd and grml2usb?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+grml2hd installs a running grml system to a harddisk. When rebooting the
+harddisk installation can be modified and changes will find their way to the
+harddisk immediately.  grml2usb copies just the compressed chroot filesystem
+(being the squashfs file), some further informational files and a bootloader to
+your device. This way you don't need as much space as with a harddisk
+installation (just a USB device with >=ISO size) and when rebooting the system
+your changes will be lost (even though a persistent root feature is
+work-in-progress). Think of using a better CD version: booting is (usually)
+faster, you don't need to burn a new CD when a new ISO version arrives (just
+install the new ISO using grml2usb) and you can carry additional files on a
+writable medium with yourself.
+
+Why do I have to use a FAT16 filesystem?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+You have to use a FAT16 filesystem if you consider using syslinux (being the
+default). Syslinux currently does not support any other filesystems. If you want
+to use another filesystem (like ext2/3) consider using the --grub option
+instead.
+
+I think I've got a really cool idea!
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Please <<X7,report it to the author>>. Or even better: send us a patch.
+
+I've found a bug!
+~~~~~~~~~~~~~~~~~
+
+Please <<X7,report it to the author>>. Please provide usage examples and output
+of your grml2usb commandline (consider using the "--verbose" option).
+
 Usage examples
 --------------
 
-  # grml2usb /home/grml/grml_2008.11.iso /dev/usb-sdb1
+  # grml2usb /home/grml/grml_2008.11.iso /dev/sdb1
 
-Install specified ISOs on device /dev/usb-sdb1.
+Install specified ISO on device /dev/sdb1.
 
-  # grml2usb /home/grml/grml_2008.11.iso /home/grml/grml_small_2008.11.iso /dev/usb-sdb1
+  # grml2usb /home/grml/grml_2008.11.iso /home/grml/grml_small_2008.11.iso /dev/sdb1
 
-Install specified ISOs on device /dev/usb-sdb1 for multibooting ISOs.
+Install specified ISOs on device /dev/sdb1 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...
+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 --fat16 --mbr /home/grml/grml_2008.11.iso /dev/usb-sdb1
+  # grml2usb --fat16 /home/grml/grml_2008.11.iso /dev/sdb1
 
-Install specified ISO on device /dev/usb-sdb1, install MBR on /dev/usb-sdb and
-format partition /dev/usb-sdb1 with FAT16 filesystem.
+Install specified ISO on device /dev/sdb1 and format partition /dev/sdb1 with
+FAT16 filesystem.
 
-  # grml2usb --grub /home/grml/grml_2008.11.iso /dev/usb-sdb1
+  # grml2usb --grub /home/grml/grml_2008.11.iso /dev/sdb1
 
-Install specified ISO on device /dev/usb-sdb1 and use Grub as bootloader
+Install specified ISO on device /dev/sdb1 and use Grub as bootloader
 (instead of syslinux being the default).
 
   # grml2usb --kernel=/boot/vmlinuz-2.6.28-grml --initrd=/boot/initrd.img-2.6.28-grml \
-             /home/grml/grml_2008.11.iso /dev/usb-sdb1
+             /home/grml/grml_2008.11.iso /dev/sdb1
 
-Install specified ISO on device /dev/usb-sdb1 but use given kernel and initrd
+Install specified ISO on device /dev/sdb1 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_2008.11.iso /dev/usb-sdb1
+             /home/grml/grml_2008.11.iso /dev/sdb1
 
-Install specified ISO on device /dev/usb-sdb1 but use given squashfs
+Install specified ISO on device /dev/sdb1 but use given squashfs
 file instead of the one provided by the ISO.
 
-  # grml2usb --bootoptions="lang=de ssh=mysecret" grml_2008.11.iso /dev/usb-sdb1
+  # grml2usb --bootoptions="lang=de ssh=mysecret" grml_2008.11.iso /dev/sdb1
 
-Install specified ISO on device /dev/usb-sdb1 and use "lang=de ssh=mysecret" as
+Install specified ISO on device /dev/sdb1 and use "lang=de ssh=mysecret" as
 default bootoptions.
 
+Online Ressources
+-----------------
+
+Check out the link:http://grml.org/grml2usb/[grml2usb webpage] and the
+link:http://git.grml.org/?p=grml2usb.git[grml2usb git repository].
+
 Bugs
 ----
-Please report feedback, link:http://grml.org/bugs/[bugreports] and wishes link:http://grml.org/contact/[to the grml-team].
+Please report feedback, bugreports and wishes <<X7,to the author>>.
 
+[[X7]]
 Author
 ------
 Michael Prokop <mika@grml.org>
 
 /////////////////////////////////////////////////////////////////
-http://git.grml.org/?p=grml2usb.git
 http://wiki.grml.org/doku.php?id=tips#multiboot_usb_pen
 http://www.startx.ro/sugar/isotostick.sh
 https://help.ubuntu.com/community/Installation/FromUSBStick
 http://unetbootin.sourceforge.net/
 http://www.tux.org/pub/people/kent-robotti/looplinux/rip/mkusb.sh
+https://fedorahosted.org/liveusb-creator/
 /////////////////////////////////////////////////////////////////