Solved

ps showing user id not username

Posted on 2006-11-21
10
2,555 Views
Last Modified: 2009-08-06
Hi,

I'm having this really odd problem with the test cluster (Ubuntu/Dapper + heartbeat 2.0.7) that I'm currently setting up.

I think the following summises it nicely:-

# id hacluster
uid=105(hacluster) gid=111(haclient) groups=111(haclient)

# grep hacluster /etc/passwd
hacluster:x:105:111:Heartbeat System Account,,,:/usr/lib/heartbeat:/bin/false

# grep hacluster /etc/shadow
hacluster:<snip - was valid hash!>:13412:0:99999:7:::

# ps -ef | grep heart
root      4767     1  0 13:51 ?        00:00:00 heartbeat: master control process
root      4804  4767  0 13:51 ?        00:00:00 heartbeat: FIFO reader      
root      4805  4767  0 13:51 ?        00:00:00 heartbeat: write: bcast eth1
root      4806  4767  0 13:51 ?        00:00:00 heartbeat: read: bcast eth1
105       4849  4767  0 13:55 ?        00:00:00 /usr/lib/heartbeat/ccm
105       4850  4767  0 13:55 ?        00:00:13 /usr/lib/heartbeat/cib
nobody    4851  4767  0 13:55 ?        00:00:00 /usr/lib/heartbeat/lrmd
root      4852  4767  0 13:55 ?        00:00:00 /usr/lib/heartbeat/stonithd
105       4853  4767  0 13:55 ?        00:00:00 /usr/lib/heartbeat/attrd
105       4854  4767  0 13:55 ?        00:00:00 /usr/lib/heartbeat/crmd
root      4855  4767  0 13:55 ?        00:00:01 /usr/lib/heartbeat/mgmtd -v
105       4856  4767  0 13:55 ?        00:00:00 /usr/lib/heartbeat/pingd -h 192.168.100.1 -m 100 -d 5s

As you can see 'ps -ef' isn't showing hacluster but instead is showing the uid of 105.

Also worth noting is that heartbeat is telling these processes to run as "hacluster" so it's getting that bit right, it's almost as if it can't reverse lookup the userid but I'm just guessing now!

Any ideas are most appreciated...
0
Comment
Question by:kennym141282
10 Comments
 
LVL 5

Expert Comment

by:ircpamanager
ID: 17988004
maybe a shot in the dark here, is there a user and group named hacluster?
0
 
LVL 7

Expert Comment

by:killbrad
ID: 17988698
Remove the following two lines from your /etc/nscd.conf file:

enable-cache passwd no
enable-cache group no

Then restart the nscd service.
0
 

Author Comment

by:kennym141282
ID: 17993943
# apt-cache policy nscd
nscd:
  Installed: (none)
  Candidate: 2.3.6-0ubuntu20
  Version table:
     2.3.6-0ubuntu20 0
        500 http://gb.archive.ubuntu.com dapper/universe Packages


nscd isn't installed...

and...

# grep hacluster /etc/group
#

It's really puzzling!
0
Microsoft Certification Exam 74-409

Veeam® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

 
LVL 5

Expert Comment

by:ircpamanager
ID: 17995633
what if   cat /etc/passwd | grep -i 105
0
 
LVL 8

Expert Comment

by:jk2001
ID: 18000689
Sources are here:
http://procps.cvs.sourceforge.net/procps/

It uses getpwuid(uid) to get the name.  So, the issue is down in that library.

Here's one version of that source:
getpwuid.c - http://www.google.com/codesearch?hl=en&q=+getpwuid+show:GCao5GWOX6Y:j2b_exIQ6aE:1sGKCqgnoog&sa=N&cd=3&ct=rc&cs_p=http://gentoo.osuosl.org/distfiles/Dev86src-0.16.17.tar.gz&cs_f=dev86-0.16.17/libc/getent/getpwuid.c#a0
__getwpent.c - http://www.google.com/codesearch?hl=en&q=show:von9tHYpwHY:j2b_exIQ6aE:stycz_AjqEA&sa=N&ct=rd&cs_p=http://gentoo.osuosl.org/distfiles/Dev86src-0.16.17.tar.gz&cs_f=dev86-0.16.17/libc/getent/__getpwent.c

Possible reasons:
The line in passwd may be malformed.

Maybe you're not  using that version of getpwuid above.  Are you on an LDAP based network?  Then you might be using different libraries, and the libraries aren't reading /etc/passwd.
0
 

Author Comment

by:kennym141282
ID: 18003637
I am on an LDAP based network, but, nsswitch.conf shows the following:-

passwd:         files ldap
group:          files ldap
shadow:         files ldap
0
 
LVL 1

Accepted Solution

by:
TraskAdam earned 350 total points
ID: 18025159
I think it's because the hacluster is longer than 8 chars so ps shows the uid rather than truncating the username.

[root@localhost /root]# useradd -c '8 Chars' abcdefgh
[root@localhost /root]# useradd -c '9 Chars' abcdefghi
[root@localhost /root]# grep ^abc /etc/passwd
abcdefgh:x:502:502:8 Chars:/home/abcdefgh:/bin/bash
abcdefghi:x:503:503:9 Chars:/home/abcdefghi:/bin/bash
[root@localhost /root]# su - abcdefghi -s /bin/bash -c '(sleep 10m &)'
[root@localhost /root]# su - abcdefgh -s /bin/bash -c '(sleep 10m &)'
[root@localhost /root]# ps -ef | grep sleep
503      11019     1  0 13:15 ?        00:00:00 sleep 10m
abcdefgh 11060     1  0 13:15 ?        00:00:00 sleep 10m
root     11074 10562  0 13:15 pts/7    00:00:00 grep sleep
[root@localhost /root]#

You can explicitly specify the format you want ps to use to overcome this....

[root@localhost /root]# ps -eo user=WIDE-USER-COLUMN -o pid,ppid,c,stime,tty,time,cmd | grep sleep
abcdefghi        12009     1  0 13:27 ?        00:00:00 sleep 10m
abcdefgh         12050     1  0 13:27 ?        00:00:00 sleep 10m
root             12057 10562  0 13:27 pts/7    00:00:00 grep sleep
[root@localhost /root]#



0

Featured Post

Enterprise Mobility and BYOD For Dummies

Like “For Dummies” books, you can read this in whatever order you choose and learn about mobility and BYOD; and how to put a competitive mobile infrastructure in place. Developed for SMBs and large enterprises alike, you will find helpful use cases, planning, and implementation.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
Linux Mint 18 31 78
Issue to mail 11 74
VCenter migration steps and caveats from Windows VCenter to Linux appliance 6.0U2 ? 9 157
Linux as a middle box 7 64
rdate is a Linux command and the network time protocol for immediate date and time setup from another machine. The clocks are synchronized by entering rdate with the -s switch (command without switch just checks the time but does not set anything). …
How many times have you wanted to quickly do the same thing to a list but found yourself typing it again and again? I first figured out a small time saver with the up arrow to recall the last command but that can only get you so far if you have a bi…
Learn how to get help with Linux/Unix bash shell commands. Use help to read help documents for built in bash shell commands.: Use man to interface with the online reference manuals for shell commands.: Use man to search man pages for unknown command…
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.

863 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

20 Experts available now in Live!

Get 1:1 Help Now