gpart, modified label does not show up in /dev/gpt.

Peter fbsdq at peterk.org
Fri Dec 23 19:33:15 UTC 2011


> Peter schreef:
>>> Hello all.
>>>
>>> I just installed FreeBSD 9.0 RC2 and upgraded to 9.0 RC3.
>>>
>>> I used the standard GPT disk layout at install.
>>>
>>> Now i want to set labels for my disk, so that i can swap around disks a
>>> little more easy.
>>> So reading through the man page it told me to use gpart modify -i -l
>>>
>>> The layout is as follows:
>>> test# gpart status
>>>    Name  Status  Components
>>> da0p1      OK  da0
>>> da0p2      OK  da0
>>> da0p3      OK  da0
>>>
>>> test# gpart list | grep label
>>>      label: (null)
>>>      label: (null)
>>>      label: (null)
>>>
>>> Now i modified the gpart labels.
>>>
>>> test# gpart modify -i1 -l bootpart da0
>>> da0p1 modified
>>> test# gpart modify -i2 -l rootpart da0
>>> da0p2 modified
>>> test# gpart modify -i3 -l swap da0
>>> da0p3 modified
>>>
>>> Ok all looks fine.
>>> Now lets see if i can use my labels
>>>
>>> test# cd /dev/gpt
>>> /dev/gpt: No such file or directory.
>>>
>>> Well it does not create my labels
>>> I did check if the labels where there
>>>
>>> test# gpart list | grep label
>>>      label: bootpart
>>>      label: rootpart
>>>      label: swap
>>>
>>> So i rebooted the machine!
>>> But after a reboot, still no /dev/gpt.
>>>
>>> So why is it not creating my labels!
>>> Am i missing a step?
>>>
>>> Thanks for your time.
>>>
>>> And before i forget, merry christmas to all, and a wonderful 2012.
>>>
>>> regards,
>>> Johan Hendriks
>>>
>> I was going to say if you mount /dev/da0p? its /dev/gpt/label
>> disappears,
>> and since all the partition are mounted already [/dev/gpt/ is empty],
>> then
>> /dev/gpt is maybe also removed.......but /dev/gpt/bootpart is not
>> mounted
>> and should still show up.
>>
>>
>> When you ran the 'gpart' commands, did you set the sysctl geom debug
>> variable? [sysctl kern.geom.debugflags=17]
>> After the reboot, are the labels still there? [gpart list | grep label]
>>
>> ]Peter[
>>
> I placed some other disk in (for the zfs pool)
> Now i have /dev/gpt/bootpart, but not the labels for swap and /
> I did not use the sysctl value.
>
> And yes the labels are stil in place.
>
> test# cd /dev/gpt
> test# ls -al
> total 1
> dr-xr-xr-x   2 root  wheel          512 Dec 23 20:02 .
> dr-xr-xr-x  10 root  wheel          512 Dec 23 21:02 ..
> crw-r-----   1 root  operator    0, 123 Dec 23 20:02 bootpart
> test# gpart list | grep label
>     label: bootpart
>     label: rootpart
>     label: swap
> test#
>
> I will try the debugflag option.
> But it should not be nessacary i guess.
>
> thanks
> regards
> Johan
>

If you have already mounted a /dev/da0p?, its label is removed from
/dev/gpt - 'bootpart' is never mounted, that is why it's label remains. 
you just have to change /etc/fstab to the /dev/gpt/labels and then they
will remain and get mounted - Or boot from a DVD, don't mount anything and
you'll see the labels.

ie:
If you mount '/dev/da0p2'as '/' then '/dev/gpt/rootpart' will no longer be
available, same goes for swap and everything else.  If you mount
'dev/gpt/rootpart' as '/', the you'll have both '/dev/da0p2' and
'/dev/gpt/bootpart'

]Peter[




More information about the freebsd-questions mailing list