NIM From Linux Machine - Is it real?

Thread Tools Search this Thread
Operating Systems AIX NIM From Linux Machine - Is it real?
# 1  
Old 10-25-2007
NIM From Linux Machine - Is it real?

My name is Daniel, and I have a "hard" question.

I have 8 pSeries old servers, that I need to install from scratch every month - The OS version is AIX 5L 5.2

I have mksysb images of this computers (same image to all - same hardware), and I know that I can use NIM for this kind of task.

I never installed NIM, and it sound really hard, let me now, is there any way to install the NIM server on Linux machine? Google, and link in IBM said yes, but I didn't understand all the "photo"...

The Linux server, must be IBM server?

Any help / manuals / clues will be helpfull!


# 2  
Old 10-26-2007
There is a product named NIMOL (NIM On Linux). I have a copy on a SUSE10 platform and have attempting to get it working for months. There are no manuals as such and very little technical help on the WEB. I have setup NIM installations on RS6000 systems with very little trouble but NIMOL is a different matter. Also the only place I found a copy was on disk 1 of the AIX 5.3 installation set.

You will need a lpp_source and spot resource before you can start to even think of setting it up.
# 3  
Old 10-26-2007
Install AIX from a Linux Server Using NIM on Linux
Network Installation Management (NIM) on Linux (NIMOL) provides basic AIX software administration services from a Linux server. The NIMOL RPM included in the AIX product media provides basic NIM functionality for a Linux server. While using a pSeries NIM Server for AIX client management provides more functionality, NIMOL provides the following functions on Linux servers:

Configuring services required to install AIX with NIM
Performing a network installation of AIX
Installing software updates on an AIX system
Listing software installed on an AIX system
Creating a backup of an AIX system that NIMOL can use to install other systems with NIM
NIMOL is supported on SUSE LINUX 9.0 and Redhat 9.0. Read the NIMOL readme file in the /usr/share/doc/nimol directory for information on updates.

NIMOL supports AIX 5L Version 5.2 with the 5200-04 Recommended Maintenance package and later.
The following commands are shipped with the NIMOL RPM:

Configures a Linux server to install AIX with NIM
Sets up a client for AIX installation
Lists software installed on an AIX client
Installs software updates onto an AIX client
Creates an installable backup of an AIX client
These commands are available on the Linux server. For additional information on these commands, run the man command on the Linux server with the name of the specific NIMOL command.
Configuring the Linux Server
To configure the Linux server, complete the following:

Insert the AIX product CD that contains the NIMOL RPM into the Linux server.
Install the followingRPMs, which are requisite for SUSE LINUX 9.0 and RedHat 9.0:
The following RPMs are additional requisites for Redhat 9.0 only:
Insert the AIX product CD Volume 1 into the Linux server.
Install the NIMOL RPM by running the following commands:
mount /dev/cdrom
rpm -ivh /mnt/cdrom/RPMS/linux/nimol*
Run the following command to configure the Linux server:
nimol_config -C
The nimol_config command configures the basic services required to install AIX on clients with NIM, such as bootp, tftp, nfs, and syslog. The command uses the dhcp server to respond to client bootp requests.

You should not manually modify the /etc/dhcpd.conf file because the modifications might interfere with the ability of NIMOL to add and remove subnet and host entries.

Creating AIX Installation Resources
To create AIX installation resources, you need access to an existing AIX client.

Ensure that your NIMOL Linux Server has rhost permissions to the AIX client by editing the /.rhosts file on the AIX client.
Run the nimol_backup command on the Linux Server. For example, if the client is named and you want to name the installation resources aix530, then run the following command:
nimol_backup -c -L aix530
The nimol_backup command will create a mksysb backup of the client, as well as the other resources required to perform a network boot in the /export/aix/aix530 directory.
Alternately, you can use the nimol_config command to define existing AIX installation resources that reside on your NIMOL Server. For example, if you have existing AIX installation resources located in /export/aix/aix530, run the following command to define the resources for use with NIMOL:

nimol_config -t /export/aix -L aix530
Setting up a NIMOL Client
You can set up a client for the installation of AIX with NIM by running the nimol_install command. Before you run the nimol_install command, you will need the following information for the client:

MAC address
Subnet mask
The following examples show how to obtain your MAC address.

To obtain the MAC address for the ent0 network adapter on a running client, run the following command:

lscfg -vl ent0
To obtain the MAC address on an IBM eServer pSeries 690 client that is not running, complete the following:

