Preconfiguring With the sysidcfg File

You can specify a set of keywords in the sysidcfg file
to preconfigure a system. The keywords are described in sysidcfg File Keywords.

Note –

The name_service keyword in the sysidcfg file automatically sets the naming service during installation
of the Solaris OS. This setting overrides SMF services previously set up for site.xml. Therefore, you might need to reset your name service
after installation.

You must create a unique sysidcfg file for every
system that requires different configuration information. You can use the
same sysidcfg file to preconfigure the time zone on a
set of systems if you want all the systems to be assigned the same time zone.
However, if you want to preconfigure a different root (superuser) password
for each of those systems, you need to create a unique sysidcfg file
for each system.

You can place the sysidcfg file in one of the following.

Table 2–2 sysidcfg Locations

NFS file system

If you put the sysidcfg file in a shared NFS file
system, you must use the -p option of the add_install_client(1M) command when you set up the system to install from
the network. The -p option specifies where the system can
find the sysidcfg file when you install the current Solaris release.

To Create a sysidcfg Configuration
File

Create a file called sysidcfg in
a text editor with the keywords you want.

Make the sysidcfg file
available to clients by using one of the locations described at Table 2–2.

Example 2–1 SPARC: sysidcfg File

The following is an example of a sysidcfg file
for a SPARC based system. The host name, IP address, and netmask of this system
have been preconfigured by editing the naming service. Because all of the
system configuration information is preconfigured in this file, you can use
a custom JumpStart profile to perform a custom JumpStart installation. In
this example, the NFSv4 domain name is automatically derived from the naming
service. Because the service_profile keyword is not
included in this example, configuration is not altered for the network services
during installation.

Example 2–2 x86: sysidcfg File

The following sample sysidcfg file is for a group
of x86 based systems. In this example, the NFSv4 domain name
is specified to be example.com. This custom name overrides
the default domain name. Also in this example, the network services are
disabled or restricted to local connections only.

Example 2–3 sysidcfg File for Configuring Multiple Interfaces

In the following sample sysidcfg file, configuration
information is specified for both the eri0 and eri1 network
interfaces. The eri0 interface is configured as the primary
network interface, and eri1 is configured as a secondary
network interface. In this example, the NFSv4 domain name
is automatically derived from the naming service.

See Also

For more information about the sysidcfg file, see
the man page sysidcfg(4).

Syntax Rules for the sysidcfg File

You can use two types of keywords in the sysidcfg file:
independent and dependent. Dependent keywords are guaranteed to be unique
only within independent keywords. A dependent keyword exists only when it
is identified with its associated independent keyword.

In this example, name_service is the independent
keyword, while domain_name and name_server are
the dependent keywords:

keyboard Keyword

If the keyboard is self-identifying, the keyboard language
and layout automatically configures during installation.

If the keyboard is not self-identifying, the sysidkdb tool
provides you with a list of supported keyboard layouts during installation,
so that you can select a layout for keyboard configuration.

Note –

PS/2 keyboards are not self-identifying. You will be asked to
select the keyboard layout during the installation.

You can configure the keyboard language and its corresponding keyboard
layout information by using the keyboard keyword. Each
language has its own keyboard layout. Use the following syntax to select a
language and its corresponding layout.

keyboard=keyboard_layout

For example, this entry sets the keyboard language and its corresponding
keyboard layout for the German language:

keyboard=German

The value provided for keyboard_layout must
be a valid value. Otherwise, an interactive response is required during installation.
The valid keyboard_layout strings are defined in
the /usr/share/lib/keytables/type_6/kbd_layouts file.

SPARC only –

Previously, the USB keyboard assumed a self-identifying
value of 1 during the installation. Therefore, all of the keyboards that were
not self-identifying always configured for a U.S. English keyboard layout
during installation.

If the keyboard is not self-identifying and you want to prevent being
prompted during your JumpStart installation, select the keyboard language
in your sysidcfg file. For JumpStart installations, the
default is for the U.S. English language. To select another language and its
corresponding keyboard layout, set the keyboard entry in your sysidcfg file
as in the example provided above.

For further information, see the sysidcfg(4) and sysidtool(1M) man pages.

name_service Keyword

You can use the name_service keyword to configure
the naming service, the domain name, and the name server for the system. The
following sample shows the general syntax for the name_service keyword.

Choose only one value for name_service. Include all
or none of the domain_name, name_server,
or optional keywords, as needed. If no keywords are used, omit the curly braces
{}.

Note –

