Make a boot partition be separated from the root partition without re-installation.
Live USB (Burned with UNetbootin)
Basically refer to link. The site mentions two methods: Easy way and Manual way. Firstly, I tried _Easy way_ but failed because of some problems in a tool,
boot-repair. I recommend to follow Manual way and the following explanations are also related to that way.
Boot Ubuntu with the Live USB or Live CD.
Make a new partition for
/bootwith GParted tool. You can shrink existing partition to retain a space for the new boot partition. Please refer to the_ Step 3_ and 4 of the Easy way.
Just follow the instructions on the reference site. When mounting drives (boot and main) you might fail because of no sufficient space in root(
/) partition for mounting. I instead used
/tmpdirectory for mounting. (
/tmp/bootfor the new boot partition and
/tmp/mainfor the previous root(
umountalso failed because of the lack of space.
-noption will help you to
umountwithout saving data to
error writing /etc/mtab.tmp: No space left on device
When you setting up GRUB Legacy, the site shows an example for
(hd0,1). It is because the example is dealing with
/dev/sda2as its new boot partition. In my case, a new boot partition was
/dev/sda3in which case root should be
(hd0,2). Alternatively, you can set the menu.lst file as below writing UUID directly.
title Linux 184.108.40.206 uuid 89591593-766e-4565-9d5c-017fb0e33298 # UUID of your boot partition. kernel /vmlinuz-220.127.116.11 root=UUID=fa565f6c-76a9-4c2a-ac8b-2003f97ed7be ro # UUID of your root(/) partition initrd /initrd.img-18.104.22.168
When re-installing grub, you should input proper values corresponding to your machine state. For example, my boot partition was
/dev/sda3, so I needed to write
setup (hd0). (