优选主流主机商
任何主机均需规范使用

Linux系统yum工具意外删除恢复指南:详解修复步骤与预防措施

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

代码如下:

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问题就完全解决了!

未经允许不得转载:搬瓦工中文网 » Linux系统yum工具意外删除恢复指南:详解修复步骤与预防措施