custom jumpstart on x86 with DHCP/PXE goes into interactive mode

client boots fine, it gets the ip 192.168.0.10 and the bootfile. Then there is :

SunOS 5.10 Version Generic_141445-09 32-bit"
...
Configuring devices.
Custom JumpStart
Reading ZFS config: done
Setting up Java. Please wait ...
NOTE: Not enough memory for graphical installation. Graphical installation requires 768 MB of memory. Found 540 MB of memory.
Reverting to text-based installation.

Using local console
Beginning system identification ...
Searching for configuration file(s) ...
Search complete.

and then the text-based menu appears and asks me for the keyboard type layout ...
and all the other parameters in the next screens.

The problem is that I don't know why the prepared sysidcfg file was not used. Can someone point what could have been missing in the file ? :

keyboard=US-English
nfs4_domain=dynamic
system_locale=en_US.ISO8859-1
timezone=US/Pacific
timeserver=localhost
terminal=vt100
name_service=NONE
security_policy=NONE
service_profile=limited_net
root_password=Vi2Z6Dm9Xj5Bk
network_interface=e1000g0 {hostname=ClientA
                           netmask=255.255.255.0
                           protocol_ipv6=no
                           default_route=192.168.0.103}

maybe there is something else missing and it find it incomplete, thus starts asking about the keyboard in interactive mode anyway, despite the keyboard is specified in the sysidcfg file.
The other problem might be that the file is not used/found at all by the client installation process. But I got no errors on the screen, no clear indication what might went wrong.. Is there any log file to search for ?

All the files are in place at installServer and I run :

./add_install_client -d -e 00:0C:29:0E:6E:0B -c 192.168.0.103:/export/jumpstart/config/ -s 192.168.0.103:/export/jumpstart/install/ -p 192.168.0.103:/export/jumpstart/config/sysidcfg i86pc 

cleaning up preexisting install client "00:0C:29:0E:6E:0B"
To disable 00:0C:29:0E:6E:0B in the DHCP server,
  remove the entry with Client ID 01000C290E6E0B

If not already configured, enable PXE boot by creating
a macro named 01000C290E6E0B with:
  Boot server IP (BootSrvA) : 192.168.0.103
  Boot file      (BootFile) : 01000C290E6E0B

/export dir is shared.

[solekA@/export/jumpstart/config]# cat rules.ok
any - - x86-class -
# version=2 checksum=1341

and I used default calss file from media DVD :

[solekA@/export/jumpstart/config]# cat x86-class
#
# Sample profile for an x86 machine. Installation will
# provide default partitioning on a standalone system
# with the end-user cluster.
#
# "@(#)x86-class 1.2 94/01/25"
#
install_type initial_install
system_type standalone
partitioning default
cluster SUNWCuser

[solekA@/export/jumpstart/config]# cat /tftpboot/menu.lst.01000C290E6E0B
default=0
timeout=30
min_mem64 1024
title Solaris_10 Jumpstart
        kernel$ /I86PC.Solaris_10-1/multiboot kernel/$ISADIR/unix - install dhcp -B install_config=192.168.0.103:/export/jumpstart/config/,sysid_config=192.168.0.103:/export/jumpstart/config/sysidcfg,install_media=192.168.0.103:/export/jumpstart/install/,install_boot=192.168.0.103:/export/jumpstart/install/boot
        module$ /I86PC.Solaris_10-1/$ISADIR/x86.miniroot

Thanks in advance for any suggestions how to make it working totally hands off.

  1. please use CODE tags!

  2. try the JET tool from oracle/sun. it's a frontend for jumpstart installations and very easy to use. you can download it at the oracle website.

Sorry, I'll keep in mind using code tags in future.
I didn't want to use any front-end or other third party software to make it as easy as possible. Instead I wanted to learn something, by setting up things manually and using only original tools, which are always present at installation media.
But seems that this custom JumpStart is not an easy thing to achieve even if one follows the offiicial tutorial or "how to"s on internet ..
I think there must be a way to check what is wrong, and track down the problem.

What is the value of the Vendor Client Class Option SsysidCF on your DHCP server?

SsysidCF (code 13, ASCII text) should contain the path to the sysidcfg file in the format <server>:</path>

problem was easier then I thought, so sorry for bothering you.
I simply have by mistake wrote in ./add_install_clinet ....

-p 192.168.0.103:/export/jumpstart/config/sysidcfg

whereas it should be simply path to directory containing sysidcfg file.
Reading on the bigAdmin I learned that the sysidcfg file has always the same name, thus If I want to use different ones for different clients I have to use seperate directories.
So in my case I changed it to :

-p 192.168.0.103:/export/jumpstart/config/

Simple mistake, but on the other hand there was no clue about it at the installation screen, there was only :

Using local console
Beginning system identification ...
Searching for configuration file(s) ...
Search complete.

so it doesn't look like a problem, while it actually was.
I got that idea after I exit the interactive install at client to shell and checked with mount -p that everything is ok and accessible.
Once more sorry for bothering.