The name_service option in the sysidcfg file
automatically sets the naming service during installation of the Solaris
OS. This setting overrides SMF services that were previously set up for site.xml. Therefore, you might need to reset your name service
after installation.

The following sections describe the keyword syntax to configure the
system to use a specific naming service.

NIS Syntax for name_service Keyword

Use the following syntax to configure the system to use the NIS naming
service.

Specifies the IP address of the DNS server. You can specify
up to three IP addresses as values for the name_server keyword.

search=domain-name

(Optional) Specifies additional domains to search for naming
service information. You can specify up to six domain names to search. The
total length of each search entry cannot exceed 250 characters.

Example 2–6 Specifying a DNS Server With the name_service Keyword

The following example specifies a DNS server with the domain name west.example.com. The server IP addresses are 10.0.1.10 and 10.0.1.20. example.com and east.example.com are listed as
additional domains to search for naming service information.

To use the DHCP server
to configure a single interface on the system, use the following syntax for
the network_interface keyword.

network_interface=PRIMARY or value
{dhcp protocol_ipv6=yes-or-no}

PRIMARY

Instructs the installation program to configure the first
up, non-loopback interface that is found on the system. The order is the same
as the order that is displayed with the ifconfig command.
If no interfaces are up, then the first non-loopback interface is used. If
no non-loopback interfaces are found, then the system is nonnetworked.

value

Instructs the installation program to configure a specific
interface, such as hme0 or eri1.

protocol_ipv6=yes-or-no

Instructs the installation program to configure the system
to use either IPv6 or to not use IPv6.

For WAN boot installations, you must set the value of protocol_ipv6=no.

Without DHCP – If
you do not want to use DHCP to configure the network interface, you can specify
the configuration information in the sysidcfg file. To
instruct the installation program to configure a single interface on the system
without using DHCP, use the following syntax.

Instructs the installation program to configure the first
up, non-loopback interface that is found on the system. The order is the same
as the order that is displayed with the ifconfig command.
If no interfaces are up, then the first non-loopback interface is used. If
no non-loopback interfaces are found, then the system is not networked.

Note –

Do not use the PRIMARY keyword value if you
want to configure multiple interfaces.

value

Instructs the installation program to configure a specific
interface, such as hme0 or eri1.

hostname=host_name

(Optional) Specifies the host name of the system.

default_route=ip_address or NONE

(Optional) Specifies the IP address of the default router.
If you want the installation program to detect the router by using the ICMP
router discovery protocol, omit this keyword.

Note –

If the installation program cannot detect the router, you are
prompted for the router information during the installation.

ip_address=ip_address

(Optional) Specifies the IP address of the system.

netmask=netmask

(Optional) Specifies the netmask value for the system.

protocol_ipv6=yes_or_no

(Optional) Instructs the installation program to configure
the system to either use IPv6 or to not use IPv6.

Note –

To perform an unattended custom JumpStart installation, you must
specify a value for the protocol_ipv6 keyword.

For
WAN boot installations, you must set the value of protocol_ipv6=no.

Include any combination or none of the hostname, ip_address, and netmask keywords, as needed.
If you do not use any of these keywords, omit the curly braces ({}).

Example 2–8 Configuring a Single Interface By Using
DHCP With the network_interface Keyword

The following example instructs the installation program to use DHCP
to configure the eri0 network interface. IPv6 support is
not enabled.

network_interface=eri0 {dhcp protocol_ipv6=no}

Example 2–9 Configuring a Single Interface By Specifying
Configuration Information With the network_interface Keyword

The following example configures the interface eri0 with
the following settings.

To use the DHCP server
to configure a network interface on the system, use the following syntax for
the network_interface keyword.

network_interface=value {primary
dhcp protocol_ipv6=yes-or-no}

value

Instructs the installation program to configure a specific
interface, such as hme0 or eri1.

primary

(Optional) Specifies value as the
primary interface.

protocol_ipv6=yes-or-no

Instructs the installation program to configure the system
to either use IPv6 or to not use IPv6.

Note –

For WAN boot installations, you must set the value of protocol_ipv6=no.

Without DHCP – If
you do not want to use DHCP to configure the network interface, you can specify
the configuration information in the sysidcfg file. To
instruct the installation program to configure multiple interfaces without
using DHCP, use the following syntax.

nfs4_domain Keyword

To prevent being asked to specify an NFSv4 domain name during installation,
use the nfs4_domain keyword in the sysidcfg file.
This keyword suppresses selection of a domain name during the installation
process. Use the following syntax:

nfs4_domain=dynamic or custom_domain_name

