Bugzilla – Bug 4117
RPM deps are broken - fedora core 2
Last modified: 2009-09-08 09:19:19 UTC
Until I did a yum install mysql slimserver would not run and would tell me i needed to run build perl modules. Which failed because I didn't have mysql devel installed. But i was able to do this, which Andy says may cause bad behavior, so I'll rerun build perl modules... The RPM is quite broken, it's missing deps, and even if you do what slimserver.pl tells you to do, THAT's broken too. I will do the following: [install: mysql 3.23.58-16.FC2.1.i386] I will install/upgrade these to satisfy the dependencies: [deps: perl-DBD-MySQL 2.9003-4.i386] [deps: perl-DBI 1.40-4.i386] Is this ok [y/N]: y Downloading Packages Getting perl-DBD-MySQL-2.9003-4.i386.rpm perl-DBD-MySQL-2.9003-4.i 100% |=========================| 111 kB 00:01 Getting mysql-3.23.58-16.FC2.1.i386.rpm mysql-3.23.58-16.FC2.1.i3 100% |=========================| 3.2 MB 00:18 Getting perl-DBI-1.40-4.i386.rpm perl-DBI-1.40-4.i386.rpm 100% |=========================| 467 kB 00:02 Running test transaction: Test transaction complete, Success! perl-DBI 100 % done 1/3 mysql 100 % done 2/3 perl-DBD-MySQL 100 % done 3/3 Installed: mysql 3.23.58-16.FC2.1.i386 Dep Installed: perl-DBD-MySQL 2.9003-4.i386 perl-DBI 1.40-4.i386 Transaction(s) Complete root@eatbox ~ # service slimserver start Starting SlimServer: [ OK ] root@eatbox ~ # service slimserver status slimserver.pl (pid 13050) is running...
ok so the above comment gets me up and running, but with an old version of mysql so i have to run build-perl-modules.pl... deps should require mysql 4 or 5, OR include the binaries that Andy tells me are in the tarball.
just reproduced in fedora core 5 as well. but FC5 has additional problems, please see bug 4117 as well as: http://wiki.slimdevices.com/index.cgi?RPM
sorry that was, see also: bug 4118
on fedora core 5 so far it's looking like you can get away with just doing a 'yum install mysql-devel' which installs 5.0.22-1 and perl-DBI 1.50...
can not get 6.5.0b3 rpm working AT ALL on fedora core 5. even after running build-perl-modules.pl with mysql-devel, mysql and perl-dbi installed, it still complains that it can't load DBD::mysql. it tells me to run buid-perl-modules.pl DBD::mysql which i've run multiple times, and it says it's successful, but the server still will not start. if you want to take a look i'll leave my parallel running, 10.0.3.48 root:root
(This is on Fedora Core 5 Parallel on OSX 10.4.7 on an Intel iMac. 10.0.4.38 u:root p:root) [root@localhost slimserver]# ./slimserver.pl The following modules failed to load: DBD::mysql To download and compile them, please run: /usr/local/slimserver/Bin/build-perl-modules.pl DBD::mysql Exiting.. [root@localhost slimserver]# Bin/build-perl-modules.pl DBD::mysql Welcome to the Slim Devices perl module installer. These packages are needed for SlimServer to function. You will need a C compiler (gcc), make, and perl installed. You will need development libraries for MySQL. eg: libmysqlclient You will need development libraries for expat. eg: libexpat1-dev *** Ignore any warnings about AppConfig. *** Please enter a perl binary to use (defaults to /usr/bin/perl) This must be the same perl binary that you ran this program with --> Please enter a directory to download files to --> /tmp Downloads will use lwp to fetch tarballs. Downloading DBD-mysql-3.0002.tar.gz to: /tmp Uncompressing.. Configuring.. PERL5LIB=/tmp/DBI-1.50/blib/lib:/tmp/DBI-1.50/blib/arch /usr/bin/perl Makefile.PL Multiple copies of Driver.xst found in: /tmp/DBI-1.50/blib/arch/auto/DBI/ /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi/auto/DBI/ at Makefile.PL line 727 Building.. In file included from /tmp/DBI-1.50/blib/arch/auto/DBI/DBIXS.h:31, from dbdimp.h:20, from dbdimp.c:20: /tmp/DBI-1.50/blib/arch/auto/DBI/dbipport.h:227:1: warning: "PERL_UNUSED_DECL" redefined In file included from /tmp/DBI-1.50/blib/arch/auto/DBI/DBIXS.h:19, from dbdimp.h:20, from dbdimp.c:20: /usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE/perl.h:163:1: warning: this is the location of the previous definition dbdimp.c: In function �mysql_db_login�: dbdimp.c:1553: warning: unused variable �Perl___notused� dbdimp.c: In function �mysql_db_disconnect�: dbdimp.c:1686: warning: unused variable �Perl___notused� dbdimp.c: In function �dbd_discon_all�: dbdimp.c:1719: warning: unused variable �Perl___notused� dbdimp.c: In function �mysql_st_execute�: dbdimp.c:2557: warning: unused variable �Perl___notused� dbdimp.c: In function �mysql_st_finish�: dbdimp.c:3023: warning: unused variable �Perl___notused� dbdimp.c: In function �mysql_st_internal_execute41�: dbdimp.c:2461: warning: �rows� may be used uninitialized in this function In file included from /tmp/DBI-1.50/blib/arch/auto/DBI/DBIXS.h:31, from dbdimp.h:20, from mysql.xs:14: /tmp/DBI-1.50/blib/arch/auto/DBI/dbipport.h:227:1: warning: "PERL_UNUSED_DECL" redefined In file included from /tmp/DBI-1.50/blib/arch/auto/DBI/DBIXS.h:19, from dbdimp.h:20, from mysql.xs:14: /usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE/perl.h:163:1: warning: this is the location of the previous definition mysql.xs: In function �XS_DBD__mysql__GetInfo_dbd_mysql_get_info�: mysql.xs:631: warning: implicit declaration of function �is_prefix� mysql.xs:639: warning: ignoring return value of �Perl_newSViv�, declared with attribute warn_unused_result mysql.xs:642: warning: ignoring return value of �Perl_newSViv�, declared with attribute warn_unused_result mysql.xs:645: warning: ignoring return value of �Perl_newSVpv�, declared with attribute warn_unused_result Library for DBD-mysql-3.0002.tar.gz is OK! All done! [root@localhost slimserver]# ./slimserver.pl The following modules failed to load: DBD::mysql To download and compile them, please run: /usr/local/slimserver/Bin/build-perl-modules.pl DBD::mysql Exiting.. [root@localhost slimserver]# perl -V | head -4 Summary of my perl5 (revision 5 version 8 subversion 8) configuration: Platform: osname=linux, osvers=2.6.9-22.18.bz155725.elsmp, archname=i386-linux-thread-multi uname='linux hs20-bc1-6.build.redhat.com 2.6.9-22.18.bz155725.elsmp #1 smp thu nov 17 15:34:08 est 2005 i686 i686 i386 gnulinux ' [root@localhost slimserver]# find . | grep DBD ./CPAN/DBI/DBD.pm ./CPAN/DBI/DBD ./CPAN/DBI/DBD/Metadata.pm ./CPAN/DBD ./CPAN/DBD/mysql.pm ./CPAN/DBD/mysql ./CPAN/DBD/mysql/GetInfo.pm ./CPAN/DBD/Sponge.pm ./CPAN/arch/5.8.8/i386-linux-thread-multi/auto/DBD ./CPAN/arch/5.8.8/i386-linux-thread-multi/auto/DBD/mysql ./CPAN/arch/5.8.8/i386-linux-thread-multi/auto/DBD/mysql/mysql.so ./CPAN/arch/5.8/i386-linux-thread-multi/auto/DBD ./CPAN/arch/5.8/i386-linux-thread-multi/auto/DBD/mysql ./CPAN/arch/5.8/i386-linux-thread-multi/auto/DBD/mysql/mysql.so ./CPAN/arch/5.8/i386-linux-thread-multi/auto/DBD/mysql/mysql.bs [root@localhost slimserver]#
Andy discovered this is probably related to selinux.
disabled selinux and fc5 works now. selinux was already disabled on my fc2 machine at home. sorry about so many notes that were related to a completely different herring.
So, is there a fix to make it work with selinux turned on, or is this just something we need to document? Is there a fix for 6.5?
At one point the RPM worked fine under SELinux - what does the SELinux log file say? Also - we need to set a limit as to how far back we will support $LinuxDistribution. FC1 & FC2 have been end of lifed. We as a company don't have the support resources to deal with all these different Linux distributions, especially if we want a YUM based RPM install that has the same ease as the Debian package. http://www.fedoralegacy.org/ FC4 has even moved to maintaining status, now that FC6 is about to be released. I know that Al Pacifico, who is working on a nice RPM package for FC5, isn't paying any attention to anything less than FC5, nor should he. The workaround/alternative for people who can't or won't upgrade is to use the tarball.
I too use FC5 and found that the SELinux issue was due to slimserver loading Expat.pm and Expat.so from the slimserver directory. I found that if I removed these files slimserver uses the system-installed Expat library and works fine. So, this comes back to a "bug" I've discussed previously with Dan that slimserver uses the local modules even if the module is installed system-wide. NB. This was all done in April 2006 - I've not tried it recently.
Kevin: do we need to fix something here for 6.5.1 or is this just a FAQ/Wiki issue?
I think this needs to be addressed. If the RPM installs but *will not work*, that's a problem. It either needs to be messaged that it will not work, or be made to work. Regarding this: *** The workaround/alternative for people who can't or won't upgrade is to use the tarball. *** That's a support NIGHTMARE.
regarding the selinux log file, you can see it on the machine i mentioned in my earlier notes...
Kevin, Can you attach the log to this bug - I don't have access to your machine :) R.
stupid q...not very familiar with selinux, where does it ordinarily log to? i see a fair amount in /var/log/messages...but nothing that seems related.
Subject: Re: RPM deps are broken - fedora core 2 /var/log/secure I believe
not really seeing anything relevant in there except for the stuff i had to do when i tried to get things working manually...(this is from fc5 parallel): Sep 15 13:28:25 localhost sshd[1590]: Server listening on :: port 22. Sep 15 13:28:25 localhost sshd[1590]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use. Sep 15 13:28:27 localhost runuser: pam_unix(runuser:session): session opened for user slimserver by (uid=0) Sep 15 13:28:31 localhost runuser: pam_unix(runuser:session): session closed for user slimserver Sep 15 13:29:58 localhost gdm[1921]: pam_unix(gdm:session): session opened for user root by (uid=0) Sep 15 13:31:43 localhost userdel[2144]: delete user `slimserver' Sep 15 13:31:43 localhost userdel[2144]: remove group `slimserver' Sep 15 13:34:23 localhost groupadd[2189]: new group: name=slimserver, GID=503 Sep 15 13:34:23 localhost useradd[2190]: new user: name=slimserver, UID=503, GID=503, home=/usr/local/slimserver, shel l=/sbin/nologin Sep 15 13:34:23 localhost useradd[2190]: failed adding user `slimserver', data deleted Sep 15 13:39:55 localhost groupdel[2271]: remove group `slimserver' Sep 15 13:40:37 localhost groupadd[2302]: new group: name=slimserver, GID=503 Sep 15 13:40:57 localhost useradd[2305]: new user: name=slimserver, UID=503, GID=503, home=/usr/local/slimserver, shel l=/bin/bash Sep 15 13:41:10 localhost runuser: pam_unix(runuser:session): session opened for user slimserver by (uid=0) Sep 15 13:41:13 localhost runuser: pam_unix(runuser:session): session closed for user slimserver Sep 15 14:33:37 localhost su: pam_unix(su:session): session opened for user beagleindex by (uid=0) Sep 15 14:33:44 localhost su: pam_unix(su:session): session closed for user beagleindex Sep 15 14:33:44 localhost su: pam_unix(su:session): session opened for user beagleindex by (uid=0) Sep 15 14:35:36 localhost su: pam_unix(su:session): session closed for user beagleindex
Fixed in change 9852
SELinux messages are logged in /var/log/audit/audit.log, but only if you have the "audit" RPM installed. [root@horse ~]# rpm -q audit audit-1.1.5-1 [root@horse ~]# chkconfig auditd --list auditd 0:off 1:off 2:on 3:on 4:on 5:on 6:off [root@horse ~]# service auditd status auditd (pid 2382) is running... [root@horse ~]# audit2allow -i /var/log/audit/audit.log -l allow hald_t file_t:file { getattr ioctl }; allow prelink_t user_home_t:file relabelto; allow unconfined_execmem_t self:process execheap;