Date: Mon, 17 Sep 2012 08:50:09 -0400 From: John Baldwin <jhb@freebsd.org> To: Oliver Fromme <olli@lurza.secnetix.de> Cc: freebsd-hardware@freebsd.org Subject: Re: Booting from 3TB drive (UFS, BIOS) Message-ID: <201209170850.09992.jhb@freebsd.org> In-Reply-To: <201209171241.q8HCf9Bm033095@lurza.secnetix.de> References: <201209171241.q8HCf9Bm033095@lurza.secnetix.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On Monday, September 17, 2012 8:41:09 am Oliver Fromme wrote: > John Baldwin wrote: > > On Tuesday, August 14, 2012 9:23:19 am Oliver Fromme wrote: > > > I've got a small PC that currently has two disks: The > > > first one is 1 TB with a standard MBR, used to boot FreeBSD, > > > and the second one is 3 TB with GPT, used as data disk for > > > FreeBSD (the BIOS doesn't have to care about this one at all > > > because it's not used for booting). > > > > > > Now I would like to replace the first disk with a 3 TB one, > > > too. However, will I be able to boot from it? The PC is > > > not exactly a new one (ASRock A330GC with Atom 330 processor, > > > a few years old) and has a standard BIOS (dated 07/16/2009). > > > > > > I understand that I will have to use GPT in order to be able > > > to use the full capacity of 3 TB, and that I will have to > > > install a pmbr to enable the BIOS to detect the disk as > > > bootable. Is this correct? Will that work? (Assuming that > > > the boot partition will have to be within the first 2 TB of > > > the drive, of course.) > > > > A GPT boot should work, and the boot partition can even be > > above 2 TB. (GPT booting only uses the EDD BIOS interface > > which uses 64-bit LBAs, and the GPT boot code will use all > > 64-bits of the LBAs stored in GPT, etc.) > > (I'm sorry for the late reply; I still haven't gotten around > to upgrade the disks ...) > > Problem is, the machine doesn't have an EFI BIOS and does > *not* support GPT. So it will use the compatibility MBR > of the GPT, I assume. And MBR isn't able to represent > addresses beyond 2 TB, so the slice containing the boot > partition will have to be within the first 2 TB of the > drive, right? No. > I tried to research the issue, but Google mostly returns > pages concerning Linux that advise to use disks > 2 TB as > data disks only while using a separate disk <= 2 TB for > booting, unless you have an EFI BIOS that supports GPT > natively. We support booting from GPT without EFI. It will work fine. The BIOS will see a PMBR that does indeed only cover 2TB, but that doesn't matter. The whole point of the PMBR is to fool BIOSs. :) Tools that understand GPT (such as gpart) will see the GPT table and it's partitions. FreeBSD's GPT bootstrap code (/boot/pmbr and /boot/gptboot) will see the GPT and use 64-bit LBAs for all I/O, so they can handle the partition being anywhere on the disk. -- John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201209170850.09992.jhb>