How do I merge my /boot partition to be a part of the / partition?

I am running Ubuntu Server 14.04.4 under VirtualBox on a Windows server. When I first set up the machine I opted to put /boot on its own 230 MB partition. This turns out not to have been necessary for my situation and now I’d like to roll /boot into the much larger partition I use for /. How can I safely make this change?


Short answer: If it ain't broke, don't fix it.

Long answer: If you insist on fixing what ain't broke:

  1. Open a Terminal window.
  2. Type sudo mkdir /boot2
  3. Type sudo cp -a /boot/* /boot2/
  4. Type sudo umount /boot
  5. Type sudo rmdir /boot
  6. Type sudo mv /boot2 /boot
  7. Edit /etc/fstab and comment out the line that defines the mount point for /boot.
  8. Type sudo grub-install
  9. Type sudo update-grub (if you're using a BIOS-based install, you'll also need to specify a device filename -- probably /dev/sda)
  10. Optionally delete the /boot partition and resize the root (/) partition. See here for details on how to do this.

I have not tested this procedure! If I've forgotten something or if there's an unexpected error, your system will be rendered unbootable! Hence:

  1. Please reconsider my "short answer," above.

Updating with new answer that supports EFI. (EFI requires a FAT32 partition mounted as /boot/efi).

  1. sudo cp -a /boot /boot2
  2. sudo umount /boot/efi && sudo umount /boot || echo -e "\n\rNot EFI?? STOP!"
  3. sudo rmdir /boot
  4. sudo cp -a /boot2 /boot
  5. sudo rm -r /boot/efi/*
  6. sudo mount /boot/efi
  7. sudo diff -r /boot /boot2 && sudo rm -r /boot2 || echo -e "\n\r\n\rSOMETHING'S WRONG, STOP!!"
  8. sudo nano /etc/fstab
    • Edit /etc/fstab and comment out the line that defines the mount point for /boot. Leave the /boot/efi entry unaltered!
  9. sudo update-grub
    • Make sure entries are found in /boot/, e.g. "Found linux image: /boot/vmlinuz-*"
  10. Optionally, delete the /boot partition and resize the / partition.