We received customer reports that the HELIOS services did not start properly on a new Solaris 11 machine. System log messages like these were displayed:
srvsrv[878]: srvutil start all
atalkd[887]: configureInterface /dev/net: Is a directory
atalkd[887]: no interfaces configured, stopped
srvsrv[878]: service atalkd (pid 887) exited with status 40
srvsrv[878]: could not start service atalkd
We investigated this issue and found that the interface configuration did not contain a physical network interface, which is required.
So "dladm" shows a logical network interface (net0) and a real device (e1000g0) like this:
# /usr/sbin/dladm show-phys
LINK MEDIA STATE SPEED DUPLEX DEVICE
net0 Ethernet up 1000 full e1000g0
instead of a working server without logical interfaces:
# /usr/sbin/dladm show-phys
LINK
MEDIA
STATE
SPEED
DUPLEX
DEVICE
e1000g0 Ethernet up
1000 full e1000g0
Since Solaris only provides direct access to the logical interfaces (e.g. for 'ifconfig -a') the physical interface is not recognized and therefore AppleTalk can't be started.
A workaround for this problem is to configure the real network interface via 'prefvalue' using following command:
HELIOSDIR/bin/prefvalue -k Programs/atalkd/if -t strlist "e1000g0"
Of course, the interface name has to be adjusted to the correct one as shown in the "dladm" call.
Please note that AppleTalk is legacy and not supported by Apple nor by HELIOS anymore.