Power on the system.
Press F1 when the keyboard icon is displayed to access the SMS menus.
Select Boot Options.
Select Install or Boot a Device.
Select Network This menu refers to your network card (for example, ethernet).
Select Information. This screen will contain the MAC address.
When specifying the MAC address to nimol_install, colons are required.

For example, to set up a client with a client1 hostname, subnet mask, gateway, and 00:60:08:3F:E8SmilieF MAC address with the "aix530" installation resources, run the following command:

nimol_install -c client1 -g -m 00:60:08:3F:E8SmilieF -s -L aix530
After you run nimol_install, you can specify a network boot using the bootlist command on a running AIX system. For example, if the client installs AIX from the ent0 adapter with a client IP address, and the NIMOL server has a IP address and is on the same subnet as the client, complete the following:

Run the bootlist command as follows:
bootlist -m normal ent0 bserver= gateway= client=
Run the following command to begin the installation:
shutdown -Fr
If the client is not running, power on the system and enter the system management services (SMS) menus by pressing F1 when the keyboard icon is displayed. You can then specify the network boot parameters and select the network device as the boot device.
The syslog daemon is configured to receive remote status by default. This setting allows you to monitor the installation by viewing the /var/log/nimol.log file on the NIMOL server.

After the installation is complete, you can remove the setup for the client named client2 by running the following command:

nimol_install -c client1 -r
Maintaining the NIMOL Client
You can use the following commands to maintain the NIMOL client:

The default option for the nimol_install command is intended for use on the client machine where you installed AIX. If you specify the -n option with the nimol_install command when you install AIX on the client machine, these commands will not be available.
The following scenarios are tasks involved in maintaining the NIMOL client:

To list the software that is installed on client1, run the following command:
nimol_lslpp -c client1 -f "-L"
To install the perl.rte software package from the aix530 installation resources, run the following command:
nimol_update -c client1 -L aix530 -p "perl.rte"
To install additional software, copy the installp images into the lpp_source/installp/ppc sub-directory of the installation resources directory. For example, if your installation resources are located in the /export/aix/aix530 directory, you will need to copy the installp images into the /export/aix/aix530/lpp_source/installp/ppc directory. You also must copy the .toc file because Linux machines cannot create this file.
To use a different remote access other than rhost permissions, you can specify the -m option with the nimol_update command, the nimol_lslpp command, or the nimol_backup command. The alternative remote access must be configured prior to using it with the NIMOL commands, and the remote access method cannot prompt for a password. For example, the following command will use the /usr/bin/ssh directory to remotely access the client1 during a software listing:
nimol_lslpp -c client1 -f "-L" -m /usr/bin/ssh
Unconfiguring the NIMOL Server
To unconfigure the NIMOL server, complete the following:

Determine if clients are set up to install by running the following command:
nimol_install -l
Remove any clients that are listed as set to install by running the following command:
nimol_install -r -c client
Remove the AIX installation resource labels that you created by running the following command:
nimol_config -r -L aix530
Removing these labels removes all resources from the NIMOL server. You can define them again if you decide to configure the NIMOL server in the future.
Unconfigure NIMOL by running the following command:
nimol_config -U
This command restores services to the state they were before you configured NIMOL. For example, if you had the nfs service and the tftp service turned off prior to configuring NIMOL, then they are turned off again.
Remove the NIMOL RPM by running the following command:
rpm -e nimol
# 4  
Old 10-26-2007
NIM explained

I have no idea how to set up a NIM server on a Linux machine, but i can give you some directions about NIM concepts in general. It is not much work, in fact it is really easy.

General information

NIM is a system to systematically install, update and maintain AIX machines (NIM clients) from one specialized system (the NIM server). One can use the system do maintain diskless workstations or dataless workstations too, but (to my knowledge) this is rarely used. The vast majority of NIM servers is used to install machines - "standalone clients" in NIMs wording - and i will concentrate on this aspect.

There are three basic types of resources a NIM server can employ to install clients: mksysbs, SPOTs and LPP-sources. There are some other resources of minor importance which you will probably not have to deal with.

MKSYSB is an installable and bootable image of the rootvg of a machine. since the rootvg contains all the really important filesystems (/, /usr, /etc, and so on) it is easy to use this as a means of installing machines. MKSYSBs are used in two ways usually: you can create and maintain a very simple, very basic MKSYSB and use that as the basis for every installation. You would install this mksysb which woulkd contain only the absolute minimum and then add software until the desired configuration is reached. The second way to use MKSYSBs is to create one from a running machine as a means to take a "configuration snapshot", complete with all the configured users, filesystems, printqueues, etc.. If the hardware breaks you could use this image to restore the machine quickly.

