YUM使用(转)

一、用YUM升级软件
    打开终端,切换到root用户,yum的操作大都须有超级用户的权限。
    首先,yum update,这一步是必须的,yum会从服务器的header目录下载rpm的header,放在本地的缓存中,这可能会花费一定的时间,但比起yum 给我们带来方便,这些时间的花费又算的了什么呢?header下载完毕,yum会判断是否有可更新的软件包,如果有,它会询问你的意见,是否更新,还是说 y吧,把系统始终up to date总是不错的,这时yum开始下载软件包并使用调用rpm安装,这可能要一定时间,取决于要更新软件的数目和网络状况,万一网络断了,也没关系,再 进行一次就可以了。升级完毕,以后每天只要使用yum check-update检查一下有无跟新,如果有,就用yum update进行跟新,时刻保持系统为最新,堵住一切发现的漏洞。

    用yum update packagename 对某个单独包进行升级。
yum还有一个升级指令,yum upgrade,它的初衷是更换废弃的包,但现在通常用来进行重大的升级,如把发行版整个升高一个版本,由于牵动太大,还不如安装新的系统。
1.列出所有可更新的软件清单
命令:yum check-update
2.安装所有更新软件
命令:yum update
3.仅安装指定的软件
命令:yum install <package_name>
4.仅更新指定的软件
命令:yum update <package_name>
5.列出所有可安裝的软件清单
命令:yum list
二、用YUM安装删除软件
    装了系统添加删除软件是常事,yum同样可以胜任这一任务,只要软件是rpm安装的。
安装的命令是,yum install xxx,yum会查询数据库,有无这一软件包,如果有,则检查其依赖冲突关系,如果没有依赖冲突,那么最好,下载安装;如果有,则会给出提示,询问是否要同时安装依赖,或删除冲突的包,你可以自己作出判断。
删除的命令是,yum remove xxx,同安装一样,yum也会查询数据库,给出解决依赖关系的提示。
1.用YUM安装软件包
命令:yum install <package_name>
2.用YUM删除软件包
命令:yum remove <package_name>
三、用YUM查询软件信息
    我们常会碰到这样的情况,想要安装一个软件,只知道它和某方面有关,但又不能确切知道它的名字。这时yum的查询功能就起作用了。你可以用yum search keyword这样的命令来进行搜索,比如我们要则安装一个Instant Messenger,但又不知到底有哪些,这时不妨用yum search messenger这样的指令进行搜索,yum会搜索所有可用rpm的描述,列出所有描述中和messeger有关的rpm包,于是我们可能得到 gaim,kopete等等,并从中选择。
