Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a bootable Linux on a 2 GB USB stick with 770 MB used, and another stick that is 1 GB. The aim is to put the files on the 1 GB stick and make it boot properly into Linux and run the software copied from the 2 GB stick.

The hard part is that there is no ISO to start with. And of course if I create an ISO or dd image from the original, it will be 2 GB and so will not fit on the 1 GB stick. So that seems to rule out using unetbootin, doesn't it?

There is a Linux kernel file copied from the 2 GB stick. The challenge is to set the boot process to find it on the 1 GB stick.

share|improve this question

migrated from Aug 6 '13 at 0:35

This question came from our site for system and network administrators.

You are really going to need to do a lot more explaining about whatever it is you are trying to do. It doesn't seem to make sense to me. – Zoredache Aug 6 '13 at 0:42
@ekaj That is a possibility, though the votes I have in the Linux tag suggests to me that I might know something about the topic, and instead I am confused by the way the question is being asked. If it is so clear to you, perhaps you can suggest an alternate wording of the question? – Zoredache Aug 6 '13 at 1:08
up vote 1 down vote accepted

To summarize, what you would like to do is to clone the existing LiveUSB image to a lower capacity drive.

In order to do this you have three options.

  1. Create a filesystem on the 1GB stick, install grub bootloader to it's MBR and copy over a kernel. This will technically boot but that's about it.
  2. Selectively copy the files over, carefully preserving file permissions. Try to copy the MBR and bootmenu config from the 2GB stick. This won't boot (from experience).
  3. Shrink the filesystem of the 2GB stick using GParted (LiveCD), then clone that partition to the 1GB stick. Lastly install grub or syslinux bootloader to the 1GB's MBR.

Option 3 is the only real option.

  • Download the GParted LiveCD
  • Select the filesystem on the 2GB stick in GParted
  • Shrink it to around 800MB
  • Copy the partition from the 2GB and Paste it to the 1GB.
  • Apply the operations
  • Expand the partition on the 2GB stick back to what it was.
  • Open a terminal and mount the 1GB stick
  • Install grub/syslinux to the 1GB stick (consult the bootmenu config file from the 2GB stick)

If you mentioned which distro this was, then the bootloader in question could be determined and more specific instructions provided. Hope that helps.

share|improve this answer
Sorry for the delay in accepting the answer - had to be away on some other work for a while, before I could work with this again. For future readers, the "LiveCD" version as mentioned above, is absolutely the one needed. – Beel Aug 18 '13 at 8:07

You need to create a Master Boot Record (MBR) for the drive, then you can just copy all the files over...

You can use the 'mbr' tool to do that...

apt-get install mbr
install-mbr /dev/sdX (where X corresponds to your drive...)

Find your drive with

fdisk -l
share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .