Language Selection

English French German Italian Portuguese Spanish

The Lazy Guide to Installing Knoppix on a USB Key

Filed under
Howtos

Knoppix, the famous live Linux CD that practically started the live CD trend, needs no introduction to most people. One of the things that's so great about it is that you can take it with you and boot to a familiar Linux environment on almost any modern computer, without touching the OS that's already installed on it.

Of course, it can be even more portable when it runs entirely off of an inexpensive USB key. So let's install it to a 1 GB USB key, and create a persistent home directory in which to store files. Only let's do it the lazy way, and keep use of the command prompt to a bare minimum.

You will need a copy of the latest Knoppix CD (v5.1.1 as of this writing) and, of course, a 1 GB USB key. If there's any data on that key you want to keep, save it before starting, because the key's going to get repartitioned (and reformatted) and any existing data will get wiped out.

A note about the mysterious art of booting from USB keys. Some computers can do it, and some can't. (Now that was a really technical statement, wasn't it?) The newer the computer's BIOS, the greater the possibility that it will work.

Generally speaking, there are two ways of booting from a USB key. The first way, the computer treats it as if it were booting from a Zip drive. This was the first way to go about it, and it requires special partitioning (so that your USB key's partition layout actually resembles that of a Zip drive). If your computer can only boot from a USB key using Zip drive emulation, then a saavy user's written a very good how-to about how to use a script on the Knoppix CD to do the partitioning, and posted it to the Knoppix.net wiki. My how-to owes him a debt, because I used some of his ideas.

The current way is to simply treat the USB key as if it were a hard drive. This is the method we'll use here, due to its simplicity.

Also, note that Damn Small Linux (a tiny, 50 MB Knoppix-based distro) includes an easy-to-use script that will format and put DSL onto a USB key, using either Zip drive emulation or hard drive emulation. To avoid frustration, you might want to use Damn Small Linux to see if your computer actually will boot from a USB key as if it were a hard drive before performing all these steps!

To get started, boot from the Knoppix CD. When the (KDE) desktop is up and running, the first thing to do is to set a root password (by default, there is none) by clicking on the penguin icon next to the K menu and choosing "Set password for root" from the menu.


1. Creating a root password


2. Creating a root password, continued

Next, insert your USB key. KDE will most likely pop up a window asking if you want to either "Open in a new window" (i.e. browse the files on it), or "Do nothing." Choose to do nothing (or click Cancel), because we don't want it mounted just yet. The key's icon should show up on the desktop, usually as sda1 or sdb1. Carefully make note of its name (in the form "sdxy") for the next step.

Go to the K Menu > System and choose GParted, a GUI-based partition editor, enter your root password when prompted, and choose your USB key from the drop-down menu to the right of the toolbar. Delete the partition on it (you did back up your data, didn't you?) and create two new partitions, both FAT16. Partition one should be 750 MB; the second should take up the remaining space. (Make 100% sure you're partitioning your USB key, not your hard drive!) When you're done, the results should look similar to this:


3. Preparing for partitioning

When you're ready, click the Apply button.

Next, right-click on Partition #1 to bring up a context menu, and choose "manage flags." Set the flag on your new partition to "boot."


4. Setting the boot flag

When you're all done, it should look about like this in GParted:

5. Done partitioning

Again, at this point KDE may pop up two windows (for the two partitions you created) asking if you want to either see what's on your USB key or not. Tell it "no." Next, bring up a console window, type "su" to get root, and install syslinux on the USB key, using the command

syslinux /dev/sda1

(substitute the real name of your USB key's first partition for "sda1" here, if it's not sda1).


6. Installing syslinux

There are some files you'll now need to copy to your USB key's first partition, so go ahead and mount it and make it writeable. You do that by right-clicking on the key's desktop icon to bring up a context menu, and first select "mount" from the menu, and then "change read/write mode," pressing "Yes" when it asks for confirmation. At this point, there should be one file on your USB key's first partition, named "ldlinux.sys."


7. Mount the USB key's first partition


8. Make it writeable

Now we need to copy files off of the Knoppix CD onto the first partition of the USB key. Start up Konqueror as root by choosing K Menu > System > More Applications > File Manager - Super User Mode. Give it your root password when asked.


9. Start Konqueror as root

Open the /cdrom/boot/isolinux directory, select all the files in it, and copy them to the root of your USB key.


10. Copying files - 1

Next, rename the "isolinux.cfg" file on the USB key to "syslinux.cfg" and delete the unneeded file, "isolinux.bin." Continuing on, copy the "KNOPPIX" directory and the files at the root of /cdrom to the USB key.


11. Copying files - 2

It'll ask you if you want to overwrite "cdrom.ico" and "index.html". Let it, by clicking "Overwrite All". This step will take a while, since you're copying a file that's almost 700 MB in size to your USB key.


12. Copying files - 3

When that's finally done, you can make some changes to "syslinux.cfg," which is (as you might guess) the configuration file for syslinux. Select it in Konqueror, which (unless you've changed your defaults) will bring up KWrite (a text editor). At the end of the second line, the one that begins with "APPEND," try adding "dma noeject noprompt home=/media/sda2/knoppix.img", which does the following:

  • "dma" turns on dma settings for all hard drives and CD-ROM drives, which can speed things up
  • "noeject" and "noprompt" makes it so that Knoppix won't try to eject the CD (since you're using a USB key) and won't prompt you to remove the CD before rebooting
  • "/home=/media/sda2/knoppix.img" will load your soon-to-be-made persistent disk image

