Re: BIOS Can Not Find Disk
On 12/01/17 10:50, Dan Norton wrote:
Maybe this is the wrong forum, but please bear with me a little bit.
This post was sent from a desktop with jessie installed. The problem is
it will not boot normally. Network booting has been disabled in the
NVRAM setup. After POST there is a one-liner which says it can not find
Please post the *exact* contents of the console screen.
It can be booted with a supergrub2 cd, however.
# fdisk -l
Disk /dev/sda: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: A615A904-0620-459F-BF44-5E53E54FDF24
Device Start End Sectors Size Type
/dev/sda1 2048 411647 409600 200M BIOS boot
/dev/sda2 411648 16783359 16371712 7.8G Linux swap
/dev/sda3 16783360 151001087 134217728 64G Linux LVM
/dev/sda4 151001088 285218815 134217728 64G Linux LVM
/dev/sda5 285218816 419436543 134217728 64G Linux LVM
/dev/sda6 419436544 553654271 134217728 64G Linux LVM
/dev/sda7 553654272 1953525134 1399870863 667.5G Linux filesystem
This post is being written with Debian 8 installed on /dev/sda3, above.
How did you create the contents of this disk?
What are your LVM PV's, VG's, and LV's?
What are the corresponding file systems and where are their mount points?
What bootloader was installed -- LILO, GRUB, GRUB2, whatever? And, where?
Apparently, BIOS does not see a bootable device.
Are you sure? How did you reach that conclusion?
In the dim past, fdisk
could set a partition as "active", which was its euphemism for
"bootable". However now:
# fdisk /dev/sda
Welcome to fdisk (util-linux 2.25.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): a
a: unknown command
# uname -v
#1 SMP Debian 3.16.43-2+deb8u5 (2017-09-19)
HP Pro 3400 Series MT
BIOS version 7.16 dated 03/23/2012 with no update found.
How can /dev/sda1 be defined so that the bios will see it as bootable?
On 12/01/17 13:23, Dan Norton wrote:
> On 12/01/2017 02:29 PM, Pascal Hambourg wrote:
>> Le 01/12/2017 à 19:57, Greg Wooledge a écrit :
>>> On Fri, Dec 01, 2017 at 01:50:12PM -0500, Dan Norton wrote:
>>>> Disklabel type: gpt
>>>> Apparently, BIOS does not see a bootable device. In the dim past,
>>>> could set a partition as "active", which was its euphemism for
>>>> However now:
>>> GPT disk labels don't have active/bootable partitions.
>> Yes they do. They even have two kinds of them.
>> - Partition attribute bit 2 = legacy BIOS bootable.
>> It is supposed to be equivalent to the boot/active flag in partition
>> entries of the MBR. I just wonder how a BIOS would use that, though.
>> - The good old boot/active flag of the GPT protective partition entry
>> in the MBR. Some BIOSes require it to boot a drive regardless of the
>> presence of a GPT disk label. It can be set with parted which
>> considers it as a disk flag (disk_set pmbr_boot on), or by fdisk by
>> forcing it to use the protective DOS/MBR disk label (-t dos).
> This really sounds good. I could not figure out how to get at the
> protective mbr and turn on that bit. Here's what I tried, after doing a
> # fdisk -t dos /dev/sda
Your original post indicated a GPT partition table. Forcing an MS-DOS
MBR partition type means the tool will be looking at fake information
that your GPT formatting tool laid down on disk ("protective MBR", or
some such; I avoid these complexities.)
> Command (m for help): m
> DOS (MBR)
> a toggle a bootable flag
> b edit nested BSD disklabel
> c toggle the dos compatibility flag
> Command (m for help): a
> Selected partition 1
> The bootable flag on partition 1 is enabled now.
> Command (m for help): p
> Disk /dev/sda: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
> Units: sectors of 1 * 512 = 512 bytes
> Sector size (logical/physical): 512 bytes / 512 bytes
> I/O size (minimum/optimal): 512 bytes / 512 bytes
> Disklabel type: dos
> Disk identifier: 0x3f90eec3
> Device Boot Start End Sectors Size Id Type
> /dev/sda1 * 1 1953525167 1953525167 931.5G ee GPT
> Command (m for help): w
> The partition table has been altered.
> Calling ioctl() to re-read partition table.
> Re-reading the partition table failed.: Device or resource busy
> The kernel still uses the old table. The new table will be used at the
> next reboot or after you run partprobe(8) or kpartx(8).
> # partprobe -s /dev/sda
Manipulating the fake information is unlikely to produce a desirable
result. I would undo those changes.
> After removing the cd and shutting down, re-booted from power-off
> state, but unfortunately still got the "disk not found" message on a
> black screen.
See my first comment.
> The PC is simply not seeing the 1T sda, which is the only disk. It's
> not even getting as far as the mbr/grub. The PC appears to be no more
> than 5 years old, based on the BIOS date, but it may be old enough to
> have a flaky UEFI. Should I abandon the use of GPT?
If you want to pursue the questions in your OP, I suspect that the
solution will involve reverting the changes you made, configuring your
firmware to see the GPT partition table, and configuring your bootloader
to find the Debian 8 /boot and/or root file systems.