Purpose
Defines Network Installation Management
(NIM) secondary adapter definitions from a stanza file.
Description
The
nimadapters command
parses a secondary adapters stanza file to build the files required
to add NIM secondary adapter definitions to the NIM environment as
part of an
adapter_def resource. The
nimadapters command
does not configure secondary adapters. The actual configuration takes
place during a
nim -o bos_inst or
nim
-o cust operation that references the
adapter_def resource.
Secondary Adapters File Rules
The
format of the secondary adapters file must comply with the following
rules:
- After the stanza header, follow attribute lines of the form: Attribute
= Value
- If you define the value of an attribute multiple times within
the same stanza, only the last definition is used.
- If you use an invalid attribute keyword, that attribute definition
is ignored.
- Each line of the file can have only one header or attribute definition.
- More than one stanza can exist in a definition file for each machine
host name.
- Each stanza for a machine host name represents a secondary adapter
definition on that NIM client. No two secondary adapter definitions
for the same machine host name can have the same location or interface_name.
There should be only one definition per adapter or interface on a
given NIM client.
- If the stanza header entry is the keyword default, this specifies
to use that stanza for the purpose of defining default values.
- You can specify a default value for any secondary adapter attribute.
However, the netaddr and secondary_hostname attribute must be unique.
Also, the location and interface_name must be unique on a NIM client.
- If you do not specify an attribute for a secondary adapter but
define a default value, the default value is used.
- You can specify and change default values at any location in the
definition file. After a default value is set, it applies to all definitions
following it.
- To turn off a default value for all following machine definitions,
set the attribute value to nothing in a default stanza.
- To turn off a default value for a single machine definition, set
the attribute value to nothing in the machine stanza.
- You can include comments in a client definition file. Comments
begin with the # character.
- Tab characters and spaces are ignored when parsing the definition
file for header and attribute keywords and values.
Note: During a nim -o bos_inst or nim
-o cust operation, if NIM examines the configuration
data on the client and determines that a secondary adapter is already
configured with precisely the attributes requested in the adapter_def resource,
this secondary adapter is not reconfigured.
Secondary Adapter File Keywords
The
secondary adapter file uses the following keywords to specify machine
attributes:
Required Attributes
- machine_type = secondary | etherchannel | install
- Specifying the machine_type attribute as secondary clearly distinguishes
the nimadapters input from nimdef input. If a secondary adapters file
is mistakenly passed to the nimdef command,
the error can be easily detected. Stanzas with a machine_type of install will
be ignored.
- netaddr
- Specifies the network address for the secondary adapter.
- network_type = en | et | sn | ml | vi
- Specifies the type of network interface, which can be one of en,
et, sn, ml, or vi. This attribute replaces the deprecated network_type
attribute.
- subnet_mask
- Specifies the subnet mask used by the secondary adapter.
Optional Attributes
- adapter_attributes
- Blank-separated list of physical adapter attributes and values
(for example, "Attribute1=Value1 Attribute2=Value2"). To see the
list of attributes that can be set for the requested physical adapter,
run the command lsattr -E -l AdapterName.
- interface_attributes
- Blank-separated list of interface attributes and values (for example,
"Attribute1=Value1 Attribute2=Value2"). To see the list of attributes
that can be set for the requested interface, run the command lsattr
-E -l InterfaceName.
This attribute replaces the attributes attribute.
- cable_type
- Specifies the cable type (optional if network_type is en or et).
- comments
- Specifies a comment to include in the secondary adapter definition.
Enclose the comment string in double quotes (").
- interface_name
- Specifies the name of the network interface for the secondary
adapter (for example, en1, sn0, ml0). Do not specify both location
and interface_name.
Note: The interface_name must be consistent with
the interface_type.
- location
- Specifies the physical location of the adapter corresponding to
this network interface. Do not specify both location and interface_name.
Note: Except
for the multilink pseudo-device, use of the location is highly recommended.
If the location is not specified and the user adds multiple adapters
or adds an adapter at the same time that the operating system is reinstalled,
the adapter and network interface names might be reassigned by the
operating system in unexpected ways.
- multiple_physloc
- This attribute can be used with etherchannel or VIPA stanzas to
specify the physical adapters to associate with the interface.
- media_speed
- Specifies the media speed (optional if network_type is en or et).
- secondary_hostname
- Host name to save in the /etc/hosts file
with the netaddr attribute. This host name will not be set using the hostname command
or uname -S command.
- bos_preconfig
- Specifies that the tunchange command is to change the value
of tuning parameters. With the bos_preconfig attribute, you
can change tunable parameters that have been set by the /usr/lpp/bos.sysmgt/nim/methods/c_cfgadptrs script
with default values. The bos_preconfig attribute is used for
the nim -o bos_inst command. For more information about the
valid stanza and the respected stanza commands for tunable values,
see the tunchange command.
The
format for the
bos_preconfig attribute is as follows:
bos_preconfig="tunchange -f nextboot -t Stanza [ -o tunable=value ... ]"
Requirement: You must restart the system in
order for any new setting you made using the bos_preconfig attribute
to take effect.
- cust_preconfig
- Specifies that the vmo command is to change the value of
tuning parameters. With the cust_preconfig attribute, you can
change tunable parameters that have been set by the /usr/lpp/bos.sysmgt/nim/methods/c_cfgadptrs script
with default values. The cust_preconfig attribute is used for
the nim -o cust command. For more information about valid tunable
parameters, see the vmo command.
The
format for the
cust_preconfig attribute is as follows:
cust_preconfig="vmo -r [ -o tunable=value ... ]"
Note: You
must restart the system to use the cust_preconfig attribute
to set tunable parameters.
- route
- Specifies the route value to be added into network routing tables.
You must specify the following values, or leave a blank space for
any value that you do not want to specify:
- Destination IP
- The host or network for directing the route to. Specify the value
as a numeric address.
- Destination subnet mask
- The mask for determining which network the destination IP belongs
to. Specify the value as a numeric address.
- Gateway IP
- The network to which the packets are sent. Specify the value as
a numeric address.
Each value must be separated by a double colon (::),
and each additional set of the three values must be separated by a
comma (,). The format for the route attribute is as follows: route="DestHostA::MaskHostA::GatewayHostA, DestHostB::MaskHostB::GatewayHostB, ..."
For
values that do not apply, you can leave it as blank but they still
must be separated by a double colon as in the following example: route="1.2.3.4::::5.6.7.8"
When
you add the route attribute, using the nimadapters command
with the -a info flag, you must separate the value for route
with a double colon, and you must separate each additional set of
three values with a space.
Secondary Adapter File Stanza
Errors
A secondary adapter stanza causes an error under
any of the following conditions:
- The host name that was used in the stanza header for the definition
cannot be resolved.
- A required attribute is missing.
- An invalid value was specified for an attribute.
- An attribute mismatch occurs. For example, if the interface_type
is not en or et, you cannot specify cable_type=bnc or media_speed=1000_Full_Duplex.
- The stanza contains both a location attribute and an interface_name
attribute.
- Secondary adapter definitions occur multiple times for the same
adapter location and the same host name.
- Secondary adapter definitions occur multiple times for the same
interface_name and the same host name.
If a secondary adapter stanza is incorrect, the errors
are reported, the stanza is ignored, and the following input is processed
without regard to the incorrect stanza.
Example
Secondary Adapter File
The following is an example of how
a secondary adapter file can look:
# Set default values.
default:
machine_type = secondary
subnet_mask = 255.255.240.0
network_type = en
media_speed = 100_Full_Duplex
# Define the machine "lab1"
# Take all defaults and specify 2 additional attributes.
# Unlike the case of the client definitions that are input to the
# nimdef command, the secondary adapter definition includes at least
# one required field that cannot be defaulted.
lab1:
netaddr = 9.53.153.233
location = P2-I1/E1
# Change the default "media_speed" attribute.
default:
media_speed = 100_Half_Duplex
# define the machine "test1"
# Take all defaults and include a comment.
test1:
comments = "This machine is a test machine."
# define a machine with a VIPA interface that uses interfaces en2 and en3.
lab2:
machine_type = secondary
interface_type = vi
interface_name = vi0
netaddr = 9.53.153.235
subnet_mask = 255.255.255.0
secondary_hostname = lab3
interface_attributes = "interface_names=en2,en3"
# define a machine with an etherchannel adapter that uses the adapters at
# the following location codes P1-I4/E1 and P1/E1
lab4:
machine_type = etherchannel
interface_type = en
interface_name = en2
netaddr = 9.53.153.237
subnet_mask = 255.255.255.0
multiple_physloc = P1-I4/E1,P1/E1
# define a machine with an etherchannel adapter that uses the
# ent2 and ent3 adapters and uses mode 8023ad.
lab6:
machine_type = etherchannel
interface_type = en
interface_name = en2
netaddr = 9.53.153.239
subnet_mask = 255.255.255.0
adapter_attributes = "adapter_names=ent2,ent3 mode=8023ad"
Flags
Item |
Description |
-a |
Assigns the following attribute=value pairs: - client=nim_client_name
- Specifies the NIM client that will have a secondary adapter definition
added or removed. This option allows you to define one secondary
adapter for a client. To define multiple secondary adapters, use
a stanza file.
- info=AttributeList
- When previewing or defining a secondary adapter, the info attribute
must be used when the client attribute is specified. AttributeList is
a list of attributes separated by commas. The attributes must be
specified in the following order:interface_type,location,interface_name,cable_type,media_speed,netaddr,subnet_mask,
interface_attributes, secondary_hostname, machine_type, adapter_attributes,
multiple_physloc,bos_preconfig, cust_preconfig, route.Use lowercase n/a to
specify that a value will not be used.
|
-d |
Defines secondary adapters. A Client.adapter file
is created in the adapter_def location for
each valid secondary adapter definition. If the nimadapters command
encounters existing secondary adapter definitions for a NIM client,
the existing definitions are replaced. |
-f |
SecondaryAdapterFileName Specifies
the name of the secondary adapter file. |
-p |
Displays a preview operation to identify any
errors. This flag processes the secondary adapter file or info attribute
but does not add adapter definitions to the NIM environment. The
preview shows the following:
|
-r |
Removes the secondary adapter definitions of
a specific client or all the clients listed in a secondary adapter
stanza file. If the client attribute or secondary adapter stanza
file are not specified, then all the secondary adapter definitions
in the adapter_def resource will be removed. |
Parameters
Item |
Description |
adapter_def |
This parameter is required to run the nimadapters command.
Specifies the adapter_def NIM resource that
is the directory containing secondary adapter definition files.
An adapter_def resource must be defined
using the nim -o define operation before
the adapter_def can be used with the nimadapters command. |
Exit Status
- 0
- The command completed successfully.
- >0
- An error occurred.
Security
Access Control: You
must have root authority to run the nimadapters command.
Attention
RBAC users and Trusted AIX users:
This command can perform privileged operations. Only privileged users
can run privileged operations. For more information about authorizations
and privileges, see Privileged Command Database in Security.
For a list of privileges and the authorizations associated with this
command, see the lssecattr command or the getcmdattr subcommand.
Examples
- To add the NIM secondary adapters described in the secondary adapters
definition file secondary_adapters.defs to the my_adapter_def resource,
type:
nimadapters -d -f secondary_adapters.defs my_adapter_def
- To preview the client definition file secondary_adapters.defs,
type:
nimadapters -p -f secondary_adapters.defs my_adapter_def
- To define a NIM secondary adapter for a client called pilsner,
type:
nimadapters -d \
-a info="en,P2-I1/E1,n/a,bnc,1000_Full_Duplex,9.53.153.233,255.255.254.0,n/a,n/a,n/a,n/a,n/a" \
-a client=pilsner my_adapter_def
- To remove the NIM secondary adapter definitions for a client called
pilsner from the my_adapter_def resource, type:
nimadapters -r -a client=pilsner my_adapter_def
- To remove the NIM secondary adapter definitions for clients defined
in the file secondary_adapters.defs, type:
nimadapters -r -f secondary_adapters.defs my_adapter_def
- To remove all the NIM secondary adapter definitions from the my_adapter_def
resource, type:
nimadapters -r my_adapter_def
Files
Item |
Description |
/usr/sbin/nimadapters |
Contains the nimadapters command. |