Bug 12225 - SC v7.3.3 r25010 not starting on system with libc v2.3.6
: SC v7.3.3 r25010 not starting on system with libc v2.3.6
Status: NEW
Product: Logitech Media Server
Classification: Unclassified
Component: Platform Support
: 7.3.3
: PC Linux (other)
: P5 minor (vote)
: Future
Assigned To: JED
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2009-06-01 12:14 UTC by JED
Modified: 2009-06-02 08:50 UTC (History)
3 users (show)

See Also:
Category: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description JED 2009-06-01 12:14:18 UTC
Hello,
I'm running SC on different linux boxes without any problems. After upgrading GNU libc from v2.2.5 to v2.3.6 slimserver.pl is not starting anymore. This effect is reproducable on different machines. The problem seems to be caused by the 'changeEffectiveUserAndGroup' function. If I disable the appropriate part of the function (line 874-879) SqueezeCenter starts without any problems.

The start command:
/usr/local/slimserver/slimserver.pl --daemon --pidfile=/var/run/slimserver.pid --user slims --group nogroup --logfile=/var/slims/log/slimserver.log --diag

The log entries:
[09-06-01 21:11:24.8381] main::init (270) Starting SqueezeCenter (v7.3.3, r25010, Sat Feb 14 03:03:45 PST 2009)
[09-06-01 21:11:25.0494] Carp::confess (270) Warning: Uncaught exception from user code:
        Unable to set effective group(s) to nogroup (65534) is: 65534 65534 65534: No such file or directory
 at /usr/local/slimserver/slimserver.pl line 878
        main::changeEffectiveUserAndGroup() called at /usr/local/slimserver/slimserver.pl line 332
        main::init() called at /usr/local/slimserver/slimserver.pl line 479
        main::main() called at /usr/local/slimserver/slimserver.pl line 1043

Used Perl version:
5.8.7

Used LibC version:
GNU C Library stable release version 2.3.6, by Roland McGrath et al.
Copyright (C) 2005 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 3.4.6.
Compiled on a Linux 2.4.35-wt1-SMP system on 2009-01-05.

Deactivated source code:
874: undef $!;
875: $) = "$pgid $pgid " . join (" ", @sgids);
876:
877: if ( $! ) {
878:     die "Unable to set effective group(s) to $group ($gid) is: $): $!\n";
879: }

Regards,
Juergen
Comment 1 Andy Grundman 2009-06-02 05:36:24 UTC
Any reason you're running such old versions of everything?
Comment 2 JED 2009-06-02 05:55:20 UTC
Hello Andy, the server is based on a specific, easy to configure Linux server distribution, (see http://www.eisfair.org). The system is reliable, slim and relatively fast, also on older hardware. A new generation of the distribution, based on a newer kernel etc. is still at the beginning. Additional no problem appeared in the past with it.
Comment 3 Andy Grundman 2009-06-02 05:58:56 UTC
Since everything works fine if you just avoid changing user/group, can you just run it directly as the desired user?  Should be a simple workaround.