The next resource is a LPPSOURCE. This is just a bunch of installable packages in a directory with a name to go by. NIM will provide ways to find out which packages are in it, replace selected packages, etc. But in fact this is just a collection of installp-packages and a name to handle the collection as a whole.

The third resource is the SPOT (Shared Product Object Tree). You can create a SPOT from an lpp_source by "installing" into it. Think of it as a shareable /usr-filesystem. During a nim-installation the system would (nfs-)mount such a SPOT and use it and its executables to install to its local disk - say, by restoring a mksysb image, installing some packages from a lpp_source, etc. It is the NIM-equivalent of the initial RAMdisk-system a linux system comes up with after booting from a CD.

How to set up a basic nim-server

First install the nim.server-package onto the machine and configure it. This can be done using some SMITTY panels and the panels are pretty self-explanatory. This part is really easy. You have to provide a "root" directory where the nim-resources will reside later. For this you will need lots - really lots - of space. Start with a minimum of 50-100G for testing purposes but be prepared to increase this as soon as you start using the system regularly. Note too, that a nim server always has to be at least at the same OS level (including maintenance levels, technical levels, etc.) as the clients it is serving. If you want to server 5.2 clients have the nim server at least at the same level, better at 5.3, latest ML.

The next part is to create a lpp-source. Again use the SMIT panels, use "smitty nim" to get into smittys main nim menu, "perform NIM Administration Tasks"/"Manage Resources"/"Define a Resource" - select "lpp_source" from the menu and follow the directions. Do yourself a favor and copy the installation media somewhere prior to this and tell the machine where to find it - otherwise you will now have to feed it the disks for a few hours.

It is a good idea to not delete the copies of the installation media, but save them in case you need to update the lpp_source later. Since you may have to maintain several revision levels in parallel do NOT just update what you have, instead create a new copy and update *this*. (By now you will probably understand why you need so much space. ;-)) )

After creating the lpp_source (it takes some time) you are ready to create a SPOT from it. This means basically to do an installation on a pseudo-machine which consists only of a /usr-filesystem. Again go to the SMIT menu "define a resource" and select "spot", then follow the directions using the newly created lpp_source as "source of install images". This will take a few hours. It is a good idea to update the created spot several times using this lpp_source, as some dependencies are (rarely, but why take the risk) solved only after several tries. after every run look if there has something been changed in the spot, if nothing changes any more you are finished.

It is also a good idea to create some strict naming convention for the resources. I usually inlude the type of resource and the exact software level, like:

lpp_source: lpp_AIX53_ML03
spot: spot_AIX53_ML03
mksysb: mks_AIX53_ML03

There no better or worse solution to that, just be consistent with yourself.

After having a lpp_source and a spot (there are some other resources like boot code for IPL ROMs, etc. which are created automatically in this process) you are ready to start a test installation. You will need a scratch machine for that.

Start by writing down the MAC adress of the interface you will use to install over later. This information is needed on the nim server. Now define a new client ("Manage machines"/"Define a machine" and follow the directions) and fill out the form coming up. "Network Adapter Hardware Adress" is where you put in the MAC adress.

After having defined the client use lsnim to see an overview of your defined resources so far, lsnim -l to get detail information about each resource. You are now ready to do your first installation.

Use the SMIT menu "Perform NIM Administration Tasks"/"Manage Machines"/Managae Network Install Resource Allocation" to allocate the SPOT and the lpp_source to your machine. Note that this is only valid for ONE TRY. You will have to allocate these resources again for the next installation. This way you have complete control over what happens with the resources you provide with your NIM master.

Note: If resource confilicts happen (yes, this is a somewhat unreliable part of NIM, the deallocation of resources is not always handled properly) use "Deallocate Network Install Resources with the "Force" option, this usually cleans things up. For the deallocation ALWAYS use the "force" option.

Upon the allocation nim will itself make all the necessary entries in /etc/exports to nfs-export the allocated resources to the machine. Strange effects happen if you export these directories (or super-directories of it) yourself. If you experience problems there check /etc/exports, correct it if necessary (remove your entries) and run "exportfs -va" to use the new configuration.

Boot your client now to the POST-menu, enter the ip-adress of the nim-server as a server holding the boot image and the machine should start to install. First the initial kernel is loaded via tftp (you will have to provide some filespace for /tftpboot on the NIM master), then the SPOT and lpp_source are used to install the machine.

