gmirror, gjournal and glabel - which order?

Vincent Hoffman vince at
Tue Oct 13 11:13:58 UTC 2009

krad wrote:
> 2009/10/13 Daniel Bye <freebsd-questions at>
>> On Tue, Oct 13, 2009 at 01:08:46AM +0300, Manolis Kiagias wrote:
>>> Daniel Bye wrote:
>>>> Hi all,
>>>> I'm having a hard time trying to work out which order I should set up
>>>> gmirror, glabel and gjournal on a new system. I want to journal my
>>>> /home partition, label all the partitions for ease of reference, and
>>>> use gmirror to save me in the event a disk goes bad. I am struggling
>>>> to fit the pieces together conceptually in my mind. I understand the
>>>> processes involved in setting each part separately - my problem is in
>>>> trying to build this up in the right order so that it all makes sense.
>>>> So far, I have labelled the primary drive and set up the journal. I
>> have
>>>> edited fstab to reflect the labels and journalled file system on /home.
>>>> If I now build a mirror, don't I need to alter fstab to mount that and
>>>> not the stuff in /dev/label? In which case, I guess I need to build the
>>>> mirror first, and then set up labels and journals?
>>>> I'm going round and round in circles here and none of the stuff I've
>>>> read on the web enlightens me... :-/
>>>> Any insights or suggestions would be taken as a great kindness!
>>>> Dan
>>> When not mirroring,  I first create the journals and then label the
>>> resulting adxxxx.journal devices
>>> In case you are doing a gmirror device, you would not really need the
>>> separate label step - the gm device name won't change and gmirror is not
>>> affected if the device names of the individual disks change (the disks
>>> are marked as part of a mirror and scanned at startup).
>>> When you are creating the composite gmirror device you are effectively
>>> labeling it anyway i.e. gmirror label gm0...
>>> Now if you follow the usual tutorials found in the web you would be
>>> using gm0 / gm1 but you actually name it any way you wish.
>>> If you really need to label the separate gmirrored partitions, do it
>>> after setting up the mirror.
>>> Concerning the order of journals and mirroring, I  create the journals
>>> first, then mirror the result. This has always worked fine for me.
>> Thanks much, Manoli. After posting, I came to more or less the same
>> conclusion, but it's good to get confirmation from someone who clearly
>> knows more about this stuff than I do!
>> I'd still be interested to hear what others think/do.
>> As ever, thanks for your time.
>> Dan
>> --
>> Daniel Bye
>>                                                                     _
>>                                              ASCII ribbon campaign ( )
>>                                         - against HTML, vCards and  X
>>                                - proprietary attachments in e-mail / \
> I've always gmirrored 1st, then created the gjournal then newfs the journal
> device with the -L and -J flags to label it. I'm not sure if this is correct
> but ufs2 has hooks into gjournal, and if the journal class inst directly
> below the ufs layer these hooks might not work correctly.

I've always done it this way too (mirror then journal,) both for the
reason given and because of the following from the gjournal(8) manpage:

     When gjournal is configured on top of gmirror(8) or graid3(8)
     it also keeps them in a consistent state, thus automatic
     on power failure or system crash may be disabled on those providers.

> _______________________________________________
> freebsd-questions at mailing list
> To unsubscribe, send any mail to "freebsd-questions-unsubscribe at"

More information about the freebsd-questions mailing list