Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 7 Apr 2007 16:51:54 +0200
From:      Pawel Jakub Dawidek <pjd@FreeBSD.org>
To:        Andrew Pantyukhin <infofarmer@FreeBSD.org>
Cc:        freebsd-arch@freebsd.org
Subject:   Re: Host ID.
Message-ID:  <20070407145154.GG63916@garage.freebsd.pl>
In-Reply-To: <cb5206420704070607j7afe5349r180151dac1ec3e92@mail.gmail.com>
References:  <20070407120656.GD63916@garage.freebsd.pl> <cb5206420704070607j7afe5349r180151dac1ec3e92@mail.gmail.com>

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

--0z5c7mBtSy1wdr4F
Content-Type: text/plain; charset=iso-8859-2
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sat, Apr 07, 2007 at 05:07:25PM +0400, Andrew Pantyukhin wrote:
> On 4/7/07, Pawel Jakub Dawidek <pjd@freebsd.org> wrote:
> >Hi.
> >
> >After initial discussion on IRC, I'd like to propose an addition...
> >I want to use it with ZFS, but I thought it may be useful in general, so
> >here it goes:
> >
> >I'd like to assign a unique ID to the system on first boot.
> >
> >When system starts, /etc/rc.d/hostid script checks if /hostid file
> >exists, if it doesn't, it creates it via 'uuidgen > /hostid'.
> >
> >It will also set kern.hostuuid sysctl to this value and first four bytes
> >of MD5(kern.hostuuid) will be stored in kern.hostid. It will allow to
> >use gethostid(3).
> >
> >If root file system is read-only, different uuid will be genrated on
> >each boot. Not sure if anything better can be done here.
> >
> >As I said, I think it may be genrally useful. Imagine using it with
> >magic/variant symlinks, for example.
>=20
> Just random thoughts:
>=20
> - It sounds more like a (writeable) root fs ID...

If we move disks with root file system, it's this more or less the same
host, isn't it? I'd prefer hostid to depend on what is really running
there and be able to change the hardware without changing hostid.

> - Is Windows-style hardware ID's hashing totally ruled out?

I know nothing about it...

> - How does it work in other OS'es? (e.g. solaris /bin/hostid)

On OpenSolaris, if I understand the code right, hostid is derived from
hw_serial, and hw_serial is taken from:

 * On sparc machines, read hw_serial from the firmware at boot time
 * and simply assert Sun is the hardware provider.  Hmm.
[...]
 * On x86 machines, read hw_serial, hw_provider and srpc_domain from
 * /etc/bootrc at boot time.

--=20
Pawel Jakub Dawidek                       http://www.wheel.pl
pjd@FreeBSD.org                           http://www.FreeBSD.org
FreeBSD committer                         Am I Evil? Yes, I Am!

--0z5c7mBtSy1wdr4F
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (FreeBSD)

iD8DBQFGF7AKForvXbEpPzQRAoXGAKCfH4XIxQfqiolxjDsgDL0emw2X3ACg1yL2
JvfSD4Yl2xPIPpdZvEpCtds=
=4AiB
-----END PGP SIGNATURE-----

--0z5c7mBtSy1wdr4F--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070407145154.GG63916>