Creating a grml USB Stick With Windows
If you are in the situation, where you need to create a grml USB-Stick but don’t have access to a PC with GNU/Linux on it, here are the necessary steps to create it with Microsoft Windows.
- Software to mount an iso-file. I prefer MagicISO to do that. But there there are also the DAEMON Tools and other products.
- Current version of syslinux. Get the zip-file and extract „win32/syslinux.exe”. You don’t need anything else from the zip-file.
01: Find the device letterYou have to plug your USB stick while Windows is running. In the explorer, a new drive letter will appear, and you can access the file of this USB stick. In this text, we will suppose your USB stick letter is
02: Format the USB-stick as FATFirst, format the device. You can just right-click on the USB-device in the Explorer, and then select „Format…”, and choose the FAT filesystem (it won’t work with NTFS).
03: Download the current grml ISO fileAccording to your needs and available space on the USB-stick, download the appropriate grml-ISO-file. From the grml FAQ:
What is the difference between ‘normal’ grml and grml-small?The 700 MB-grml brings more than 2500 packages of software and a full-featured kernel. grml-small includes about 215 software packages, lacks documentation and manpages on the ISO and has a stripped-down kernel (but still provides hardware detection of course). grml-terminalserver and accessibility features are not available/supported on grml-small.
What is grml-medium?grml-medium is a grml-flavour which tries to close the gap between grml-small and normal/large/full version of grml. grml-medium is an ISO with a maximum size of ~200MB providing the most important packages a sysadmin usually needs. It provides the same kernel version as normal grml does so you can easily integrate and use some further existing external modules as well. The X.org server is shipped as well as the window manager fluxbox. accessibility features are not available/supported (currently) on grml-medium though.
What is the difference between 32 bit grml and 64 bit grml?The main difference of course is that grml64 is a 64bit-version whereas (normal) grml is 32bit-only. grml64 provides a 64bit kernel which supports 32bit userspace applications. grml64 also provides libc6-i386, libc6-dev-i386, several lib32* packages and ia32-libs. Due to space reasons and because some packages aren’t available for amd64 yet some packages are missing on grml64 compared to (normal, 32bit) grml. For more details please take a look at the grml64 webpage in the grml-wiki.
04: Mount the ISO file as a virtual driveUse MagicISO or DAEMON Tools to mount the downloaded ISO file as a virtual drive (F: in our example.
05: Copy filesNow, copy all files from the mounted grml-ISO F: to the USB-stick G: (including all directories!).
06: Move filesMove all files from G:\boot\isolinux to the root of usb-stick G:\
07: Copy KernelContrary to the information in the GrmlWiki, you still have to copy the files from g:\boot\$FLAVOUR (G:\boot\grml, G:\boot\grmlmedium,…) to the root of the usb-Stick G:\ – even if you are using Syslinux 3.80.
08: Make the disk bootableNow, you have to make your stick bootable with syslinux. You will have to run this program from a prompt console (cmd.exe). Don’t forget to change „G:” to your drive letter in the commands if required.
syslinux -ma G:
- -m means write mbr
- -a means make drive partition active (aka bootable).
And that’s it. You now have a bootable grml USB stick. :)