boolewinklegmail.
June 13th, 2016, 01:44 PM
Hello,
Background, I have a 2008 era bios-based machine that I want to upgrade/replace. It has a 500g drive.
I have just installed a 4TB disk, and am trying to install a more modern 64bit ubuntu on this disk.
Although grub has been installed on the new disk (about 10 times!), booting from the new disk
seems to actually boot from the old disk. More details:
The old disk (sda) has MBR partitioning, 4 partitions (one is windows).
The new disk (sdb) is setup with GPT partitioning, including
1M bios_grub
300M fat32 # not used/efi boot flag not set, reserved for future use (ambition to put the drive in a uefi machine)
20g ext4 / # gpt partion 3, /boot is here
15g swap
3TB /home
So, I have repeatedly done (when booted into the 64bit linux, and from a rescue disk)
sudo grub-install /dev/sdb
sudo update-grub
During the original install, I forgot to point it at /dev/sdb,
so booting /dev/sda now has an option to boot the new system as well as the old. It works.
However, I want to move away from dependence on the old drive, and just boot from the new.
When I boot from the new drive, it always gives
error: no such device: 4a096....
grub rescue>
Following a lot of web surfing, I got tho this bit of evidence:
grub rescue> set
grub rescue> ls
(hd0) (hd1) ... (hd1,gpt3) ...
prefix=(hd0,1)/grub
root=hd0,1
Here, (hd1,gpt3) is the newgpt partition that has /boot. (... means other irrelevant partitions).
However, I understand (correct?) that the root=hd0,1 is reporting that grub actually booted from the old drive,
EVEN THOUGH
1) I told it to boot from the new drive in the bios,
2) I know that the bios order has an effect because booting from the other drive actually works.
(As well, in a previous life of this upgrade drama, I was booting from the new drive successfully).
From the grub rescue menu, these commands successfully boot the new linux:
set prefix=(hd1,gpt3)/boot/grub
set root=(hd1,gpt3)
insmod normal
normal
So it seems like grub is initially looking at the gpt disk, then giving up and redirecting itself back to the mbr disk?
Another puzzle is that the "no such device" UUID 4a09...
is not one of the partitions on either disk - it is not in the output of "sudo blkid",
which shows all the partitions on both disks. Nor does this string "4a09..." appear
in the grub.cfg file on either drive.
I am a programmer, but not a linux or hardware expert, please keep your reply (if any) on the simple side!
Background, I have a 2008 era bios-based machine that I want to upgrade/replace. It has a 500g drive.
I have just installed a 4TB disk, and am trying to install a more modern 64bit ubuntu on this disk.
Although grub has been installed on the new disk (about 10 times!), booting from the new disk
seems to actually boot from the old disk. More details:
The old disk (sda) has MBR partitioning, 4 partitions (one is windows).
The new disk (sdb) is setup with GPT partitioning, including
1M bios_grub
300M fat32 # not used/efi boot flag not set, reserved for future use (ambition to put the drive in a uefi machine)
20g ext4 / # gpt partion 3, /boot is here
15g swap
3TB /home
So, I have repeatedly done (when booted into the 64bit linux, and from a rescue disk)
sudo grub-install /dev/sdb
sudo update-grub
During the original install, I forgot to point it at /dev/sdb,
so booting /dev/sda now has an option to boot the new system as well as the old. It works.
However, I want to move away from dependence on the old drive, and just boot from the new.
When I boot from the new drive, it always gives
error: no such device: 4a096....
grub rescue>
Following a lot of web surfing, I got tho this bit of evidence:
grub rescue> set
grub rescue> ls
(hd0) (hd1) ... (hd1,gpt3) ...
prefix=(hd0,1)/grub
root=hd0,1
Here, (hd1,gpt3) is the newgpt partition that has /boot. (... means other irrelevant partitions).
However, I understand (correct?) that the root=hd0,1 is reporting that grub actually booted from the old drive,
EVEN THOUGH
1) I told it to boot from the new drive in the bios,
2) I know that the bios order has an effect because booting from the other drive actually works.
(As well, in a previous life of this upgrade drama, I was booting from the new drive successfully).
From the grub rescue menu, these commands successfully boot the new linux:
set prefix=(hd1,gpt3)/boot/grub
set root=(hd1,gpt3)
insmod normal
normal
So it seems like grub is initially looking at the gpt disk, then giving up and redirecting itself back to the mbr disk?
Another puzzle is that the "no such device" UUID 4a09...
is not one of the partitions on either disk - it is not in the output of "sudo blkid",
which shows all the partitions on both disks. Nor does this string "4a09..." appear
in the grub.cfg file on either drive.
I am a programmer, but not a linux or hardware expert, please keep your reply (if any) on the simple side!