Background
==========
Currently the nodename and defaultdomain configurations are stored in the
/etc/nodename and /etc defaultdomain files respectively.
During installation, the installer will prompt the user for the nodename and
save the configuration into the /etc/nodename file. When the system boots up,
if the system is standalone or the IP address is configured locally, the
/etc/nodename file contains the system name. Users can modify the file
/etc/nodename to change the hostname for a standalone system or if the IP
address is configured locally. In such a case the change will take effect
at next boot.
The file /etc/defaultdomain determines a host's domain name for direct use by
the NIS name service. The defaultdomain file is read at boot time and its
contents used by the domainname(1M) command. Users can modify the file
/etc/defaultdomain to change the default domain for a host. In such a case
the change will take effect at next boot.
Problem Statement
=================
Update the svc:/system/identity:node SMF service which will take care of
setting the nodename and update the svc:/system/identity:domain SMF service
which will take care of setting the defaultdomain of the system installed by
means of the Installer technologies. Furthermore, update various components
that currently reference /etc/nodename and /etc/defaultdomain to use the new
mechanism, namely cvcd, setuname, metaset and nodename(4) for nodename and
net-loc, identity-domain, net-nwam, ldapclient, ypcmd, nfs(4), keyserv(1M),
domainname(1M) and defaultdomain(4) for defaultdomain.
Requirement
===========
The nodename will be configurable via SMF property of svc:/system/identity:node
SMF service. The defaultdomain will be configurable via SMF property of
svc:/system/identity:domain SMF service.
Proposal
========
1. Add the nodename property to the svc:/system/identity:node SMF service.
The property definition (config/nodename) will be added in the SMF manifest.
Update the identity-node method to use the new property.
2. RBAC for nodename access to include solaris.smf.manage.nodename as the
authorization and with a profile description of "Node Name Management".
3. Obsolete file /etc/nodename. This file will no longer exist in the system
4. Modify existing /etc/nodename consumers, so that they operate on the SMF
property instead of the file. The following consumers were found in
the ON gate:
cvcd
setuname
metaset
Other consolidations will receive a flag day announcement and be given 2
builds prior to the removal of the nodename file.
5. Add the defaultdomain property to the svc:/system/identity:domain SMF
service. The property definition (config/defaultdomain) will be added in the
SMF manifest. Update the identity-domain method to use the new property.
6. RBAC for defaultdomain access to include solaris.smf.manage.defaultdomain as
a authorization and with a profile description of "Default Domain Name
Management".
7. Obsolete file /etc/defaultdomain. This file will no longer exist in the
system.
8. Modify existing /etc/defaultdomain consumers, so that they operate on the
SMF property instead of the file. The following consumers were found in the
ON gate:
net-loc
net-nwam
ldapclient
ypbind
Other consolidations will receive a flag day announcement and be given 2
builds prior to the removal of the defaultdomain file.
Note: bfu in the ONNV consolidation will still contain a reference to
defaultdomain, however, the company is moving away from using the
script because of how IPS works.
9. Update appropriate man pages:
nodename(4)
metaset(1M)
nfs(4)
keyserv(1M)
ldapclient(1M)
defaultdomain(4)
domainname(1M)
10. Make appropriate announcements in a Patch release of Solaris and to internal
development aliases.
Interfaces
==========
Exported Interfaces
Name Commitment Comments
-----------------------------------------------------------------------
svc:/system/identity:node Committed SMF service name
config/nodename SMF property
identity-domain SMF service method
solaris.smf.manage.nodename Committed RBAC authorization property
/etc/nodename Removed Obsolete in a Patch release
cvcd Uncommitted virtual console daemon
setuname Removed change machine information
utility, used for an old
standard
metaset Committed configure disk sets utility
svc:/system/identity:domain Committed SMF service name
config/defaultdomain SMF property
identity-domain SMF service method
solaris.smf.manage.defaultdomain Committed RBAC authorization property
/etc/defaultdomain Removed Obsolete in a Patch release
net-loc Uncommitted SMF service method for the
svc:/network/location:default
SMF service
net-nwam Uncommitted SMF service method for the
svc:/network/physical:nwam
SMF service
ldapclient Committed LDAP client machine initializer
ypbind Committed NIS binder process
man pages Uncommitted
nodename(4)
metaset(1M)
nfs(4)
keyserv(1M)
ldapclient(1M)
defaultdomain(4)
domainname(1M)
Imported Interfaces
Name Commitment Comments
-----------------------------------------------------------------------
domainname Uncommitted
uname Uncommitted
libscf Committed Service Configuration
Facility Library Functions
References
==========
[1] Example of SMF profile configuring nodename property
[2] Example of SMF profile configuring defaultdomain property
[3] Related SMF System Configuration cases
PSARC 2010/183 Kernel Keyboard Configuration in SMF
PSARC 2010/164 interfaces for basic install network configuration