Announcing the Utter Ramblings EL4 repository
March 14, 2007 by Jason · 33 Comments
If you're a regular reader of the site, you may have noticed the "Yum Repository" link at the top of the page. If so, congratulations, you're one of the first to try out a new service I'm offering on this site.
As it appears, most of the posts on this blog thus far have been how-to's on updating your RHEL & CentOS servers to use the newest versions of httpd, PHP, and MySQL. I'm still planning on creating those articles as needed, but only the source packages will be linked to the page. Binary releases for i386 (x86-64 coming soon) will now be available for easy updating through my brand new yum repository (and yes, before you ask, 'up2date' can read a yum repo).
I'm hoping that this will cut down on not only the effort required to update your systems, but also on the possible glitches that can come from updating a complex set of packages like PHP (where, with prior provided methods, you'd need to type out all of the file names that you wanted to install all at once, otherwise you'd have dependency issues with upgrading from an earlier release).
At current, I'm providing the following packages ('devel' and other sub-packages are also included):
- apr
- apr-util
- pcre
- httpd
- php
- mysql
- php-xcache
- mod_perl
- mod_python
All of the packages have been tagged with my name ("jason") as well as a build id so that they can easily be identified as having come from my repo.
You can find more info on setting up your server to access my repository at the Yum Repository page. Changes made to the repo will be logged on the Changelog page.
I have posted a similar comment however it was to a much older blog post so thought I should post here too.
I am wondering if your binary packages for PHP support FastCGI and whether your binary packages for Apache support mod_svn so I can host a subversion repository?
If the answer is no, I would like to suggest a blog post when you have the time regarding the support of these two features using source packages.
Thanks,
Alex.
I see from the SPEC file you've used in earlier blog posts that you use --enable-fcgi so I thought i'd go ahead and use your repository.
I have imported teh GPG key, added the line to /etc/sysconfig/rhn/sources and created /etc/yum.repos.d/utterramblings.repo
The system does not seem to want to update PHP because PHP-PEAR requires my existing version of PHP. The output of a "yum update" can be seen here:
http://pastie.caboo.se/48528
Should I uninstall PHP first before installing PHP from your repository?
The output from a "yum list php*" can be seen here:
http://pastie.caboo.se/48530
The php-pear package has changed slightly from PHP 4 to PHP 5. You may have to remove it before the update can proceed. Once you've updated the rest of PHP you can reinstall php-pear from my repo and you shouldn't have that problem again.
Thanks Jason.
I see that you also appear to have updated the pear package as I am no longer getting that particular warning (I haven't removed pear - yet).
I do however still seem to have an issue with the other error:
"Error: Missing Dependency: perl(BSD::Resource) is needed by package mod_perl"
I have perl installed but CentOS doesn't seem to have a perl-BSD-Resource package in its repository. Is this something we should be getting from a third-party repository?
My full output from a "yum update" can be seen here: http://pastie.caboo.se/48555
Thanks,
Alex.
Is there a better way to provide feedback regarding the repository or is it ok to post comments / questions on your blog like this?
Ooh... Sorry about that. I actually run two repos: one for my sites and then this public repo. It looks like I missed copying that file over when I moved the packages to the public folder. If you run yum again now it should work.
As to comments or problems, if there is a specific post that deals with the update you have questions/problems with then you should probably post there. If not, here is fine.
Me again..... Sorry!
Thanks for all the support so far. I hope you do not mind my constant questions. Hopefully they will result in both a better experience for people using the repository as well as people stumbling over these questions/answers via a search engine.
I so far have Apache, PHP and MySQL working well. Your repository made this extremely easy bar the teething problems already brought to your attention and subsequently resolved.
I have however hit a glitch that I believe is caused by a conflict between the official repositories and this one and I am not sure of the best course of action.
The command "yum install subversion" results in the following two errors:
Error: Missing Dependency: libaprutil-0.so.0 is needed by package subversion
Error: Missing Dependency: libapr-0.so.0 is needed by package subversion
I know you have already said that you do not use Subversion however the fact that apr and apr-util are provided by your repository would at first glance seem to be the cause of the problem so I wondered if you had any suggestions for things I could try?
Should I be looking at using the the SRPM for subversion and mod_dav_svn? If so, would you like the resulting packages contributed for inclusion in your repository or should I host them elsewhere so others that would want to use subversion along side your packages can do so?
Thanks in advance,
Alex.
httpd 2.2.x requires newer versions of apr & apr-util than are included with RHEL4. As such, I have included newer versions of those packages in my repo.
That said, if there is a package (such as subversion) that was build specifically for those old versions, then it would need to be rebuilt from the src.rpm. If someone wants post up a list of official packages that no longer work, I'd be more than willing to rebuild them, however, I'd probably stick with the RHEL4 versions instead of the newest available, to keep going with the "stable platform" that RHEL aims to provide.
I have just added your repos to my server (fresh RHEL4 install). I’m very anxious to try this out but I have the following error when I try “up2date –dry-run php”
Unresolvable chain of dependencies:
apr-util 1.2.8-4.jason.1 requires libsqlite3.so.0
php-pear-4.3.9-3.22.3 requires php = 4.3.9-3.22.3
So, I just wanted to check in before I pull the trigger. I get the same no matter what I try to test.
Please advise, great service you have going here. Thank you very much.
Answered my own question. I had to do the following:
Step 1:
downloaded
http://isoredirect.centos.org/centos/4/os/i386/CentOS/RPMS/sqlite-3.3.3-1.2.i386.rpm
http://isoredirect.centos.org/centos/4/os/i386/CentOS/RPMS/sqlite-devel-3.3.3-1.2.i386.rpm
installed
rpm -i sqlite-3.3.3-1.2.i386.rpm sqlite-devel-3.3.3-1.2.i386.rpm
Step 2: all on one line
up2date apr-util php-pear php httpd
nice... thanks again Jason.
Kent
You know, that dependency never occurred to me. The sqlite package is required for 'yum' to be installed and the first thing I do on my RHEL systems is install 'yum', so I never came across that.
Good catch, I've updated the "Yum Repository" page that covers the system setup.
Hey Jason, thanks for the reply. I'm fighting something here. Using your repo I was able to enable PDO w/ "up2date php-pdo" but, in my case, I also need "pdo-mysql" pulling my hair out over this one. I decided to try pecl install pdo_mysql but compile fails w/ "error: mysql_query missing!?"
So, the question, do you know a way to install pdo-mysql driver with your setup? I'll keep digging but I feel like I'm drifting toward starting over w/ a source build. I'm sure there are other modules I'm going to need after this also. Perhaps I just need a custom build?
pecl will compile the extension from source so there shouldn't be a problem there unless you're missing a dependency (I just tested "pecl install pdo_mysql" on my 32-bit development box and it ran fine). Do you have 'mysql-devel' installed?
PhpMyAdmin is complaining that it can not load the mcrypt extension and I can see that your PHP package has not been compiled using --with-mcrypt
Would it be possible for you to add this and/or is there another way this can be installed?
Thanks,
Alex.
I'm rebuilding over the weekend so I'll see what I can about that module.
Thanks Jason.
All the effort you put in to this is very much appreciated.
You asked for suggestions of other packages that can't be installed as a result of using your repository:
The yum install mod_dav_svn gives me the following output:
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Package mod_dav_svn.i386 0:1.1.4-2.ent set to be updated
--> Running transaction check
--> Processing Dependency: httpd-mmn = 20020903 for package: mod_dav_svn
--> Processing Dependency: subversion = 1.1.4-2.ent for package: mod_dav_svn
--> Processing Dependency: libsvn_delta-1.so.0 for package: mod_dav_svn
--> Processing Dependency: libsvn_fs-1.so.0 for package: mod_dav_svn
--> Processing Dependency: libsvn_subr-1.so.0 for package: mod_dav_svn
--> Processing Dependency: libsvn_repos-1.so.0 for package: mod_dav_svn
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Package subversion.i386 0:1.1.4-2.ent set to be updated
--> Running transaction check
--> Processing Dependency: httpd-mmn = 20020903 for package: mod_dav_svn
--> Processing Dependency: libaprutil-0.so.0 for package: subversion
--> Processing Dependency: libapr-0.so.0 for package: subversion
--> Finished Dependency Resolution
Error: Missing Dependency: httpd-mmn = 20020903 is needed by package mod_dav_svn
Error: Missing Dependency: libaprutil-0.so.0 is needed by package subversion
Error: Missing Dependency: libapr-0.so.0 is needed by package subversion
Keeping in-line with the RedHat / CentOS releases (as you have previously suggested) is fine with me. Any support you can provide for subversion and mod_dav_svn so they can be installed when using your libapr and httpd packages will be greatly appreciated.
I'll look into subversion, as well as the few "mod_" packages that are separate from httpd, sometime this week. I've got the other PHP packages built for 32-bit systems but 64-bit looks like it's going to have to wait until tomorrow (I've tried SSH'ing into my notebook at work but it doesn't seem to be turned on). As such, I'm going to wait to push any of them to the repo until I get both working.
"All the effort you put in to this is very much appreciated."
"Any support you can provide for subversion and mod_dav_svn so they can be installed when using your libapr and httpd packages will be greatly appreciated."
Same here on both counts. Your Apache 2.2.4, PHP 5.2.1, and MySQL 5 packages have proved invaluable to me and complementary subversion packages would be great. Thanks for working to provide these great resources -- it's appreciated.
Jason: Thanks for building a great repo. I am in the same boat as Alex/Jesse with subversion. Your repo made upgrading to mySQL5 and PHP 5.2.x a breeze. My developer is happy but he needs to push his code to subversion and he wants subversion 1.4.3. Sending you appreciation from Switzerland.
I've been bitten by the same subversion issue as the others here. I built my Apache-MySQL-PhP setup following your tutorials, but subversion issues these complaints during install (well, yum spits these out...):
Error: Missing Dependency: libaprutil-0.so.0 is needed by package subversion
Error: Missing Dependency: libapr-0.so.0 is needed by package subversion
If I interpreted one of the posts above correctly, I could uninstall the Apache module I built with rpm -e, then grab the standard CentOS one via yum, and go from there. Does that sound correct?
Much appreciate your tutorials.
The subversion packages that come with RHEL & CentOS will NOT work on my upgraded builds of apr & httpd. Instead, you can use the upgraded versions that are included in my repository. As of an hour ago they were the same version that shipped with EL4, however, I just updated the binaries to 1.4.3.
http://www.jasonlitka.com/2007/04/23/subversion-packages-in-repo-upgraded-143/
Thanks for the quick response.
Will the subversion package in your repo play nicely with the apache setup for version 2.2.3 you detailed here - http://www.jasonlitka.com/2006/11/24/upgrading-apache-httpd-rhel4-centos4/ - or do I need to remove that and grab your latest apache package?
Thanks again.
Update: since I'm a seasoned linux stud now, I managed to answer my own question (and the answer is yes).
;-P
Thanks again Jason.
How do I get rid of this error:
Unresolvable chain of dependencies:
php-pear-4.3.9-3.22.5 requires php = 4.3.9-3.22.5
Reading previous posts leaves me confused. I cannot install anything now (httpd, mysql etc.). I did do the required "sudo rpm -Uvh ~/dl/sqlite*" from sqlite RPMs.
I started with a standard RHEL4.
Another question: Trying to install other RPMs results in errors about shared libraries, for example:
libmysqlclient.so.14(libmysqlclient_14) is needed by ruby-mysql-2.7-1.el4.i386
How do I get those .so's? Is it a matter of guessing what their "parent" RPM is and installing that?
Mike
Heres what I needed to do to solve the above Pear issue:
starting from the very beginning, fresh RHEL4:
# download sqlite* RPMs:
http://isoredirect.centos.org/centos/4/os/i386/CentOS/RPMS/sqlite-3.3.3-1.2.i386.rpm
http://isoredirect.centos.org/centos/4/os/i386/CentOS/RPMS/sqlite-devel-3.3.3-1.2.i386.rpm
sudo rpm -–import http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka
sudo rpm -Uvh ~/dl/sqlite*
# Add these 2 lines to /etc/sysconfig/rhn/sources
# Enable Jason’s Utter Ramblings Repo
yum utterramblings http://www.jasonlitka.com/media/EL4/$ARCH
# use Jason's repo and up2date to install software:
sudo rpm -e php-pear-4.3.9-3.8 php-4.3.9-3.8 php-ldap-4.3.9-3.8
sudo up2date apr-util php-pear php httpd mysql ruby subversion
Mike
After installing mysql using up2date (from standard RHEL 4), I do not seem to have the init.d script or the ditectroties (/var/lib/mysql/...) created. Is there a further ropm I need to install?
Heres whats installed:
$ rpm -qa | grep -i mysql
mysqlclient10-3.23.58-4.RHEL4.1
mysql-5.0.41-jason.1
perl-DBD-MySQL-2.9004-3.1
MySQL-python-1.0.0-1.RHEL4.1
mysqlclient14-4.1.14-4.2.1.jason.1
mysql-devel-5.0.41-jason.1
libdbi-dbd-mysql-0.6.5-10.RHEL4.1
It appears I have 2 versions of mysqlcient - seem sfishy to me.
Any ideas here?
Mike
@Mike,
To the first comment, you may need to remove the old php-* packages before you can install the updated versions from my repo. It seems that some systems have this problem and some don't.
As to the last comment, you don't have the mysqld scripts or folders because you don't have "mysql-server" installed. Install that package and you should be OK.
Finally, as to the two versions of "mysqlclient", technically, you have three (because "mysql" includes "mysqlclient15"). This is OK and just means that some of the programs on your system were compiled for an older version of MySQL and need the older client libraries.
Thanks so much for setting up and maintaining your yum repository. I maintain my own dedicated host, my unix/linux skills are old and rusty, and sites like this *really* help me out.
I'm trying to update mysql to 5.0 (from 4.1.20-1 or something similar). I think I've got your site correctly configured now, except I'm running into a dependency complaint that I hope you can help with.
When I run (as root): "yum install mysql", I see the following result:
Setting up Install Process
Setting up repositories
Reading repository metadata in from local files
Parsing package install arguments
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Package mysql.i386 0:5.0.41-jason.1 set to be updated
--> Running transaction check
--> Processing Dependency: MySQL-client for package: MySQL-bench
--> Finished Dependency Resolution
Error: Missing Dependency: MySQL-client is needed by package MySQL-bench
I *think* that I already installed mysqlclient from your repository, I ran "yum install mysqlclient*" and got the following:
Setting up Install Process
Setting up repositories
Reading repository metadata in from local files
Parsing package install arguments
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for mysqlclient10 to pack into transaction set.
mysqlclient10-3.23.58-9.2 100% |=========================| 5.3 kB 00:00
---> Package mysqlclient10.i386 0:3.23.58-9.2.1.jason.1 set to be updated
---> Downloading header for mysqlclient10-devel to pack into transaction set.
mysqlclient10-devel-3.23. 100% |=========================| 6.7 kB 00:00
---> Package mysqlclient10-devel.i386 0:3.23.58-9.2.1.jason.1 set to be updated
---> Downloading header for mysqlclient14-devel to pack into transaction set.
mysqlclient14-devel-4.1.1 100% |=========================| 7.7 kB 00:00
---> Package mysqlclient14-devel.i386 0:4.1.14-4.2.1.jason.1 set to be updated
---> Downloading header for mysqlclient14 to pack into transaction set.
mysqlclient14-4.1.14-4.2. 100% |=========================| 4.4 kB 00:00
---> Package mysqlclient14.i386 0:4.1.14-4.2.1.jason.1 set to be updated
--> Running transaction check
--> Processing Dependency: libssl.so.4 for package: mysqlclient14
--> Processing Dependency: libcrypto.so.4 for package: mysqlclient14
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Package openssl097a.i386 0:0.9.7a-3.1 set to be updated
--> Running transaction check
Dependencies Resolved
=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
mysqlclient10-devel i386 3.23.58-9.2.1.jason.1 utterramblings 48 k
mysqlclient14 i386 4.1.14-4.2.1.jason.1 utterramblings 1.7 M
mysqlclient14-devel i386 4.1.14-4.2.1.jason.1 utterramblings 91 k
Updating:
mysqlclient10 i386 3.23.58-9.2.1.jason.1 utterramblings 458 k
Installing for dependencies:
openssl097a i386 0.9.7a-3.1 updates-released 776 k
Transaction Summary
=============================================================================
Install 4 Package(s)
Update 1 Package(s)
Remove 0 Package(s)
Total download size: 3.0 M
Is this ok [y/N]: y
Downloading Packages:
(1/5): mysqlclient10-3.23 100% |=========================| 458 kB 00:00
(2/5): openssl097a-0.9.7a 100% |=========================| 776 kB 00:01
(3/5): mysqlclient10-deve 100% |=========================| 48 kB 00:00
(4/5): mysqlclient14-deve 100% |=========================| 91 kB 00:00
(5/5): mysqlclient14-4.1. 100% |=========================| 1.7 MB 00:01
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: openssl097a ######################### [1/6]
Installing: mysqlclient14 ######################### [2/6]
Updating : mysqlclient10 ######################### [3/6]
Installing: mysqlclient10-devel ######################### [4/6]
Installing: mysqlclient14-devel ######################### [5/6]
Cleanup : mysqlclient10 ######################### [6/6]
Installed: mysqlclient10-devel.i386 0:3.23.58-9.2.1.jason.1 mysqlclient14.i386 0:4.1.14-4.2.1.jason.1 mysqlclient14-devel.i386 0:4.1.14-4.2.1.jason.1
Dependency Installed: openssl097a.i386 0:0.9.7a-3.1
Updated: mysqlclient10.i386 0:3.23.58-9.2.1.jason.1
Complete!
What am I missing (please be gentle)?
Me again.
So I found (using "rpm -qa | grep -i mysql") that I had MySQL-bench-5.0.37-0 and MySQL-client-5.0.37-0 hanging around from yesterday's flailings. I removed them and re-ran "yum install mysql". This time the install finished without complaint.
Now I have to figure out how to make mysqld do the right thing, when I just type "mysql" from the command line I get "ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)". I assume this is a mysqld configuration error.
"mysql" is not the MySQL Server, it is simply the client app. You'll need to install "mysql-server" and then start it with "service mysqld start".
You have to have mysql-devel to compile PDO_MYSQL.
Hi Jason, great Job!
I am not able to add your repo with up2date, i get this error
# up2date -u
There was a fatal error communicating with the server. The message was:
An HTTP error occurred:
URL: http://www.jasonlitka.com/media/EL4/i386/headers/header.info
Status Code: 404
Error Message: Not Found
Can you please help me
Many many thanks