有时我们还会碰到安装了一个包,但又不知道其用途,我们可以用yum info packagename这个指令来获取信息。
1.使用YUM查找软件包
命令:yum search <keyword>
2.列出所有可安装的软件包
命令:yum list
3.列出所有可更新的软件包
命令:yum list updates
4.列出所有已安装的软件包
命令:yum list installed
5.列出所有已安装但不在 Yum Repository 內的软件包
命令:yum list extras
6.列出所指定的软件包
命令:yum list <package_name>
7.使用YUM获取软件包信息
命令:yum info <package_name>
8.列出所有软件包的信息
命令:yum info
9.列出所有可更新的软件包信息
命令:yum info updates
10.列出所有已安裝的软件包信息
命令:yum info installed
11.列出所有已安裝但不在 Yum Repository 內的软件包信息
命令:yum info extras
12.列出软件包提供哪些文件
命令:yum provides <package_name>
四、清除YUM缓存
yum会把下载的软件包和header存储在cache中,而不会自动删除。如果我们觉得它们占用了磁盘空间,可以使用yum clean指令进行清除,更精确的用法是yum clean headers清除header,yum clean packages清除下载的rpm包,yum clean all一股脑儿端
1.清除缓存目录(/var/cache/yum)下的软件包
命令:yum clean packages
2.清除缓存目录(/var/cache/yum)下的 headers
命令:yum clean headers
3.清除缓存目录(/var/cache/yum)下旧的 headers
命令:yum clean oldheaders
4.清除缓存目录(/var/cache/yum)下的软件包及旧的headers
命令:yum clean, yum clean all (= yum clean packages; yum clean oldheaders)
附:
由于 Fedora 的 yum预设的更新主机在外国,也就是 Fedora 的官方更新主机。连线到国外下载,速度之慢,可想而知....在这里,我们可以修改 yum 的配置文件把连线主机,改成国内各大学的 Linux 更新主机,如此速度就会比较快。
------------------------
/etc/yum.conf
-----------------------
[base]
name=Fedora Core $releasever - $basearch - Base baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/$releasever/$basearch/os/
[updates-released]
name=Fedora Core $releasever - $basearch - Released Updates baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/updates/$releasever/$basearch/
注意红色的地方,就是 yum 会去连接的更新主机网址
改成以下,可自由选择搭配
base 主机:
(大小写有差别,请先实际连接测试,看看服务器是否仍存在)
http://ftp.isu.edu.tw/pub/Linux/Fed...core/1/i386/os/
http://linux.nctu.edu.tw/ftp/dists/...core/1/i386/os/
ftp://ftp.isu.edu.tw/pub/Linux/Fedo...core/1/i386/os/
ftp://linux.nctu.edu.tw/dists/fedora/core/1/i386/os/
ftp://linux.sinica.edu.tw/fedora/linux/core/1/i386/os/
updates 主机:
(大小写有差别,请先实际测试连接,看看服务器是否仍存在)
http://ftp.isu.edu.tw/pub/Linux/Fed...updates/1/i386/
http://linux.nctu.edu.tw/ftp/dists/...updates/1/i386/
ftp://ftp.isu.edu.tw/pub/Linux/Fedo...updates/1/i386/
ftp://linux.nctu.edu.tw/dists/fedor...updates/1/i386/
ftp://linux.sinica.edu.tw/fedora/li...updates/1/i386/
路径中的 /1/ 是代表 core 1如是使用core 2,请自行改成 /2/改完后保存,不必重启服务,立刻生效
然后 yum 的更新速度就會飞快了
Fedora core 3 和 4 的 yum base 配置设定法:
FC3 和 FC4 的 yum base 配置设定,有别于之前 FC2
并不是在 /etc/yum.conf 中设定
设定方法如下:
cd /etc/yum.repos.d/
vi fedora.repo (设定 base 主机,仅列出需要修改处)
baseurl=http://ftp.isu.edu.tw/pub/Linux/Fedora/linux/core/$releasever/$basearch/os/
#mirrorlist=http://fedora.redhat.com/download/mirrors/fedora-core-$releasever
vi fedora-updates.repo (设定 update 主机,仅列出需要修改处)
baseurl=http://ftp.isu.edu.tw/pub/Linux/Fedora/linux/core/updates/$releasever/$basearch/
#mirrorlist=http://fedora.redhat.com/download/mirrors/updates-released-fc$releasever
说明:
1.义守大学是 Fedora 官方认可的台湾区mirror 站,所以这里设定义守大学的主机。
2.主要的Repository,大多数也提供apt支持。
http://www.fedora.us
http://rpm.livna.org
http://dag.wieers.com ;#Dag的apt/yum repository
http://freshrpms.net/
http://rpms.xcyb.org/ ;#k3b
http://apt.kde-redhat.org/ ;kde-redhat
http://atrpms.net/ ;#ATrpms
http://dries.studentenweb.org/ayo/index.html ;#Dries APT/YUM RPM Repository
http://newrpms.sunsite.dk/ ;#NewRPMS
http://www.fedoralegacy.org ;#Redhat和Fedora遗产项目支持,Core 1也已经进入遗产了,汗。
注意多个repository共存可能带来的冲突。
Trackback: http://tb.blog.youkuaiyun.com/TrackBack.aspx?PostId=660481

 

 

原帖地址:http://hi.baidu.com/8076076/blog/item/4d62079554c4a043d1135e85.html

 

 


