GPT Support on Freebsd
John Baldwin
jhb at freebsd.org
Thu Oct 30 06:36:31 PDT 2008
On Wednesday 29 October 2008 06:20:15 pm Franck wrote:
> 2008/10/29 John Baldwin <jhb at freebsd.org>:
> > On Wednesday 29 October 2008 05:39:27 pm Franck wrote:
> >> Hi,
> >>
> >> Thank you for help. I provide you the maximum information about my
> > partitions.
> >>
> >> Before, I watch the kernel configuration. When I fetch the kernel
> >> sources, I can see 2 differents configuration files : DEFAULTS and
> >> GENERIC. and the line : "options GEOM_PART_GPT" is present
> >> only in GENERIC. If I use my knowledge in linux systems, I would say
> >> that my actual kernel was compiled with the DEFAULTS conf, which
> >> doesn't enable the support of GPT for GEOM. Maybe I'm wrong, my knew
> >> kernel is compiling...
> >
> > The install kernel from the CD is GENERIC. So only if you've built a
custom
>
> I apologize, I didn't watch in the handbook for this
>
> > kernel would you not have GPT support. It seems that the kernel does
find
> > the GPT table, but gets confused by it. Can you get the output of 'fdisk
> > ad0' and 'gpt show ad0'?
> fdisk ad0 :
>
> ******* Working on device /dev/ad0 *******
> parameters extracted from in-core disklabel are:
> cylinders=387621 heads=16 sectors/track=63 (1008 blks/cyl)
>
> Figures below won't work with BIOS for partitions not in cyl 1
> parameters to be used for BIOS calculations are:
> cylinders=387621 heads=16 sectors/track=63 (1008 blks/cyl)
>
> Media sector size is 512
> Warning: BIOS sector numbering starts with sector 1
> Information from DOS bootblock is:
> The data for partition 1 is:
> sysid 238 (0xee),(EFI GPT)
> start 1, size 409639 (200 Meg), flag 0
> beg: cyl 1023/ head 254/ sector 63;
> end: cyl 1023/ head 254/ sector 63
> The data for partition 2 is:
> sysid 175 (0xaf),(HFS+)
> start 409640, size 37486592 (18304 Meg), flag 0
> beg: cyl 1023/ head 254/ sector 63;
> end: cyl 1023/ head 254/ sector 63
> The data for partition 3 is:
> sysid 131 (0x83),(Linux native)
> start 37897335, size 401625 (196 Meg), flag 80 (active)
> beg: cyl 1023/ head 254/ sector 63;
> end: cyl 1023/ head 254/ sector 63
> The data for partition 4 is:
> sysid 165 (0xa5),(FreeBSD/NetBSD/386BSD)
> start 38298960, size 38908800 (18998 Meg), flag 0
> beg: cyl 107/ head 0/ sector 1;
> end: cyl 818/ head 15/ sector 63
Ok, so it's not a PMBR. My understanding is that a GPT requires the MBR to be
a PMBR (only one partition in the 4th slot with a special type of 0xee that
covers the whole disk). What this box is doing is trying to make the MBR
match the first 4 partitions in the GPT. I'm not sure if you will be able to
get FreeBSD's GPT stuff to recognize that reliably. Marcel (cc'd) might have
some ideas. If you can get FreeBSD's GPT support to handle this disk it will
mean that you will have to use only GPT device names (so /dev/ad0p4a instead
of /dev/ad0s4a). You will also need to make sure the GPT partition for
FreeBSD has the right UUID since your partition contains a BSD label.
> [Dante at iris-bsd ~]$ sudo gpt show ad0
> gpt show: unable to open device 'ad0': Operation not permitted
>
>
> >Normally with GPT you don't put a BSD label inside
> > a GPT partition, so you wouldn't have /dev/ad0p4a, but instead would use a
> > separate GPT partition for each filesystem/swap/etc. The fstab from my
> > laptop (not a macbook) looks like this:
> >
> > # Device Mountpoint FStype Options Dump
Pass#
> > /dev/ad0p3 none swap sw 0 0
> > /dev/ad0p2 / ufs rw 1 1
> > /dev/ad0p5 /tmp ufs rw 2 2
> > /dev/ad0p6 /usr ufs rw 2 2
> > /dev/ad0p4 /var ufs rw 2 2
> > /dev/acd0 /cdrom cd9660 ro,noauto 0 0
> >
> > Are you booting using boot camp or parallels or some such?
>
> Yes, I think It's the problem. Actually I have a Leopard Mac OS X
> System. And it seems to automatically switch on the "bootcamp feature"
> when I tried to install pcbsd. That's weird because I haven't any
> problems to see the gpt table when I boot from a ubuntu cd for
> example. If I well remember, I was obliged to install pcbsd in one of
> the four first parititions. I'll reboot on the pcbsd cd to see if I
> can access to all the partitions.
>
> I realize that's must be efi/refit/bootcamp which mess up all. And I
> don't how to fix that.
>
> Thank you,
>
> Franck
>
> >
> >> On Freebsd :
> >>
> >> [Dante at iris-bsd /usr/home/Dante]$ ls /dev/|grep ^ad
> >> ad0
> >> ad0s2
> >> ad0s3
> >> ad0s4
> >> ad0s4a
> >> ad0s4b
> >> ad0s4c
> >>
> >> my dmesg :
> >> http://pastebin.com/m7b5f130e
> >>
> >> On Gentoo :
> >>
> >> dante at iris:~ % LANG=C sudo parted /dev/sda
> >> GNU Parted 1.8.8
> >> Using /dev/sda
> >> Welcome to GNU Parted! Type 'help' to view a list of commands.
> >> (parted) p
> >> Model: ATA ST9200420ASG (scsi)
> >> Disk /dev/sda: 200GB
> >> Sector size (logical/physical): 512B/512B
> >> Partition Table: gpt
> >>
> >> Number Start End Size File system Name Flags
> >> 1 20.5kB 210MB 210MB fat32 EFI System Partition boot
> >> 2 210MB 19.4GB 19.2GB hfs+ MacOSX
> >> 3 19.4GB 19.6GB 206MB ext2
> >> 4 19.6GB 39.5GB 19.9GB
> >> 6 39.5GB 42.7GB 3142MB linux-swap
> >> 5 42.7GB 58.4GB 15.7GB ext3 Gentoo
> >> 7 58.4GB 74.1GB 15.7GB ext3
> >> 9 89.9GB 200GB 110GB ext3
> >>
> >> The 4 is my ufs partition. UFS is not recognize on my gentoo system.
> >> The partition 7 is my home, the one that I want to mount under
> >> freebsd.
> >>
> >> Again, thank you for your help
> >>
> >> Franck
> >>
> >> 2008/10/29 John Baldwin <jhb at freebsd.org>:
> >> > On Wednesday 29 October 2008 11:52:19 am Franck Royer wrote:
> >> >> John Baldwin a écrit :
> >> >> > On Wednesday 29 October 2008 07:42:18 am Lowell Gilbert wrote:
> >> >> >
> >> >> >> Franck Royer <royer.franck at gmail.com> writes:
> >> >> >>
> >> >> >>
> >> >> >>> Can I oblige pcbsd to look the gpt table instead of the msdos
one ?
> > How
> >> >> >>> can I access to my fifth partition ?
> >> >> >>>
> >> >> >> John Baldwin (jhb) has been working on GPT support, but it's still
> >> >> >> reported to be a work in progress. It works as far as recognizing
> >> >> >> disks over 16TB. It also gets picked up by the geom framework.
I'm
> >> >> >> not sure about booting, although there are tantalizing hints in the
> >> >> >> manual pages.
> >> >> >>
> >> >> >
> >> >> > GPT booting works just fine on 6.x and later. Using the gpt(8)
utility
> >> > you
> >> >> > basically do:
> >> >> >
> >> >> > # gpt create foo0
> >> >> > # gpt boot foo0
> >> >> >
> >> >> > The second command creates a special boot partition in /dev/foo0p1.
> > You
> >> > can
> >> >> > then add partitions:
> >> >> >
> >> >> > # gpt add -t ufs <other params like size if needed> foo0
> >> >> > # newfs /dev/foo0p2
> >> >> >
> >> >> > gpart(8) in HEAD works similarly. The one thing lacking is that
> >> >> > sysinstall/libdisk doesn't handle GPT, so there isn't a nice way to
do
> > it
> >> >> > during installation.
> >> >> >
> >> >> >
> >> >> Ok thank you. But actually, it's not what I'm looking for.
> >> >>
> >> >> I use freebsd on a macbook. On this macbook, I already have a gpt,
> >> >> refit, mac os x and some linux partitions. The problem is freebsd,
which
> >> >> doesn't recognize partitions after the fourth one (but my gentoo linux
> >> >> see them).
> >> >>
> >> >> Then, I suppose freebsd use the mbr partition table (synchronized from
> >> >> the gpt one using refit) to populate the /dev, but partitions after
the
> >> >> fourth, which are those I want to use, are only indexed in the gpt.
> >> >>
> >> >> Finally, I want to force freebsd to use the gpt on my hard drive to
> >> >> allow it to see others partitions.
> >> >>
> >> >> I don't want to destroy my actual gpt, maybe one day, but no right
now.
> >> >>
> >> >> Tell me if my english is too bad to be understood.
> >> >>
> >> >> I just want to precise that I use pcvbsd 7.0, so the kernel
> >> >> configuration might be different than the freebsd generic one.
> >> >
> >> > What device entries do you see in /dev?
> >> >
> >> > --
> >> > John Baldwin
> >> >
> >>
> >>
> >>
> >> --
> >> Franck Royer
> >>
> >> Student of Manchester University
> >> Etudiant Ingénieur de l'ENSIIE (Ecole Nationale Supérieure
> >> d'Informatique pour l'Industrie et l'Entreprise)
> >>
> >> e-mail/jabber: royer.franck at gmail.com
> >>
> >
> >
> >
> > --
> > John Baldwin
> >
>
>
>
> --
> Franck Royer
>
> Student of Manchester University
> Etudiant Ingénieur de l'ENSIIE (Ecole Nationale Supérieure
> d'Informatique pour l'Industrie et l'Entreprise)
>
> e-mail/jabber: royer.franck at gmail.com
>
--
John Baldwin
More information about the freebsd-questions
mailing list