Host ID.

Pawel Jakub Dawidek pjd at FreeBSD.org
Sat Apr 7 14:52:17 UTC 2007


On Sat, Apr 07, 2007 at 05:07:25PM +0400, Andrew Pantyukhin wrote:
> On 4/7/07, Pawel Jakub Dawidek <pjd at 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.
> 
> Just random thoughts:
> 
> - 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.

-- 
Pawel Jakub Dawidek                       http://www.wheel.pl
pjd at FreeBSD.org                           http://www.FreeBSD.org
FreeBSD committer                         Am I Evil? Yes, I Am!
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-arch/attachments/20070407/e3b25468/attachment.pgp


More information about the freebsd-arch mailing list