Solved

Normal user cannot change password while logged in locally

Posted on 2004-09-15
4
2,686 Views
Last Modified: 2013-12-27
I have a problem that I can't seem to resolve. It's a password issue.

I have a customer who wants to change his password, but cannot run "passwd" from his command console. The error message that is displayed is "unexpected failure. Password file/table unchanged".

However when he slogin or ssh, he can change the password just fine. He's running the command "passwd". So what's going on?

The machine is solaris 8 with X-windows, running on a Sun Blade 150. This machine is not part of an NIS domain.
0
Comment
Question by:toaster02
  • 2
4 Comments
 
LVL 34

Expert Comment

by:PsiCop
ID: 12067490
Are the shells different between the two environments? Perhaps an alias intercepting and futzing with the "passwd" command?
0
 
LVL 48

Expert Comment

by:Tintin
ID: 12069776
Assuming the user is running ksh, get them to type in

type passwd

from both login sessions.
0
 
LVL 38

Accepted Solution

by:
yuzh earned 500 total points
ID: 12071446
Please post the output of the following command:

grep -i passwd /etc/nsswitch.conf


also, have a look at the following Sun doc:

#--------------------------------------------------------------------------------------------------------
Document ID: 57592
Title: Document ID 57592
Synopsis: On Solaris Systems, Users May Not be Able to Change Their Password or Password Attributes Using the passwd(1) Command  
Update Date: 2004-08-13

--------------------------------------------------------------------------------
Description Top

Sun(sm) Alert Notification
Sun Alert ID: 57592
Synopsis: On Solaris Systems, Users May Not be Able to Change Their Password or Password Attributes Using the passwd(1) Command
Category: Availability
Product: Solaris
BugIDs: 4977110
Avoidance: Workaround, Patch
State: Resolved
Date Released: 30-Jun-2004, 12-Aug-2004
Date Closed: 12-Aug-2004
Date Modified: 12-Aug-2004
1. Impact
Under certain circumstances, users may not be able to change their password or password attributes using the passwd(1) command on Solaris 8 and Solaris 9 systems which utilize the "+/-" passwd syntax entries.

2. Contributing Factors
This issue can occur in the following releases:

SPARC Platform

Solaris 8 with patches 108993-32 through 108993-34 and without patch 108993-35
Solaris 9 with patches 113476-10 through 113476-13 or 112960-13 and without patch 112960-14
x86 Platform

Solaris 8 with patches 108994-32 through 108994-34 and without patch 108994-35
Solaris 9 with patches 114242-06 through 114242-08 and without patch 114242-09
Note: Solaris 7 is not affected by this issue.

The described issue only occurs if all of the following are true:

One of the patches listed above is installed on the system
/etc/nsswitch.conf(4) contains the entry "passwd: compat"
user accounts have passwd(4) entries that begin with a "+" (plus sign) or a "-" (minus sign)
Note: Password entries with a "+" or "-" selectively incorporate entries from a network repository (NIS, NIS+, or LDAP) for the password data.

To view the "passwd" entries in the nsswitch.conf(4) file, execute the following command:

    $ egrep "^passwd" /etc/nsswitch.conf
    passwd:     compat                                                                                    
3. Symptoms
If the described issue occurs, users may see the following error message when attempting to change their password:

    $ passwd
    passwd: Changing password for username
    passwd: Unsupported nsswitch entry for "passwd:". Use "-r repository ".
    Unexpected failure. Password file/table unchanged                                                                              
Solution Summary Top

4. Relief/Workaround
Users whose accounts are specified as +/- in the passwd(4) file can workaround this issue by specifying the repository to update with the "-r" option, such as:

    $ passwd -r nis
OR
    $ passwd -r nisplus
OR
    $ passwd -r ldap                                                                                    
5. Resolution
This issue is addressed in the following releases:

SPARC Platform

Solaris 8 with patch 108993-35 or later
Solaris 9 with patch 112960-14 or later
x86 Platform

Solaris 8 with patch 108994-35 or later
Solaris 9 with patch 114242-09 or later
Change History
19-Jul-2004:

Updated Contributing Factors and Resolution sections
12-Aug-2004:

State: Resolved
Updated Contributing Factors and Resolution sections.
#-----------------------------------------------------------------------------------------------------
From:
http://au.sunsolve.sun.com/search/printfriendly.do?assetkey=1-26-57592-1
0
 
LVL 34

Expert Comment

by:PsiCop
ID: 12071648
And THAT is why yuzh is top dog 'round here.

*arf* *arf*
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

My previous tech tip, Installing the Solaris OS From the Flash Archive On a Tape (http://www.experts-exchange.com/articles/OS/Unix/Solaris/Installing-the-Solaris-OS-From-the-Flash-Archive-on-a-Tape.html), discussed installing the Solaris Operating S…
Java performance on Solaris - Managing CPUs There are various resource controls in operating system which directly/indirectly influence the performance of application. one of the most important resource controls is "CPU".   In a multithreaded…
Learn how to navigate the file tree with the shell. Use pwd to print the current working directory: Use ls to list a directory's contents: Use cd to change to a new directory: Use wildcards instead of typing out long directory names: Use ../ to move…
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.

930 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now