Installing YUM on a (dv) Dedicated-Virtual Server
YUM is a package manager for CentOS, the operating system provided with your (dv) Dedicated-Virtual Server. It allows automatic software installation, including software dependencies, and updates. YUM is the recommended method for installing software on your server.
End of Life Warning
This service has a pending End of Life. Please move to a current service as soon as possible. For more information, please see: (dv) Dedicated-Virtual 4.0: Migration Information.
READ ME FIRST
Please keep in mind that software that does not come installed by default on your (dv) Dedicated-Virtual Server is not supported by (mt) Media Temple. This includes YUM itself, although the following instructions have been tested on a standard (dv) Dedicated-Virtual Server. It also includes software that can be installed with YUM.
Updating, uninstalling, or reconfiguring core services on your (dv) Dedicated-Virtual Server can break it. We highly recommend making a full backup of your server before testing configuration changes.
(mt) Media Temple makes a best effort to ensure the accuracy of all content in this article. However, it is the nature of software for new versions to be released periodically. Also, these instructions may not work on a non-default (dv) Dedicated-Virtual Server. Please feel free to edit this article if you notice any inaccuracies, keeping in mind that it should reflect best practices for a default (dv) Dedicated-Virtual Server.
For additional help with YUM in a Plesk environment, please consult the Parallels forums.
(dv) Dedicated-Virtual Server 4.0 - YUM already installed
YUM comes pre-installed on your (dv) Dedicated-Virtual Server 4.0.
For basic YUM help, see the Use YUM section below.
For your (dv) 3.5
Please see this (mt) Community Wiki article for details: (dv) 3.5:Install YUM.
YUM has several options, but the basic use is installing software:
yum install PKGNAME
Substitute your desired package for PKGNAME (example: yum install postgresql).
This will download and install the most recent version of the specified software package, including any dependencies.
YUM also removes packages:
yum remove PKGNAME
Documentation and resources
Python RPM libraries
If you don't install the Developer Tools first, your RPM libraries will be out of date. If you want to install YUM but not the Developer Tools, you may want to run the following to make sure you have the YUM RPM libraries:
rpm -Uvh http://mirror.centos.org/centos/5/os/i386/CentOS/yum-3.2.22-20.el5.centos.noarch.rpm rpm -Uvh http://mirror.centos.org/centos/5/os/i386/CentOS/yum-3.2.22-26.el5.centos.noarch.rpm rpm -Uvh http://mirror.centos.org/centos/5/os/i386/CentOS/yum-fastestmirror-1.1.16-13.el5.centos.noarch.rpm rpm -Uvh http://mirror.centos.org/centos/5/os/i386/CentOS/yum-fastestmirror-1.1.16-14.el5.centos.1.noarch.rpm
Specifically, your Python RPM libraries will be out of date. You will get an error like this if you try to do anything with YUM:
/usr/lib/python2.4/site-packages/rpm/_rpmmodule.so: undefined symbol: rpmdbCheckTerminate
You should be able to update rpm-python from one of the following mirrors (choose one):
rpm -Uvh --force http://autoinstall.plesk.com/PSA9/update-rpm-RedHat-el5-i386/9.0.0/rpm-python-4.4.2-48.el5.i386.rpm
rpm -Uvh http://mirror.centos.org/centos/5/os/i386/CentOS/popt-188.8.131.52-22.el5.i386.rpm rpm -Uvh http://mirror.centos.org/centos/5/os/i386/CentOS/rpm-libs-184.108.40.206-22.el5.i386.rpm rpm -Uvh http://mirror.centos.org/centos/5/os/i386/CentOS/rpm-220.127.116.11-22.el5.i386.rpm
- See serverfault.com for a troubleshooting discussion.
yum update is not recommended
Running yum update may install software versions on your server that are incompatible with Plesk. If you want to try it, you are welcome to - but you may have to do extensive (unsupported) reconfiguring, and a (ve) Server may be more cost-effective.
One particular issue that you may encounter after running yum update is that your MySQL server will not restart. See Upgrading the software on your (dv) Dedicated-Virtual Server for a workaround for this particular issue and a few others - but keep in mind that this is still unsupported.
For further reading: