Linux中yum管理工具被误删的解决办法

04-05

今天在安装程序时,发现有一个插件未安装,我就随手敲了一个命令,看都没看

复制代码

代码如下:

yum remove yum

然后就杯具了...

复制代码

代码如下:

[root@localhost ~]# yum
-bash: /usr/bin/yum: No such file or directory

这个粗心的手误倒不至于让整个系统瘫痪,yum 却无法使用了。于是,我试着折腾了一番

复制代码

代码如下:

rpm -ivh --nodeps <a href="http://mirrors.163.com/centos/5/os/x86_64/CentOS/yum-fastestmirror-1.1.16-14.el5.centos.1.noarch.rpm">http://mirrors.163.com/centos/5/os/x86_64/CentOS/yum-fastestmirror-1.1.16-14.el5.centos.1.noarch.rpm</a>
rpm -ivh --nodeps <a href="http://mirrors.163.com/centos/5/os/x86_64/CentOS/yum-metadata-parser-1.1.2-3.el5.centos.x86_64.rpm">http://mirrors.163.com/centos/5/os/x86_64/CentOS/yum-metadata-parser-1.1.2-3.el5.centos.x86_64.rpm</a>
rpm -ivh --nodeps <a href="http://mirrors.163.com/centos/5/os/x86_64/CentOS/yum-3.2.22-26.el5.centos.noarch.rpm[/code">http://mirrors.163.com/centos/5/os/x86_64/CentOS/yum-3.2.22-26.el5.centos.noarch.rpm[/code</a>]
关于rpm --nodeps的解释
[code]
--nodeps don't verify package dependencies

接下来,再次尝试输入yum,结果再次出现莫名错误

复制代码

代码如下:

[root@localhost ~]# yum
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:

libxml2.so.2: cannot open shared object file: No such file or directory

Please install a package which provides this module, or
verify that the module is installed correctly.

It's possible that the above module doesn't match the
current version of Python, which is:
2.4.3 (#1, Nov 11 2010, 13:30:19)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-48)]

If you cannot solve this problem yourself, please go to
the yum faq at:
<a href="http://wiki.linux.duke.edu/YumFaq">http://wiki.linux.duke.edu/YumFaq</a>

因为yum调用的是python,运行 Python,试下是否可行

复制代码

代码如下:

[root@localhost~]# python
Python 2.4.3 (#1, Nov 11 2010, 13:30:19)
[GCC 4.1.2 20080704 Red Hat 4.1.2-48)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import yum
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 54, in ?
import transactioninfo
File "/usr/lib/python2.4/site-packages/yum/transactioninfo.py", line 31, in ?
from sqlitesack import YumAvailablePackageSqlite
File "/usr/lib/python2.4/site-packages/yum/sqlitesack.py", line 26, in ?
import yumRepo
File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 32, in ?
import sqlitecachec
File "/usr/lib64/python2.4/site-packages/sqlitecachec.py", line 19, in ?
import _sqlitecache
ImportError: libxml2.so.2: cannot open shared object file: No such file or directory
>>>

提示缺少libxml2.so.2,安装一下试试

复制代码

代码如下:

rpm -ivh <a href="http://mirrors.163.com/centos/5/os/x86_64/CentOS/libxml2-2.6.26-2.1.2.8.x86_64.rpm[/code">http://mirrors.163.com/centos/5/os/x86_64/CentOS/libxml2-2.6.26-2.1.2.8.x86_64.rpm[/code</a>]
再次测试运行下yum命令,结果正常了,大喜
[code]
[root@localhost ~]# yum
Loaded plugins: fastestmirror
You need to give some command
usage: yum [options] COMMAND

List of Commands:

check-update Check for available package updates
clean Remove cached data
deplist List a package's dependencies
downgrade downgrade a package
erase Remove a package or packages from your system
groupinfo Display details about a package group
groupinstall Install the packages in a group on your system
grouplist List available package groups
groupremove Remove the packages in a group from your system
help Display a helpful usage message
info Display details about a package or group of packages
install Install a package or packages on your system
list List a package or groups of packages
localinstall Install a local RPM
makecache Generate the metadata cache
provides Find what package provides the given value
reinstall reinstall a package
repolist Display the configured software repositories
resolvedep Determine which package provides the given dependency
search Search package details for the given string
shell Run an interactive yum shell
update Update a package or packages on your system
upgrade Update packages taking obsoletes into account

options:
-h, --help show this help message and exit
-t, --tolerant be tolerant of errors
-C run entirely from cache, don't update cache
-c [config file] config file location
-R [minutes] maximum command wait time
-d [debug level] debugging output level
--showduplicates show duplicates, in repos, in list/search commands
-e [error level] error output level
-q, --quiet quiet operation
-v, --verbose verbose operation
-y answer yes for all questions
--version show Yum version and exit
--installroot=[path] set install root
--enablerepo=[repo] enable one or more repositories (wildcards allowed)
--disablerepo=[repo] disable one or more repositories (wildcards allowed)
-x [package], --exclude=[package]
exclude package(s) by name or glob
--disableexcludes=[repo]
disable exclude from main, for a repo or for
everything
--obsoletes enable obsoletes processing during updates
--noplugins disable Yum plugins
--nogpgcheck disable gpg signature checking
--disableplugin=[plugin]
disable plugins by name
--enableplugin=[plugin]
enable plugins by name
--skip-broken skip packages with depsolving problems
--color=COLOR control whether color is used

Plugin Options:

最后,赶紧更新一下系统吧

复制代码

代码如下:

yum update

好了 这样yum问题就完全解决了!