After this and WITHOUT doing any configuration work on the machine use "Define a Resource" on the master to create a new resource of type mksysb and use the newly installed machine to create it. This way you will have to missing mksysb as a starting image (therefore: no configuration, unless you want it to be on every machine you will install in the future). You can use that to install other machines from this mksysb.

You can of course create other mksysbs (SPOTs, lpp_sources, ...) to fine-tune your installation process, but with the thing described here you will be initially up and running.

These 2 Users Gave Thanks to bakunin For This Post:
# 5  
Old 10-26-2007
W-o-w! :-)

Man, I Thank you very much! What an answer! The best ever!

I'm a RHCE (Red Hat Certified Engineer), and still, it's sounds a little bit "Hard-task-to-do".

Thank you for you really really great answer! You are a great man!
I will try it soon!

Thanks again my friend,

# 6  
Old 12-28-2007
Did you ever get NIMOL working?

I have been trying for a couple of months to get NIMOL working, no luck. Saw your post and was wondering if you did?

# 7  
Old 01-07-2008
Also see the link below

I have a thread open at

Building a 43p using BOOTP
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. AIX

Problem in communication nim client with nim master

Hello, I have an AIX6.1 machine which is a nim client to my nim master which is also AIX6.1 machine. I had some problem to perform an installation on my client using smit nim . i removed /etc/niminfo file in order to do the initialization again but when i run the command niminit -a name=client... (0 Replies)
Discussion started by: omonoiatis9
0 Replies

2. UNIX for Advanced & Expert Users

Real Time processes in Linux

I was trying to experiment with SCHED_RR and SCHED_FIFO. I tried benchmarking the SCHED_NORMAL with these two real time priorities. What I found is strange result. SHED_RR was the slowest then comes SCHED_FIFO and SCHED_NORMAL was the fastest one. All tests are run in same situation and... (3 Replies)
Discussion started by: kumaran_5555
3 Replies

3. AIX

find nim server of a machine

Hi, i would like to know how can i find , in a client machine , the nim server. the nim server that this machine have , if the machine have it Thanks :confused: (1 Reply)
Discussion started by: prpkrk
1 Replies

4. Shell Programming and Scripting

shell script to copy files frm a linux machine to a windows machine using SCP

I need a shell script to copy files frm a linux machine to a windows machine using SCP. The files keeps changing day-to-day. I have to copy the latest file to the windows machine frm the linux machine. for example :In Linux, On July 20, the file name will be 20.txt and it should be copied to... (3 Replies)
Discussion started by: nithin6034
3 Replies

5. AIX


Hi Guys, Its me back with a new query. I got a P 595 without a CDROM, I have to do all the installation via NIM only.. I already got 2 LPAR's up and running. Now that I have request to install Linux in one LPAR.:confused: Can you help me how I can do it using NIM / via Kick start or... (2 Replies)
Discussion started by: kkeng808
2 Replies

6. AIX

Back up a client NIM from nim master

Hello everyone Im trying to backup a nim client from nim master but I got this message COMMAND STATUS Command: failed stdout: yes stderr: no Before command completion, additional instructions may appear below. 0042-001 nim:... (2 Replies)
Discussion started by: lo-lp-kl
2 Replies

7. Shell Programming and Scripting

SSH into a linux machine from a windows machine

I basically want to login into different linux machines( on the same network) from a windows machine. I know i can use ssh <machine name>. But i want to automate this process. I dont want to enter the username and password. Is there any way to do it. Can i make some sort of a batch script for it. (4 Replies)
Discussion started by: lassimanji
4 Replies

8. AIX

How to backup and restore Linux uisng NIM.

Hi Friends, I've a hard question to ask. I have a NIM server running on AIX 5.3. Now my requirement is that , " From This NIM Server i would like to take the Image of Linux servers ". I mean that using NIM server i should be able to backup / restore the linux Servers. In Simple terms... (3 Replies)
Discussion started by: rdkumarj
3 Replies

9. AIX

Linux install from NIM

Has anyone ever done this and is it easy to do with SLES9/10? All I can find so far is this link Can you still use all the feature of autoyast etc? TIA. (1 Reply)
Discussion started by: backslash
1 Replies

10. AIX

migrate NIM server through NIM installation

I try to migrate a NIM server from one server to another. I try to do a mksysb on NIM server restore the NIM server's mksysb to a client through NIM installation shutdown NIM server start newly installed client as NIM server Does anyone do this before? who can give me some suggestion? (1 Reply)
Discussion started by: yanzhang
1 Replies
Login or Register to Ask a Question