dynamic

This reserved keyword dynamically derives the NFSv4 domain
name, based on naming services configuration. For example:

nfs4_domain=dynamic

This example enables the domain name to be derived by the naming service.

The reserved keyword, dynamic, is not case sensitive.

Note –

By default, NFSv4 uses a domain name that is automatically derived
from the system's naming services. This domain name is sufficient for most
configurations. In a few cases, mount points that cross domain boundaries
can cause files to appear to be owned by “nobody” because no common
domain name exists. To prevent this situation, you can override the default
domain name and select a custom domain name.

custom_domain_name

This value overrides the default domain name.

This value must be a valid custom domain name. A valid domain name is
composed of a combination of alphanumeric characters, dots, underscores, and
dashes only. The first character must be an alphabetical character. For example:

nfs4_domain=example.com

This example sets the value that is used by the nfsmapid daemon
to be example.com. This selection overrides the
default domain name.

Note –

In previous releases, scripts enabled users to
avoid being prompted for the NFSv4 domain name during installation.

For
JumpStart installations in the Solaris 10 OS, you could use the workaround
JumpStart sample script, set_nfs4_domain, to suppress the
NFSv4 prompt during installation. This script is no longer required. Use the sysidcfg keyword, nfs4_domain, instead.

In prior releases, the /etc/.NFS4inst_state.domain file
was created by the sysidnfs4 program. This file would
suppress the prompt for an NFSv4 domain name during installation. This file
is no longer created. Use the sysidcfg keyword, nfs4_domain, instead.

root_password Keyword

You can specify the root password to the system in the sysidcfg file.
To specify the root password, use the root_password keyword
with the following syntax.

root_password=encrypted-password

encrypted-password is the encrypted password
as it appears in the /etc/shadow file.

security_policy Keyword

You can use the security_policy keyword in your sysidcfg file to configure your system to use the Kerberos network
authentication protocol. If you want to configure the system to use Kerberos,
use the following syntax.

FQDN specifies the fully qualified domain
name of the Kerberos default realm, the administration server, or key distribution
center (KDC). You must specify at least one, but no more than three, key distribution
centers.

If you do not want to set the security policy for the system, set security_policy=NONE.

service_profile Keyword

You can use the service_profile keyword to install
a more secure system by restricting network services. This security option
is available only for initial installations. An upgrade maintains
all previously set services.

Use one of the following syntaxes to set this keyword.

service_profile=limited_net

service_profile=open

limited_net specifies that all network services,
except for Secure Shell, are either disabled or constrained to respond to
local requests only. After installation, any individual network service can
be enabled by using the svcadm and svccfg commands.

open specifies that no network service changes are
made during installation.

If the service_profile keyword is not present in
the sysidcfg file, no changes are made to the status
of the network services during installation.

system_locale Keyword

You can use the system_locale keyword to specify
the language in which to display the install program and desktop. Use the
following syntax to specify a locale.

system_locale=locale

locale specifies the language that you want
the system to use to display the installation panels and screens. For a list
of valid locale values, see the /usr/lib/locale directory
or International Language Environments Guide.

terminal Keyword

You can use the terminal keyword to specify the terminal
type for the system. Use the following syntax to specify the terminal type.

terminal=terminal_type

terminal_type specifies the terminal type
for the system. For a list of valid terminal values, see the subdirectories
in the /usr/share/lib/terminfo directory.

timezone Keyword

You can set the time zone for the system with the timezone keyword.
Use the following syntax.

timezone=timezone

In the previous example, timezone specifies
the time zone value for the system. The directories and files in the /usr/share/lib/zoneinfo directory provide the valid time zone values. The timezone value is the name of the path relative to the /usr/share/lib/zoneinfo directory. You can also specify any valid Olson time zone.

Example 2–12 Configuring the System Time Zone With
the timezone Keyword

In the following example, the system time zone is set to mountain standard
time in the United States.

timezone=US/Mountain

The installation program configures the system to use the time zone
information in /usr/share/lib/zoneinfo/US/Mountain.

timeserver Keyword

You can use the timeserver keyword to specify the
system that sets the date and time on the system you want to install.

Choose one of the following methods to set the timeserver keyword.

To configure the system to serve as its own time server, set timeserver=localhost. If you specify localhost as
the time server, the system's time is assumed to be correct.

To specify another system as the time server, specify either
the host name or the IP address of the time server with the timeserver keyword.
Use the following syntax.

timeserver=hostname or ip-address

hostname is the host name of the time server
system. ip-address specifies the IP address of
the time server.