# GPT Booting with 7.1-RC2: Hooray!



## nsayer (Dec 29, 2008)

I was able to set up 7.1-RC2 to boot from a GPT partitioned disk. I converted my server over to GPT by buying a new disk, partitioning it and then doing dump-restores to copy the data over.

There is a 'gpt migrate' command, but I was a bit nervous about doing this, since a failure would mean restoring everything from backups. Besides, the new disk is twice as big for US$50 and I get to restart the warranty clock. 

Anyway, the sequence was simply 'gpt create' on the new disk, 'gpt boot' to add the boot partition and MBR boot loader, then the 'gpt add -t swap' to add the swap partition - I wanted the swap and boot to be adjacent in case in the future it becomes necessary to either change the size of the boot partition, or perhaps replace it with an EFI system partition if I ever move to an EFI equipped machine. After that, it was just a matter of 'gpt add -t UFS' for the data partitions, then newfs and dump/restore. Almost completely painless.

So big ups for removing one more bit of old, legacy nonsense from the computing universe (or at least making it possible)!


----------



## none (Dec 30, 2008)

do you know where can I find the main advantages of GPT ?

I can imagine more than 4 primary partitions I can create ... 

I read from wikipedia but didn't help as much ...

thanks,

none


----------



## milosz (Dec 30, 2008)

Thanks for pointing that out. I downloaded FreeBSD 8 to test it out, but now I know that I can use it on FreeBSD 7...


----------



## nsayer (Dec 30, 2008)

none said:
			
		

> do you know where can I find the main advantages of GPT ?



All in all, it's just simpler. Traditionally, FreeBSD used BSD labels inside of MBR based partitions. So you had to deal with two levels of stuff.

Additionally, since the identifier for the partition type is a GUID, there's no ambiguity like there is with MBR, which only allows a 1 byte partition type.

You can also apply labels to GPT partitions, which (so far as I can tell) are merely comments, but there's no such mechanism in MBR or BSD labels.


----------



## tingo (Dec 31, 2008)

Very interesting!
Has anyone tried if older versions of FreeBSD (like 6.4) will work if you create a gpt partion (from 7.1-RC2) and install them there?


----------



## none (Dec 31, 2008)

nsayer said:
			
		

> All in all, it's just simpler. Traditionally, FreeBSD used BSD labels inside of MBR based partitions. So you had to deal with two levels of stuff.
> 
> Additionally, since the identifier for the partition type is a GUID, there's no ambiguity like there is with MBR, which only allows a 1 byte partition type.
> 
> You can also apply labels to GPT partitions, which (so far as I can tell) are merely comments, but there's no such mechanism in MBR or BSD labels.



looks good 

