This section lists some common problems with diskless clients that you might encounter and possible solutions.
Problem:Diskless client reports Owner of the module /usr/lib/security/pam_unix_session.so.1 is not root, when attempting to log in, the /usr file system is owned by nobody.
Solution:To correct the problem, follow this workaround:
Using a text editor, modify the diskless client's server:/export/root/client/etc/default/nfs file.
Change the #NFSMAPID_DOMAIN=domain line to the following:
NFSMAPID_DOMAIN=the_same_value_as_in_server's_/var/run/nfs4_domain |
Ensure that the OS server and the diskless client have the same nfsmapid domain. To verify this information, check the /var/run/nfs4_domain file.
If the diskless client's nfs4_domain file contains a different value than the OS server's /var/run/nfs4_domain file, you will not be able to log in to the system after the diskless client boots.
Reboot the diskless client.
For more information, see Chapter 3, NFS Tunable Parameters, in Oracle Solaris Tunable Parameters Reference Manual and nfsmapid(1M).
Problem:The OS server fails to do the following:
Respond to client Reverse Address Resolution Protocol (RARP) requests
Respond to client bootparam requests
Mount a diskless client root (/) file system
The following solutions apply in a files environment.
Verify that files is listed as the first source for hosts, ethers, and bootparams in the /etc/nsswitch.conf file on the OS server.
Verify that the client's IP address appears in the /etc/inet/hosts file.
If you are not running at least the Solaris 10 8/07 release, you must also verify that the client's IP address appears in the /etc/inet/ipnodes file.
In this Oracle Solaris release, the /etc/inet/hosts file is a single file that contains both IPv4 and IPv6 entries. You do not need to maintain IPv4 entries in two hosts files that always require synchronization. For backward compatibility, the /etc/inet/ipnodes file is replaced with a symbolic link with the same name to the /etc/inet/hosts file. For more information, see the hosts(4) man page.
Verify that the client's Ethernet address appears in the /etc/ethers file.
Verify that the /etc/bootparams file contains the following paths to the client's root (/) directory and swap areas.
client root=os-server:/export/root/ client swap=os-server: /export/swap/client |
The swap size varies depending on whether you specify the -x swapsize option when you add the diskless client. If you specify the -x dump option when you add the diskless client, the following line is present.
dump=os-server:/export/dump/client dumpsize=512 |
The dump size varies depending on whether you specify the -x dumpsize option when you add the diskless client.
Verify that the OS server's IP address appears in the /export/root/ client/etc/inet/hosts file.
The OS server fails to do the following:
Respond to client RARP requests
Respond to client bootparam requests
Mount a diskless client root (/) file system
The following solutions apply in a name service environment.
Verify that both the OS server's and the client's Ethernet address and IP address are correctly mapped.
Verify that the /etc/bootparams file contains the paths to the client's root (/) directory and swap areas.
client root=os-server:/export/ root/client swap=os-server:/export/ swap/client swapsize=24 |
The swap size varies depending on whether you specify the -x swapsize option when you add the diskless client. If you specify the -x dump option when you add the diskless client, the following line is present:
dump=os-server:/export/dump/ client dumpsize=24 |
The dump size varies depending on whether you specify the -x dumpsize option when you add the diskless client.
Diskless client panics
Solution:Verify the following:
The OS server's Ethernet address is correctly mapped to its IP address. If you physically moved a system from one network to another, you might have forgotten to remap the system's new IP address.
The client's host name, IP address, and Ethernet address do not exist in the database of another server on the same subnet that responds to the client's RARP, Trivial File Transfer Protocol (TFTP), or bootparam requests. Often, test systems are set up to install their OS from an install server. In these cases, the install server answers the client's RARP or bootparam request, returning an incorrect IP address. This incorrect address might result in the download of a boot program for the wrong architecture, or a failure to mount the client's root (/) file system.
The diskless client's TFTP requests are not answered by an install server (or previous OS server) that transfers an incorrect boot program. If the boot program is of a different architecture, the client immediately panics. If the boot program loads from a non-OS server, the client might obtain its root partition from the non-OS server and its /usr partition from the OS server. In this situation, the client panics if the root and /usr partitions are of conflicting architectures or versions.
If you are using both an install server and an OS server, verify that the following entry exists in the /etc/dfs/dfstab file:
share -F nfs -o -ro /export/exec/Solaris_version- \ instruction-set.all/usr |
where version= 8, 9, 10, and instruction-set=sparc or i386.
Verify that the diskless client's root (/), /swap, and /dump (if specified) partitions have share entries:
share -F nfs -o rw=client,root=client /export/root/client share -F nfs -o rw=client,root=client /export/swap/ client share -F nfs -o rw=client,root=client /export/dump/ client |
On the OS server, type the following command to check which files are shared:
% share |
The OS server must share /export/root/client and /export/swap/client-name (defaults), or the root, /swap, and /dump partitions that you specified when you added the diskless client.
Verify that the following entries exist in the /etc/dfs/dfstab file:
share -F nfs -o ro /export/exec/Solaris_version- instruction-set.all/usr share -F nfs -o rw=client,root=client /export/root/ client share -F nfs -o rw=client,root=client /export/swap/ client |
OS server is not responding to diskless client's RARP request
Solution:From the client's intended OS server, run the snoop command as superuser (root) by using the client's Ethernet address:
# snoop xx:xx:xx:xx:xx:xx |
Boot program downloads but panics early in the process
Solution:Use the snoop command to verify that the intended OS server is answering the client's TFTP and NFS requests.
Problem:Diskless client hangs.
Solution:Restart the following daemons on the OS server:
# /usr/sbin/rpc.bootparamd # /usr/sbin/in.rarpd -a |
Incorrect server responds to diskless client's RARP request
Solution:Restart the following daemons on the OS server:
# /usr/sbin/rpc.bootparamd # svcadm enable network/rarp |