<think>好的,用户想知道在Debian系统上如何使用yum包管理器,以及相关的兼容性问题。首先,我需要回顾一下Debian和yum的基本情况。Debian是基于Debian的发行版,通常使用APT和dpkg来管理软件包,而yum是Red Hat系列如CentOS、Fedora等使用的包管理器。用户可能混淆了不同发行版的工具,或者有特殊需求需要用到yum。 首先,我应该指出Debian默认不支持yum,因为它们属于不同的Linux分支。Debian使用APT,而yum用于RPM-based系统。接下来,用户可能想知道是否有可能在Debian上安装yum。这时候需要说明虽然技术上可能,但强烈不建议这样做,因为依赖关系和软件包格式不同,可能导致系统不稳定。 然后,用户可能需要替代方案。比如,如果用户想使用yum的某些功能,可以推荐在Debian中使用等效的APT命令,例如apt-get install代替yum install。另外,如果用户需要在Debian中管理RPM包,可以提到alien这样的工具,但同样要警告兼容性问题。 此外,用户可能对Docker或其他容器技术感兴趣,以在Debian环境中运行基于RPM的系统,这样可以在容器内使用yum而不影响宿主机。这也是一个可行的解决方案。 还需要检查提供的引用内容。引用[3]提到Ubuntu是基于Debian的,而引用[4]指出Debian中使用的是APT,而yum属于不同的系统。引用[2]提到在Fedora中使用yum获取ZFS,这与Debian无关。因此,需要强调Debian和yum的不兼容性,并引导用户使用正确的工具。 最后,生成相关问题时要考虑用户可能的后续疑问,比如替代工具、处理RPM包的方法,或者容器化解决方案。确保问题覆盖兼容性、替代方案和实际应用场景。</think>在Debian系统中使用yum包管理器需要特别注意兼容性问题,以下是具体说明: ### 1. **yum与Debian的兼容性** yum是专为RPM-based系统设计的包管理器(如Red Hat/CentOS/Fedora),而Debian系列使用DEB软件包格式和APT工具链。两者的软件包管理系统存在以下根本性差异: - **软件包格式**:Debian使用`.deb`格式,yum管理的是`.rpm`格式[^4] - **依赖关系解析**:APT和yum的依赖处理机制不同 - **软件仓库架构**:Debian通过`sources.list`配置源,yum使用`.repo`文件 ### 2. **在Debian中使用yum的方法** 虽然**不推荐**在生产环境使用,但可通过以下步骤实验性安装: ```bash # 安装alien工具用于格式换 sudo apt-get install alien # 下载yum的RPM包并换格式 wget http://mirror.centos.org/centos/8/BaseOS/x86_64/os/Packages/yum-4.7.0-4.el8.noarch.rpm sudo alien -d yum-*.rpm # 安装生成的DEB包 sudo dpkg -i yum_*.deb ``` ⚠️ 注意:这会导致系统出现不可预测的兼容性问题,可能破坏原有软件依赖关系[^3] ### 3. **推荐替代方案** 建议使用Debian原生的APT工具完成对应操作: | yum命令 | APT等效命令 | 功能描述 | |------------------|--------------------------|----------------------------| | `yum install` | `apt-get install` | 安装软件包 | | `yum remove` | `apt-get remove` | 卸载软件包 | | `yum update` | `apt-get update && apt-get upgrade` | 更新系统和软件 | | `yum search` | `apt-cache search` | 搜索软件包 | ### 4. **特殊需求解决方案** 如果确实需要管理RPM软件包: 1. 使用`alien`换格式(存在兼容风险): ```bash sudo alien --to-deb package.rpm sudo dpkg -i package.deb ``` 2. 通过容器技术隔离运行: ```bash # 安装Docker后运行CentOS容器 sudo docker run -it centos:8 /bin/bash # 在容器内正常使用yum ``` ### 5. **兼容性风险说明** 混合使用不同包管理系统可能导致: - 软件依赖冲突 - 系统服务异常 - 安全更新失效 - 软件版本混乱 建议参考Debian官方文档使用正确的APT工作流,如需混合环境应使用虚拟机或容器隔离[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值