Date: Sat, 22 Aug 2009 02:28:22 +0200 From: Pawel Jakub Dawidek <pjd@FreeBSD.org> To: current@freebsd.org Subject: Re: Cannot mount / from UFS labels Message-ID: <20090822002822.GA2613@garage.freebsd.pl> In-Reply-To: <20090821131723.GA91417@acme.spoerlein.net> References: <20090821131723.GA91417@acme.spoerlein.net>
next in thread | previous in thread | raw e-mail | index | archive | help
--u3/rZRmxL6MmkK24 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Aug 21, 2009 at 03:17:23PM +0200, Ulrich Sp=F6rlein wrote: > Hello, >=20 > I'm not sure this ever worked for 7.x but now I need to have the same > root fs device on two machines: labels to the rescue! As I don't want to > use the GEOM labels, but UFS labels, this is what I did: >=20 > # tunefs -L root / (in single user) > then updated /etc/fstab and rebooted The problem is this: tunefs will write volume name into file system's superblock on the disk. Then you remount read-write and UFS will overwrite superblock with in-memory copy it picked up on first read-only mount (no vo= lume name in there). So there will be no volume name in the superblock anymore.= You can confirm that with: # tunefs -L root /dev/ad0s1a # dumpfs /dev/ad0s1a | grep volname There should be volume name here. # mount -uw / # dumpfs /dev/ad0s1a | grep volname No volume name here. You cannot remount it read-only again and use tunefs again, because this is= a bit of a hack how it works now. Only first read-only mount opens GEOM provi= der (eg. /dev/ad0s1a) for reading, but without exclusive bit. Once you remount = it the exclusive bit will be there and you will no longer be able to use tunef= s on this file system. You can confirm that with: # gpart list | grep -A3 'Name: ad0s1a' Take a look at the 'e' (exclusive) count. So what you have to do instead is to boot into single-user mode, put volume name using tunefs and reboot without remounting the file system. After the reboot, boot it again into single-user mode, remount it read-write and edit /etc/fstab. Alternatively for the second single-user mode boot you can chan= ge root provider from loader prompt with this command: OK set vfs.root.mountfrom=3D"ufs:/dev/ufs/root" OK boot And once you boot, edit /etc/fstab. --=20 Pawel Jakub Dawidek http://www.wheel.pl pjd@FreeBSD.org http://www.FreeBSD.org FreeBSD committer Am I Evil? Yes, I Am! --u3/rZRmxL6MmkK24 Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4 (FreeBSD) iD8DBQFKjzumForvXbEpPzQRAsW6AKC99En9Qeu+V8AgllMIPWLw98eYCQCgo8u5 NIyt9aumzPMuMb+r4hMENaI= =rMHR -----END PGP SIGNATURE----- --u3/rZRmxL6MmkK24--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090822002822.GA2613>