Solaris 10 6/06 Installation Guide: Network-Based Installations

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.

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.


Note –

If you are performing a custom JumpStart installation and you want to use a sysidcfg file on a diskette, you must place the sysidcfg file on the profile diskette. To create a profile diskette, see Creating a Profile Diskette for Standalone Systems in Solaris 10 6/06 Installation Guide: Custom JumpStart and Advanced Installations.


You can place only one sysidcfg file in a directory or on a diskette. If you are creating more than one sysidcfg file, you must place each file in a different directory or on a different diskette.

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:

name_service=NIS {domain_name=marquee.central.example.com
name_server=connor(192.168.112.3)}

Syntax Rule 

Example 

Independent keywords can be listed in any order. 

pointer=MS-S
display=ati {size=15-inch}

Keywords are not case sensitive. 

TIMEZONE=US/Central
terminal=sun-cmd

Enclose all dependent keywords in curly braces ({}) to tie them to their associated independent keyword. 

name_service=NIS 
       {domain_name=marquee.central.example.com
        name_server=connor(192.168.112.3)}

You can optionally enclosed values in single (`) or double quotes (“). 

network_interface='none'

For all keywords except the network_interface keyword, only one instance of a keyword is valid. However, if you specify the keyword more than once, only the first instance of the keyword is used.

name_service=NIS
name_service=DNS

sysidcfg File Keywords

Table 6–2 lists the keywords you can use to configure system information in the sysidcfg file.

Table 6–2 Keywords You Can Use in sysidcfg

Configuration Information 

Keyword 

Name service, domain name, name server 

name_service Keyword

Network interface, host name, Internet Protocol (IP) address, netmask, DHCP, IPv6 

network_interface Keyword

Root password 

root_password Keyword

Security policy 

security_policy Keyword

Language in which to display the install program and desktop 

system_locale Keyword

Terminal type 

terminal Keyword

Time zone 

timezone Keyword

Date and time 

timeserver Keyword

x86: Monitor type 

x86: monitor Keyword

x86: Keyboard language, keyboard layout 

x86: keyboard Keyword

x86: Graphics card, screen size, color depth, display resolution 

x86: display Keyword

x86: Pointing device, number of buttons, IRQ level 

x86: pointer Keyword

The following sections describe the keywords that you can use in the sysidcfg file.

name_service Keyword

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


name_service=name-service {domain_name=domain-name 
                                 name_server=name-server
                                 optional-keyword=value}

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 {}.

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

NIS Syntax for name_service Keyword

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


name_service=NIS {domain_name=domain-name 
                   name_server=hostname(ip-address)}
domain-name

Specifies the domain name

hostname

Specifies the host name of the name server

ip-address

Specifies the IP address of the name server


Example 6–1 Specifying a NIS Server With the name_service Keyword

The following example specifies a NIS server with the domain name west.example.com. The server's host name is timber, and the server IP address is 192.168.2.1.


name_service=NIS {domain_name=west.example.com 
                  name_server=timber(192.168.2.1)}

For more information about the NIS name service, see System Administration Guide: Naming and Directory Services (DNS, NIS, and LDAP).

NIS+ Syntax for name_service Keyword

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


name_service=NIS+ {domain_name=domain-name 
                   name_server=hostname(ip-address)}
domain-name

Specifies the domain name

hostname

Specifies the host name of the name server

ip-address

Specifies the IP address of the name server


Example 6–2 Specifying a NIS+ Server With the name_service Keyword

The following example specifies a NIS+ server with the domain name west.example.com. The server's host name is timber, and the server IP address is 192.168.2.1.


name_service=NIS+ {domain_name=west.example.com 
                   name_server=timber(192.168.2.1)}

For more information about the NIS+ name service, see System Administration Guide: Naming and Directory Services (NIS+).

DNS Syntax for name_service Keyword

Use the following syntax to configure the system to use DNS.


name_service=DNS {domain_name=domain-name 
                  name_server=ip-address,ip-address,ip-address
                  search=domain-name,domain-name,domain-name,
                  domain-name,domain-name,domain-name} 
domain_name=domain-name

Specifies the domain name.

name_server=ip-address

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 name service information. You can specify up to six domain names to search. The total length of each search entry cannot exceed 250 characters.


Example 6–3 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 name service information.


name_service=DNS {domain_name=west.example.com 
                  name_server=10.0.1.10,10.0.1.20 
                  search=example.com,east.example.com}

For more information about the DNS name service, see System Administration Guide: Naming and Directory Services (DNS, NIS, and LDAP).

LDAP Syntax for name_service Keyword

Use the following syntax to configure the system to use LDAP.


name_service=LDAP {domain_name=domain_name
                   profile=profile_name profile_server=ip_address 
                   proxy_dn="proxy_bind_dn" proxy_password=password}
domain_name

Specifies the domain name of the LDAP server.

profile_name

Specifies the name of the LDAP profile you want to use to configure the system.

ip_address

Specifies the IP address of the LDAP profile server.

proxy_bind_dn

(Optional) Specifies the proxy bind distinguished name. You must enclose the proxy_bind_dn value in double quotes.

password

(Optional) Specifies the client proxy password.


Example 6–4 Specifying an LDAP Server With the name_service Keyword

The following example specifies an LDAP server with the following configuration information.


name_service=LDAP {domain_name=west.example.com 
                   profile=default 
                   profile_server=172.31.2.1 
                   proxy_dn="cn=proxyagent,ou=profile,
                   dc=west,dc=example,dc=com" 
                   proxy_password=password}

For more information about how to use LDAP, see System Administration Guide: Naming and Directory Services (DNS, NIS, and LDAP).

network_interface Keyword

Use the network_interface keyword to perform the following tasks.

The following sections describe how to use the network_interface keyword to configure the system interfaces.

Syntax for Nonnetworked Systems

To turn off networking for the system, set the network_interface value to none. For example:


network_interface=none

Syntax for Configuring a Single Interface

You can use the network_interface keyword to configure a single interface in the following ways.


Example 6–5 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 6–6 Configuring a Single Interface By Specifying Configuration Information With the network_interface Keyword

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


network_interface=eri0 {hostname=host1 ip_address=172.31.88.100
                        netmask=255.255.255.0 protocol_ipv6=no}

Syntax for Configuring Multiple Interfaces

You can configure multiple network interfaces in your sysidcfg file. For each interface that you want to configure, include a network_interface entry in the sysidcfg file.

You can use the network_interface keyword to configure multiple interfaces in the following ways.

In the same sysidcfg file, you can use DHCP to configure certain interfaces, while also specifying the configuration information for other interfaces in the sysidcfg file.


Example 6–7 Configuring Multiple Interfaces With the network_interface Keyword

In the following example, the network interfaces eri0 and eri1 are configured in the following way.


network_interface=eri0 {dhcp protocol_ipv6=no}
network_interface=eri1 {primary hostname=host1 
                        ip_address=172.146.88.100
                        netmask=255.255.255.0 
                        protocol_ipv6=no}

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.


security_policy=kerberos {default_realm=FQDN 
                          admin_server=FQDN kdc=FQDN1, FQDN2, FQDN3}

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.

For more information about the Kerberos network authentication protocol, see System Administration Guide: Security Services.


Example 6–8 Configuring the System to Use Kerberos With the security_policy Keyword

The following example configures the system to use Kerberos with the following information.


security_policy=kerberos 
                {default_realm=example.COM 
                 admin_server=krbadmin.example.COM 
                 kdc=kdc1.example.COM, 
                 kdc2.example.COM}

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 6–9 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.


Note –

Do not set timeserver=hostname or ip-address if you are running a name service.


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

x86: monitor Keyword

For x86 based systems, you can configure the monitor information with the monitor keyword. Use the following syntax with the monitor keyword.


monitor=monitor_type

To set the value for the monitor keyword, run the kdmconfig -d command on the system you want to install. Copy the line of output that includes the monitor keyword, and include this line in the sysidcfg file.

For more information, see the kdmconfig(1M)

x86: keyboard Keyword

For x86 based systems, you can configure the keyboard language and layout information with the keyboard keyword. Use the following syntax with the keyboard keyword.


keyboard=keyboard_language {layout=value}

To set the value for the keyboard keyword, run the kdmconfig -d command on the system you want to install. Copy the line of output that includes the keyboard keyword, and include this line in the sysidcfg file.

For more information, see the kdmconfig(1M)

x86: display Keyword

For x86 based systems, you can configure the following information with the display keyword.

Use the following syntax with the display keyword.


display=graphics_card {size=screen_size 
                     depth=color_depth 
                     resolution=screen_resolution}

To set the appropriate values for the display keyword, run the kdmconfig -d command on the system you want to install. Copy the line of output that includes the display keyword, and include this line in the sysidcfg file.

For more information, see the kdmconfig(1M)

x86: pointer Keyword

For x86 based systems, you can configure the following mouse information with the pointer keyword.

Use the following syntax with the pointer keyword.


pointer=pointing_device {nbuttons=number_buttons irq=value}

To set the value for the pointer keyword, run the kdmconfig -d command on the system you want to install. Copy the line of output that includes the pointer keyword, and include this line in the sysidcfg file.

For more information, see the kdmconfig(1M)

ProcedureTo Create a sysidcfg Configuration File

Steps
  1. Create a file called sysidcfg in a text editor.

  2. Type the sysidcfg keywords you want.

  3. Save the sysidcfg file.


    Note –

    If you create more than one sysidcfg file, you must save each file in a separate directory or on a separate diskette.


  4. Make the sysidcfg file available to clients through the following:

    • A shared NFS file system. Use add_install_client(1M) with the -p option to set up the system to install from the network.

    • The root (/) directory on a UFS diskette or PCFS diskette.


Example 6–10 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 has been preconfigured by editing the name 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.

system_locale=en_US
timezone=US/Central
terminal=sun-cmd
timeserver=localhost
name_service=NIS {domain_name=marquee.central.example.com
                  name_server=nmsvr2(172.31.112.3)}
root_password=m4QPOWNY
network_interface=hme0 {hostname=host1 
                       default_route=172.31.88.1 
                       ip_address=172.31.88.210 
                       netmask=255.255.0.0 
                       protocol_ipv6=no}
security_policy=kerberos {default_realm=example.COM 
                          admin_server=krbadmin.example.COM 
                          kdc=kdc1.example.COM, 
                          kdc2.example.COM}


Example 6–11 x86: sysidcfg File

The following sample sysidcfg file is for a group of x86 based systems that all use the same type of keyboard, graphics cards, and pointing devices. The device information (keyboard, display, and pointer) was obtained by running the kdmconfig(1M) command with the -d option. If the following example sysidcfg file is used, a prompt that asks you to select a language (system_locale) is displayed before installation can proceed.

keyboard=ATKBD {layout=US-English}
display=ati {size=15-inch}
pointer=MS-S
timezone=US/Central
timeserver=timehost1
terminal=ibm-pc
name_service=NIS {domain_name=marquee.central.example.com
                  name_server=nmsvr2(172.25.112.3)}
root_password=URFUni9


Example 6–12 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.

timezone=US/Pacific
system_locale=C
terminal=xterms
timeserver=localhost
network_interface=eri0 {primary
                        hostname=host1
                        ip_address=192.168.2.7
                        netmask=255.255.255.0
                        protocol_ipv6=no
                        default_route=192.168.2.1}

network_interface=eri1 {hostname=host1-b
                        ip_address=192.168.3.8
                        netmask=255.255.255.0
                        protocol_ipv6=no
                        default_route=NONE}
root_password=JE2C35JGZi4B2
security_policy=none
name_service=NIS {domain_name=domain.example.com
                  name_server=nis-server(192.168.2.200)}

Continuing the Installation

If you plan to use the sysidcfg file in an installation over the network, you need to set up an installation server and add the system as an installation client. For more information, see Chapter 7, Preparing to Install From the Network (Overview).

If you plan to use the sysidcfg file in a WAN boot installation, you need to perform additional tasks. For more information, see Chapter 11, WAN Boot (Overview).

If you plan to use the sysidcfg file in a custom JumpStart installation, you need to create a profile and a rules.ok file. For more information, see Chapter 5, Custom JumpStart (Overview), in Solaris 10 6/06 Installation Guide: Custom JumpStart and Advanced Installations.

See Also

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