Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 24 Apr 2011 22:55:41 -0600
From:      Warner Losh <imp@bsdimp.com>
To:        "Daniel O'Connor" <doconnor@gsoft.com.au>
Cc:        svn-src-head@freebsd.org, Alexander Motin <mav@freebsd.org>, src-committers@freebsd.org, Andrey Chernov <ache@freebsd.org>, svn-src-all@freebsd.org
Subject:   Re: svn commit: r220983 - head
Message-ID:  <E5C45DAC-6014-42E2-9E1C-BFB7D54EBCB4@bsdimp.com>
In-Reply-To: <18B3AE1E-467E-4B23-81B9-AB1EDEFE1F7A@gsoft.com.au>
References:  <201104240923.p3O9N8QG025386@svn.freebsd.org> <20110424161933.GA18775@vniz.net> <18B3AE1E-467E-4B23-81B9-AB1EDEFE1F7A@gsoft.com.au>

next in thread | previous in thread | raw e-mail | index | archive | help

On Apr 24, 2011, at 11:34 AM, Daniel O'Connor wrote:

>=20
> On 24/04/2011, at 18:19, Andrey Chernov wrote:
>> On Sun, Apr 24, 2011 at 09:23:08AM +0000, Alexander Motin wrote:
>>> 	ATA device names in /etc/fstab or other places, make sure to =
update
>>> 	them respectively (adX -> adaY, acdX -> cdY, afdX -> daY, astX =
-> saY,
>>> -	where 'Y's are the sequential numbers for each type in order of
>>> -	detection, unless configured otherwise with tunables, see =
cam(4)).
>>> +	where 'Y's are the sequential numbers starting from zero for =
each type
>>> +	in order of detection, unless configured otherwise with =
tunables,
>>> +	see cam(4)).
>>=20
>> Is there any way to guess resulting 'Y' numbers _before_ booting new=20=

>> kernel? I have remote machine with console access almost impossible =
(very=20
>> hard for me).
>>=20
>> It seems something like
>> vfs.root.mountfrom=3D"ufs:/dev/ada0s1a ufs:/dev/ada1s1a ..."
>> (up to max channels) helps to find root, but what about other mounted=20=

>> disks?
>=20
> The best way is to change to use GPT IDs (/dev/gptid/xxx) if you are =
on a GPT system) or UFS IDs (/dev/ufsid/xxx) if you can't.

I've been running with ufs labels for a couple of years now, since the =
first rumblings of this hit the streets.  They work great no matter what =
the underlying partitioning scheme.  The one drawback is that if you =
have multiple disks with the same labels, then the first one wins.  =
Normally not a problem, but when you have it, you need to ensure the =
right one is selected.  I avoid this problem by prefixing a hostname to =
the label...

> gpart list will show the GPTID (rawuuid) and dumpfs will show the UFS =
ID.
>=20
> The following shell snippet will generate the UFS ID for a given FS.
>=20
> getfsid() {
>  line=3D`dumpfs 2> /dev/null $1 | head | grep superblock\ location`
>  if [ $? -ne 0 ]; then
>    return 1
>  fi
>  # dumpfs doesn't print leading 0s
>  eval `echo $line | sed -nEe 's/superblock location.*id.*\[ (.*) (.*)\ =
]/printf %0x $((0x\1 << 32 | 0x\2))/p'`
> }

This is also good.

Warner=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E5C45DAC-6014-42E2-9E1C-BFB7D54EBCB4>