but my hopes are in creating more than 4 partitions as primary. I have a notebook with 320GB disk. first Vista part, XP part and two FreeBSD (Stable and current). so I'd like to have a spare one, just for my stuff. conventional partitioning can't make it. does gpt ? (I'd have to reinstall all  )

thanks,

none


----------



## nsayer (Dec 31, 2008)

tingo said:
			
		

> Very interesting!
> Has anyone tried if older versions of FreeBSD (like 6.4) will work if you create a gpt partion (from 7.1-RC2) and install them there?



Well, the magic parts of the whole thing appear to be related to the boot loader. I suppose in principle the 7.1 boot loader could boot an older kernel. I haven't ever tried doing that.


----------



## nsayer (Dec 31, 2008)

none said:
			
		

> looks good
> 
> but my hopes are in creating more than 4 partitions as primary. I have a notebook with 320GB disk. first Vista part, XP part and two FreeBSD (Stable and current). so I'd like to have a spare one, just for my stuff. conventional partitioning can't make it. does gpt ? (I'd have to reinstall all  )
> 
> ...



I don't know for certain, but I don't believe you can boot 32 bit Microsoft operating systems from GPT partitioned disks.


----------



## none (Jan 1, 2009)

nsayer said:
			
		

> I don't know for certain, but I don't believe you can boot 32 bit Microsoft operating systems from GPT partitioned disks.



/joke

its new year's eve ! you shouldn't say such a sad thing 

joke/

that's a bummer ! 

none


----------



## graudeejs (Jan 5, 2009)

i can't make *gpt boot*
*gpt boot: unable to open PMBR boot loader: No such file or directory*

any ideas...
i'm doing this from fixit 7.1R dvd

EDIT:
ok, i got it.... i have pmbr and gptboot on backup 
Ignore this post...


----------



## graudeejs (Jan 5, 2009)

i wrote
https://forums.freebsd.org/showthread.php?t=1305


----------



## randyqx (May 19, 2009)

how the heck do i do this on a new install?  fixit (8-current snap of 200905) does not seem to have gpt.


----------



## graudeejs (May 19, 2009)

you have to:
create gpt partitions

mount them and fallow this guide, to install freebsd:
http://daemonforums.org/showthread.php?t=1538


What makes you think 8-current doesn't have gpt, [I don't believe it]?


----------



## richardpl (May 19, 2009)

For gpt you should really use gpart(8), make sure that *kldstat -v* outputs g_part_(bsd,mbr,ebr,gpt,...)

To make real use of gpt you should make clean install, in other words complete new partitioning of disk, because fdisk and bsdlabel are known to be buggy ...


----------



## graudeejs (May 19, 2009)

richardpl said:
			
		

> To make real use of gpt you should make clean install


Now why is, that?
you can dump/restore... ain't nothing will change, just don't forget to edit fstab (especially for swap partition)



			
				richardpl said:
			
		

> in other words complete new partitioning of disk, because fdisk and bsdlabel are known to be buggy ...



What bugs there are? Haven't seen.

Also i don't see what you try to tell, because fdisk has nothing to do with gpt, and bsdlabels are unnecessary, when you use gpt


----------



## richardpl (May 19, 2009)

Forget it, I'm talking about CURRENT, but you are using 7.1 with now obsolete gpt(8) the same one that is going to be removed from CURRENT pretty soon.

Good luck 

hint:
gpt(8) uses obsolete geom_gpt

If you are still lost take look at mailing list archives


----------



## graudeejs (May 19, 2009)

richardpl said:
			
		

> Forget it, I'm talking about CURRENT, but you are using 7.1 with now obsolete gpt(8) the same one that is going to be removed from CURRENT pretty soon.
> 
> Good luck
> 
> ...



He he, i did check gpart(8) and saw, and saw some info what will be added to gpart..... (that's thy I thanked you)
Nice tool, will have to switch....


----------



## richardpl (May 19, 2009)

But note that gpart(8) manual is not really user friendly and there is still things to be done .... for example user friendly interface to gpart(8)

Always make backups.


----------



## jb_fvwm2 (May 19, 2009)

I've many uncertainties about GPT, as I usually
create a BSD filesystem with a dos shareware and
then install to it with sysinstall.  I know thus
nothing about the terms geom_ gpart_ etc but many
saved instructions : fdisk >> bsdlabel >> newfs >> tunefs
(for usb install, usual install, cf install, etc)
and am thus a newbie about GPT unless I discover a
newbie-friendly writeup or two about the exact
GPT procedure, what it means to the disk, how GPT
bsd will play with legacy-geom disks plugged in for
example on USB or a sata controller, etc etc...


----------



## randyqx (May 20, 2009)

to run gpart, i went to the livefs fixit cd.  to run gpart, i 
#mount -t devfs fevfs /dist
#chroot /dist​
then i have it all partitioned using fixit/dist.
ad4p1 64k freebsd-boot
ad4p2 64g freebsd-zfs (to use as zfs mirror)
ad4p3 64g freebsd-swap
ad4p4 2tb freebsd-zfs (to use as raidz2)​
same for ad5.  ad6 and ad7 have only p1 to join the raidz2.

but i can not build the boot zfs mirror because i can not follow the destructions at

http://lulf.geeknest.org/blog/freebsd/Setting_up_a_zfs-only_system/
http://wiki.freebsd.org/AppleMacbook
etc​
because fixit/dist is a world where i can not mount the zfs pool because / is read-only md0.  so i can not set up the bootable zfs mirror system.

trapola!


----------

