How to properly update Grub in Hosted environment

I'm hoping to obtain some guidance to properly update Grub on a GoDaddy dedicated server, as my previous attempt has resulted in re-provisioning the server. If this were a local server, I think I could start the server from the console and make the necessary configuration changes. Being hosted, I don't have access to the console - or so I believe, so I'm stuck with a server I can no longer access.

To start, I'm using apt-get upgrade (as I'm ultimately trying to upgrade from Lucid to Precise). This then identifies the Grub update..

There are two separate prompts which I'm unsure how to properly proceed:

1) Grub configuration
The update asks what I want to do with the config file (/etc/default/grub?). Should I

  1. Keep my existing
  2. Replace with package
  3. Merge existing with package
  4. Other

2) Installation location
A second prompt is to install the boot loader. The guide suggests that if I don't know, I should install it to all locations.
/boot is located on /dev/sda1
/dev/sda3 contains everything else (eg /)

Is /boot the only place it needs to be located, or do I need to identify something in /boot/grub/grub.cfg to identify where it should be installed?


Solution 1:

1. Grub configuration:

First of all, make a backup of /etc/default/grub file. This file is used to generate /boot/grub/grub.cfg with update-grub command. Feel free to keep existing, but i'd reccomend you to merge with package and compare merged with a backup copy. Do not replace with package. The system can be unbootable. /boot/grub/grub.cfg file will be regenerated at the end of update process. So, inspect the final version of /etc/default/grub, modify it if needed, run update-grub command if modified.

2. Installation location:

/boot is the only one location GRUB2 places it's files, but it also embed some code into MBR/boot partition. So, if /boot located on a separate partition and this partition is marked as bootable - choose /boot. If another partition is marked as bootable (/ for example - choose all locations).

On UEFI systems GRUB2 places additional files on /boot/efi.