Bug 186974 - gkrellm-daemon fails to start because of user/group conflict with LSB
Summary: gkrellm-daemon fails to start because of user/group conflict with LSB
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: gkrellm
Version: 5
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Karsten Hopp
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2006-03-27 19:34 UTC by Toshio Kuratomi
Modified: 2007-11-30 22:11 UTC (History)
1 user (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2006-05-03 14:07:39 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Toshio Kuratomi 2006-03-27 19:34:21 UTC
Description of problem:
gkrellm-daemon's init script attempts to start as user gkrellm.  This user is
created in an rpm post script.  The problem is gkrellm requests uid/gid 101. 
This is in violation of the LSB which only allocates the range 0-99 for staticly
assigned uids.  Further, this conflicts with shadow-utils's useradd
configuration which dynamically allocates uid's in the 100-499 range for system
services that can use an install-time (rahter than buildtime) determined uid. 
So, in the case where a system administrator has installed two packages which
dynamically add their UIDs in %post scripts before installing gkrellm-daemon,
gkrellmd will fail to add a group for itself.

Version-Release number of selected component (if applicable):
gkrellm-daemon-2.2.7-7

How reproducible:
Everytime.

Steps to Reproduce:
1. Start with a Fedora Core version that does not have gkrellm-daemon installed
(and doesn't have the gkrellm user/group)
2. useradd -r test1
3. useradd -r test2
4. yum install gkrellm-daemon
5. service gkrellmd start

Actual results:
Starting gkrellmd: runuser: user gkrellmd does not exist
                                                           [FAILED]

Expected results:
gkrellmd would start

Additional info:
I have not perused the sources of gkrellmd but the man page and usage within the
init script imply that gkrellmd just needs a username and groupname that it can
run as.  This is most likely a case where gkrellm should allow useradd to choose
a uid/gid.  So the rpm %preinstall script should use groupadd -r gkrellmd and
useradd -r gkrellmd instead of groupadd -g 101/useradd -u 101.

Comment 1 Karsten Hopp 2006-04-03 09:38:18 UTC
You're right, there is no reference to UID/GID 101 in the sources, any value
would do as long as the username/groupname exists.

I've updated the package to gkrellm-2.2.9 and removed the UID/GIDs 

Comment 2 Peter Vrabec 2006-05-03 12:05:26 UTC
*** Bug 190523 has been marked as a duplicate of this bug. ***

Comment 4 Axel Thimm 2006-05-03 12:15:36 UTC
A uid/gid has been resevered for gkrellmd in /usr/share/doc/setup-*/uidgid:

grep gkrellmd /usr/share/doc/setup-*/uidgid 
gkrellmd        101     101     /                       /sbin/nologin  
gkrellm-daemon


Comment 5 Karsten Hopp 2006-05-03 14:07:39 UTC
I've removed the gkrellmd entry in setup CVS, this will be fixed when the next setup
package will be pushed.

An updated FC-5 package is on the way


Note You need to log in before you can comment on or make changes to this bug.