Those of you who've used Knoppix will recognize those as Knoppix "cheatcodes." Putting them here means you won't have to type them at the "boot:" prompt.


13. Modify syslinux.cfg

Almost done! Now to make the persistent disk image, which does more than just store your personal files from /home/knoppix -- it also saves changes you've made to configuration files, and even allows you to install programs, just as if you were running from a hard drive. (Granted, 200 MB isn't that much room.) To start, go to the Knoppix menu (the one with the penguin icon next to the K Menu) and select Configure > Create a persistent KNOPPIX disk image.


14. Create a persistent disk image - 1

When it asks you which partition to write it to, choose the second partition on your USB key. (I know the partitions are labelled "vfat" in the screenshot, but the partitions really are formatted as FAT16. Trust me.)


15. Create a persistent disk image - 2

It'll ask you to tell it how large to make the persistent disk image. Choose a number close to, but not completely filling, the partition's capacity. 200 MB should be good.


16. Create a persistent disk image - 3

Now you're (finally) done and ready to boot from the USB key. You will have to sort of babysit the boot process, because there's a dialog box that asks if you want to actually use your persistent home that comes up. (Then again, maybe you don't want to use it all the time, especially if you're using more than one computer.) You also have to explicitly give it permission to write to your persistent home. (Hint: Use the arrow keys to move; use the spacebar to select.)

About BIOS settings and booting from a USB key: On one test machine, which has a Phoenix AwardBIOS, I have to go into the CMOS setup utility, to Advanced BIOS Features, and to Hard Disk Boot Priority, then press "Page Up" until the "USB-HDD0" entry is at the top, and then save my settings and exit. After that, it'll boot from the USB key, if it finds one. (If not, it boots from the hard drive.)

On my other test machine, which has an AMI BIOS, all I have to do is press F11 to call up a menu asking which device I wish to boot from at boot time. Naturally, this is much more convenient.

That's all, folks! Have fun. (And those of you with huge 8 GB USB keys, consider installing the DVD version of Knoppix, which has the kernel headers included -- which you need in order to install such nifty things as proprietary video drivers.)

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Clarification in Article

I have followed the instructions and got a little confused here.
isolinux is a folder and has files in it. Knoppix is fighting me and not letting me copy the files, but copies the entire folder with the files. Is this right?

Open the /cdrom/boot/isolinux directory, select all the files in it, and copy them to the root of your USB key.

Also I am getting a write error when trying to edit and make the changes you have documented to "syslinux.cfg,"
It tells me it is not possilbe to write to file///media/sda1/isolinux/syslinux.org

