Date: Tue, 13 Oct 2009 14:02:13 +0100 From: Matthew Seaman <m.seaman@infracaninophile.co.uk> To: Nick Barnes <nb@ravenbrook.com> Cc: freebsd-questions@freebsd.org, Ravenbrook SysAdmins <sysadmins@ravenbrook.com> Subject: Re: how does gmirror start up? Message-ID: <4AD47A55.2060707@infracaninophile.co.uk> In-Reply-To: <59889.1255436565@thrush.ravenbrook.com> References: <59889.1255436565@thrush.ravenbrook.com>
next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enigF0F0AB4AE5452F29D70E2002 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable Nick Barnes wrote: > I am running a 6.3 system and have had various problems with disk > reliability on a key filesystem, probably down to SCSI hardware or > drivers. I'm intending to replace that SCSI disk with a pair of SATA > disks ad6/7, using gmirror as gm0 (while keeping ad4 as our boot > disk). I have set up the mirror and right now I'm part-way through > using rsync to transfer the data. But I have a question concerning > the underlying operation of GEOM, which is troubling me. I have read > the various man pages and handbook pages relating to GEOM and gmirror, > but they don't seem to answer this. >=20 > When I reboot the system, gmirror comes up (because of the line in > /boot/loader.conf) and gm0 appears, backed by ad6/7. Where is this > configuration information stored? That is, how does the system know > to make gm0, with ad6/7 as the backing store. >=20 > I would expect there to be a file somewhere in /etc with this config > information, but I don't see it in the documentation. From reading > gmirror(8), I understand that there is a label sector at the ends of > ad6 and ad7, identifying them as parts of gm0. But that config > information is back-to-front: at boot time the system knows from > /etc/fstab that it needs gm0; how does it find the underlying disks? >=20 > Does the system search the ends of all physically-attached disks, > looking for GEOM labels, and automatically make any corresponding GEOM > devices? Surely not (that would mean, for instance, that if I took > one of these disks out of this machine and put it into another FreeBSD > system then that machine would automatically set up gm0 with this > disk). >=20 > Possibly I'm just being dense. Can someone enlighten me? The geom configuration is stored on the disks in question -- I believe it= uses the last cylinder of the drive, but I could be wrong about the detai= ls. On startup, if the appropriate geom modules are loaded into the kernel, geom will "taste" the disks discovered by enumerating the contents of all= =20 ATA, SCSI, USB, etc. busses (ie. read any geom metadata) to see if they a= re part of a RAID array of some type. The RAID will be automatically recrea= ted, and appears to the system as a new device. If there are appropriate entr= ies in /etc/fstab any file systems on it will be mounted. There's no data stored on the filesystem describing the RAID setup. Well= , unless you make a backup of it yourself by dumping the output of 'gmirror= status' somewhere. This means that you can move the disks from one server to another and all= the RAIDs will survive. Actually, it's good enough that it can cope with you= shuffling the disks or installing them with completely different underlyi= ng device names. You would certainly have to avoid a clash of geom device n= ames when doing that -- the names are entirely arbitrary and 'gm0' is only the= de-facto=20 default because it was used in one of the most popular tutorials on the s= ubject.=20 If you think it necessary, you could include the host name in the geom la= bel or otherwise take action to make them globally unique across all your= systems. You can achieve a similar effect for plain disks by using glabel -- this = is a handy way of avoiding the foot-shooting potential of a USB thumb drive th= at maps as da0 on reboot, in place of the real system disk. Cheers, Matthew --=20 Dr Matthew J Seaman MA, D.Phil. 7 Priory Courtyard Flat 3 PGP: http://www.infracaninophile.co.uk/pgpkey Ramsgate Kent, CT11 9PW --------------enigF0F0AB4AE5452F29D70E2002 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.13 (FreeBSD) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEAREIAAYFAkrUelsACgkQ8Mjk52CukIxCNACfSCHzt3binQDZ+IkyKqlgix5/ ElAAnAiwfPuLfpkuOF0OkNRB1uXS8Xgz =eUn0 -----END PGP SIGNATURE----- --------------enigF0F0AB4AE5452F29D70E2002--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4AD47A55.2060707>