Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Automatic login for Solaris 10

252 views
Skip to first unread message

Gary Mills

unread,
Mar 15, 2006, 2:13:31 PM3/15/06
to
We have an Ultra 2 that's a console server, running the conserver
software. Under Solaris 8 with CDE, I wrote a shell script that
replaces dtlogin to permit user `oper' to log in automatically and
start a CDE session.

I'm now replacing it with a new machine running Solaris 10, which
has the JDS3 desktop, as well as CDE. With JDS3, automatic login
can be accomplished in a much nicer way.

The first step is to make gdm the login manager, rather than dtlogin:

# /usr/dt/bin/dtconfig -d
# sh /etc/init.d/dtlogin stop
# svcadm enable gdm2-login

Now, the file /etc/X11/gdm/gdm.conf needs to be modified to enable
automatic login. One way is to make these additions:

AutomaticLoginEnable=false
AutomaticLogin=oper

This causes an immediate login of the specified user. I decided to
do it this way instead:

TimedLoginEnable=true
TimedLogin=oper

This adds a 30-second delay to the automatic login, giving time to
log in as a different user, if necessary.

In any case, two lines also have to be added to /etc/pam.conf:

gdm-autologin auth required pam_unix_cred.so.1
gdm-autologin auth sufficient pam_allow.so.1

The file /usr/lib/security/pam_allow.so.1 is not currently included
with Solaris 10. It can be copied from one of the Nevada releases,
for the appropriate platform, and installed in /usr/lib/security.

With these changes, automatic login almost works, but the oper session
displays a message saying that the session lasted less than ten
seconds. These errors appear in ~oper/.xsession-errors:

/etc/X11/gdm/Xsession: Cannot find Xclients
/etc/X11/gdm/Xsession: Setup done, will execute: /usr/bin/ssh-agent -- xsm
xsm: No such file or directory

The problem seemed to be that gdm did not select the correct default
desktop session, likely because `oper' had never logged in to this
machine before. I tried a few changes to /etc/X11/gdm/gdm.conf to
correct that, but to no avail. However, creating ~oper/.dmrc with
these contents did the trick:

[Desktop]
Session=gnome

After a 30-second delay, oper is automatically logged in on the graphic
console and gets the typical JDS3 desktop for a new user.

--
-Gary Mills- -Unix Support- -U of M Academic Computing and Networking-

0 new messages