I tried to complete the instructions with the isolinux folder being in /dev/sda1/isolinux (as a folder) but get an error can not find isolinux. You just get the boot prompt. I tried knoppix home=/dev/sda2 but it did not like that either.

Can you help me out?

re: Clarification in Article

Please make sure a) you know the names of your USB key's partitions (sda1/sda2? sdb1/sdb2?); Cool you've got your USB key partitions mounted read-write; and c) you've started Konqueror as root.

You'll want to copy the files in the isolinux directory (not the directory itself) to the root level of your USB key.

Truth be told, it's easier to do this at the bash prompt. For example (as root, and assuming the first partition on your USB key is "sda1"):

# cd /media/sda1
# cp -av /cdrom/boot/isolinux/* .
(don't forget the dot "." at the end)
# mv isolinux.cfg syslinux.cfg
# rm -f isolinux.bin

(The "#" represents the root prompt; don't type it.)

And to edit "syslinux.cfg", try doing it using mcedit, as root, also in a console.

(Trying to be lazy sometimes has its drawbacks. I admit to running "kcontrol" as root and changing the mouse setting to double-click to open files before doing anything with Konqueror. Makes it much easier to select files -- instead of unintentionally opening them -- that way.)

I had the same problem

What I did was save a new file called isolinux.cfg. Then I deleted the syslinux.cfg file and renamed the new isolinux.cfg to syslinux.cfg

Upon finishing, I rebooted and the key booted and I got as far as the bootup screen that says hit enter to start knoppix or F2 or F3 for help or boot options. and there it sits. Sad Any ideas? Could this have something to do with the appended options? dma perhaps? Any help running this down would be greatly appreciated as I've been trying to get linux on a stick now for days. This is as close as I've been able to get so I'm assuming it's something simple because the stick does boot. (UNlike the attempts with the Fedora approach). Many thanks for the great writeup, and TIA for any help running down the glitch!

Part 2

U of H student Tom

I also tried to edit the syslinux.cfg and get the same message. Seems like some type of security on the file.

Part 3

U of H student Tom
I right clicked on the file and went to properties and clicked on permissions gave everyone read and write and still get an error. "Could not change permissions".

Part 4

I went to the Shell console
typed in su
got to root@Knoppix

cd /media/sda1(Worked)

cp -av /cdrom/boot/isolinux/* . (don't forget the dot "." at the end)

balder.img -> cp: cannot create regular file Read only file system.
boot.cat same
boot.msg same

cp: overwrite './cdrom
.ico, overriding mode 0555?

Files did not copy.

mv isolinux.cfg syslinux.cfg
rm -f isolinux.bin

Seems like the CD being in read only mode is causing issues. Should I have loaded it to RAM?

U of H student Tom

Got it

I rebooted the machine and this time used the USB Knoppix copy I had versus running the CDROM version, went to root changed to SU, check the mounting status of the TOBE USB stick, updated to write access and ran the commands and it worked.

It works fine!

Some nice ideas there. Thank you

Escolar

Knoppix

When Knoppix was first released it was heralded as revolutionary in the Linux world. Its autodetection and configuration capabilities were unsurpassed. Many of my colleagues remarked that if 'KNOPPIX can't do it, Linux can't do it'. Theoretically, one would be able to get a Knoppix CD, pop it into an arbitrary system, run it, save one's data to a partition, USB stick, etc....), reboot and the existing system would be left completely as it was before the CD was placed in the system.

- - - - - - - - - - - - - - - - - - - - - - - - - - -
don't buy World of Warcraft Gold, make'em.

Thanks

Hello !

Thank you very much for the information. I need all this information to do something..Thanks again Knoppix

___________________________________
Libros Gratis

need a step-by-step note for booting knoppix DVD from USB flash

First of all, thanks knoppix and this nice step-by-step note for installing knoppix boot image onto a USB pendrive.

I downloaded a Knoppix 5.2.0 DVD and want to put it on a 8GB USB pendrive. I followed the steps in this note and failed because of the size limit for a FAT16 partition.

There are two really huge files under the KNOPPIX directory on the knoppix 5.2.0 DVD: KNOPPIX (2.0 GB) and KNOPPIX2 (2.1 GB). I can not copy them into one FAT16 partition which was made to 4GB on my pendrive. 4GB is already the ultimate limit for a FAT16 partition.

Is there a note for making a Knoppix DVD to boot from high-capacity pendrive? Moreover, is the FAT16 partition a must for booting from a USB pendrive? Is it possible to make the partition to be ext2? I appreciate in advance for your kind help!

Great help

Thanks a lot, it was of a great help for me.
I made a change in step 4 where I created only one partition (4Gb) in FAT32, it's working well.... seems to.

thanks again,

+--
¦ All computers wait at the same speed
+----

partition problems

If you go with one partition, do you lose your persistent storage option?

I have a 4MB and have been messing with it too much, with no luck. If I make a second partition, I cannot mount it in winXP to use it there (I tried both FAT16 and FAT32 -- of course, ext2 wouldn't work either). It boots ok, but that's about it.
Is there any way to get persistent storage with a bigger USB drive and allow WinXP to read/write?
Kurt

I think this guide was

I think this guide was written especially for even lazy users like me Smile
I understood almost all of that, but file syslinux.cfg
it still insufficient clear for me.
Is "timeout" string really have influence for anything?

No Such Device

I created 2 partitions inside an extended partition, on a 2 GB USB stick. I didn't get the "manage flags" option so I set the 1st partition to "Active", which I guess is the same as boot. The properties in Knoppix identified the USB drive as sdc1, yet when I ran the command "syslinux /dev/sdc1" from root, I got: "no such device".

sdc1

I am using Knoppix 5.1 & booted the live disk, with the USB stick already in. I was able to set permissions, mount & un-mount the device & create partitions, so I guess it must be mounted.

My knowledge of Linux is basic, so I don't know how to hotplug.

News NOT Support

Tuxmachines is a NEWS (and Review) site - perhaps you'd find answers to your tech support questions on a TECH SUPPORT Site.

http://www.knoppix.net/forum/
http://www.linuxforums.org/forum/knoppix-help-forum/
http://www.knoppixforum.de/
http://www.google.com/

Re: Support.

Point taken about the forums, anyway it still didn't work so I gave up. However the method I found below worked, on re-start I had to remove & re-insert the stick, to make the PC boot from USB, (hotplug?):

http://www.pendrivelinux.com/2007/01/01/usb-knoppix-510/

The home-page of the above site, has a list of USB install tutorials for various Linux distros.

re: support

I think what Vonskippy meant was that although your support questions are more than welcomed at Tuxmachines, they will probably receive faster and perhaps more accurate responses at forums that specialize in the software about which you're asking.

Superb Tutorial!

White modifying the KNOPPIX configuration file, those having the flash drive as 'sdbX' please use 'sdbX' in place of 'sdaX'.

Had a charm bro... Thank!

Awesome

Thank you very much for this EXCELLENT tutorial.
I'm kind of new to Knoppix and Linux on the whole and this tutorial provided me structured and clear information and screenshots, exactly what I needed.
I've tried two other similar tutorials just yesterday, without success. This one did the trick!
I swear, if I could, I'd start humping you right away from happiness. *joke* =D
Thanks once again!
--
[sCYTHe] aka 88scythe

Installing Knoppix 6.2 from DVD on a 16GB USB Key

I followed your instructions verbatim, until I came
to a show stopper problem.
You say at step 11:

10. Copying files - 1

Next, rename the "isolinux.cfg" file on the USB key to "syslinux.cfg" and delete the unneeded file, "isolinux.bin." Continuing on, copy the "KNOPPIX" directory and the files at the root of /cdrom to the USB key.
-----------------------------------------

Well, on the knoppix dvd, the directory KNOPPIX is almost 4GB in size.

Our root partition on the USB stick is 750MiB.

Could you be a little more exact as to which files in the
KNOPPIX directory shoudl be copied to our USB root partition?

Cheers,

JD

More in Tux Machines

Graphics: Wayland/Weston, Mesa and AMD

  • Wayland 1.16 / Weston 5.0 RC2 Released To Fix Vulnerabilities
    Two release candidates of Wayland 1.16 / Weston 5.0 were not originally scheduled, but it's been necessitated due to some pressing issues both with Wayland and its reference compositor. Samsung's Derek Foreman issued these "RC2" releases on Friday rather than going straight to the official Wayland 1.16 and Weston 5.0 releases. On the Wayland front, Michael Srb found and fixed issues that could cause pointer overflows within Wayland's connection code. These overflow fixes are the only changes in this Wayland 1.15.94 (RC2) version.
  • RAGE & Doom Get Radeon Workarounds In Mesa 18.3-dev
    If you are looking to enjoy id Software's RAGE or Doom VFR games this weekend on Linux via Wine, they should be playing nicer with the latest open-source Mesa graphics driver code. Timothy Arceri at Valve has added a workaround to get RAGE working under Wine with RadeonSI. The workaround is a DRIRC configuration addition for allowing GLSL built-in variable redeclarations. This is enough to get RAGE working with RadeonSI on Mesa Git. Though only RadeonSI is working out currently since the game relies upon the OpenGL compatibility profile mode that is only supported currently by RadeonSI when it comes to the Mesa drivers. Thanks to Valve's developers and others, the OpenGL compatibility profile mode for RadeonSI has matured into great shape these past few months.
  • Adreno 600 Series Support Lands In Mesa 18.3 Gallium3D
    With the Adreno 600 series support going into Linux 4.19 for the kernel bits, the user-space OpenGL driver support for the latest-generation Qualcomm graphics has now been merged into Mesa. Kristian Høgsberg Kristensen of Google's Chrome OS graphics team (yes, Kristian of Wayland and DRI2 fame) has been working on the Gallium3D support for the Adreno 600 series hardware along with Freedreno founder Rob Clark. This A6xx support is being tacked onto the existing Freedreno Gallium3D driver and amounts to just over six thousand lines of new code. Keep in mind this A6xx Freedreno back-end must also be used with the supported MSM DRM driver in the Linux 4.19+ kernel.
  • AMDGPU-PRO 18.30 Radeon Linux Driver Released with Support for Ubuntu 18.04 LTS
    Featuring official support for the AMD Radeon PRO WX 8200 graphics cards and initial Wattman-like functionality, the Radeon Software for Linux 18.30 finally adds support for some of the most recent Ubuntu, Red Hat Enterprise Linux, and CentOS Linux distributions. These include Ubuntu 18.04.1 LTS (Bionic Beaver), Ubuntu 16.04.5 LTS (Xenial Xerus), Red Hat Enterprise Linux 7.5, Red Hat Enterprise Linux 6.10, CentOS 7.5, and CentOS 6.10. SUSE Linux Enterprise Desktop and Server (SLED/SLES) 12 Service Pack (SP) 3 is supported as well, but not the latest SUSE Linux Enterprise 15.
  • AMDVLK Vulkan Driver Update Fixes Witcher 3 Issue, Bug Fixes
    In addition to AMD releasing AMDGPU-PRO 18.30 on Friday, they also did their usual weekly source push of their newest "AMDVLK" open-source Radeon Vulkan driver code.

Kernel: Linux 4.19 Staging and Greg Kroah-Hartman's Very Many Stable Releases

  • Linux 4.19 Staging Brings EROFS File-System & Gasket Driver Framework
    Following the USB subsystem updates, Greg Kroah-Hartman sent in the kernel's staging area work for the Linux 4.19 merge window. This experimental/testing area of the Linux kernel is adding a new file-system with 4.19: EROFS. EROFS is developed by Huawei for possible Android device use-cases. EROFS stands for the Extendable Read-Only File-System and is developed to address shortcomings in other Linux read-only file-systems. EROFS features compression support and other features, but the on-disk layout format isn't 100% firm yet -- hence going into the staging area.
  • USB Patches Posted For Linux 4.19 Kernel, Including The New USB-C DisplayPort Driver
    Having wrapped up his latest stable kernel wrangling and the fallout from L1TF/Foreshadow, Greg Kroah-Hartman got around today to sending out the feature pull requests for the kernel subsystems he oversees. His first new batch of changes for Linux 4.19 today is the USB subsystem work.
  • One Week Past Linux 4.18.0, The Linux 4.18.3 Kernel Is Already Out
    Greg Kroah-Hartman had a fun Friday night issuing new point releases to the Linux 3.18 / 4.4 / 4.9 / 4.14 / 4.17 / 4.18 kernels only to have to issue new point releases minutes later. It was just on Thursday that Linux 4.18.1 was released along with updates to older stable branches for bringing L1TF / Foreshadow mitigation. Friday night then brought Linux 4.18.2, Linux 4.17.16, Linux 4.14.64, Linux 4.9.121, Linux 4.4.149, and Linux 3.18.119 with more patches. Those kernels brought various fixes, including in the x86 PTI code for clearing the global bit more aggressively, crypto fixes, and other maintenance work.

Trinity Desktop Environment R14.0.5

  • 2018.08.18: Trinity Desktop Environment R14.0.5 Released!
    The Trinity Desktop Environment (TDE) development team is pleased to announce the immediate availability of the new TDE R14.0.5 release. TDE is a complete software desktop environment designed for Unix-like operating systems, intended for computer users preferring a traditional desktop model, and is free/libre software. R14.0.5 is the fifth maintenance release of the R14.0 series, and is built on and improves the previous R14.0.4 version. Maintenance releases are intended to promptly bring bug fixes to users, while preserving overall stability through the avoidance of both major new features and major codebase re-factoring.
  • Trinity Desktop R14.0.5 Lets You Keep Enjoying The KDE 3 Experience In 2018
    For those that have fond memories of the K Desktop Environment 3, you can still enjoy a KDE3-derived experience in 2018 with the just-released Trinity Desktop R14.0.5. Trinity Desktop continues to see occasional updates as the fork of the KDE 3.5 packages. Trinity Desktop R14.0.5 is the new release this weekend and their first since R14.0.4 was released last November.

Mozilla: Bitslicing, Mixed Reality, and Sharing

  • Bitslicing with Karnaugh maps
    Bitslicing, in cryptography, is the technique of converting arbitrary functions into logic circuits, thereby enabling fast, constant-time implementations of cryptographic algorithms immune to cache and timing-related side channel attacks. My last post Bitslicing, An Introduction showed how to convert an S-box function into truth tables, then into a tree of multiplexers, and finally how to find the lowest possible gate count through manual optimization.
  • This Week in Mixed Reality: Issue 16
    On Monday Andrzej Mazur launched the 2018 edition of the JS13KGames competition. As the name suggests, you have to create a game using only thirteen kilobytes of Javascript (zipped) or less. Check out some of last year's winners to see what is possible in 13k. This year Mozilla is sponsoring the new WebXR category, which lets you use A-Frame or Babylon.js without counting towards the 13k. See the full rules for details. Prizes this year includes the Oculus Go for the top three champions.
  • Share files easily with extensions
    When we want to share digital files, most people think of popular file hosting services like Box or Dropbox, or other common methods such as email and messaging apps. But did you know there are easier—and more privacy-focused—ways to do it with extensions? WeTransfer and Fire File Sender are two intriguing extension options. WeTransfer allows you to send files up to 2GB in size with a link that expires seven days from upload. It’s really simple to use—just click the toolbar icon and a small pop-up appears inviting you to upload files and copy links for sharing. WeTransfer uses the highest security standards and is compliant with EU privacy laws. Better still, recipients downloading files sent through WeTransfer won’t get bombarded with advertisements; rather, they’ll see beautiful wallpapers picked by the WeTransfer editorial team. If you’re interested in additional eye-pleasing backgrounds, check out WeTransfer Moment.