说到Linux系统里的包管理工具,yum(Yellowdog Updater, Modified)绝对算是RPM系发行版中的老牌选手。它功能扎实、生态成熟,日常运维中几乎每天都会跟它打交道。下面就把那些最常用、也最实用的操作技巧梳理一遍,从基础到进阶,希望能帮你把yum用得更顺手。

基本操作
-
搜索软件包
想找一个包但不确定全名?直接用search命令就行:yum search package_name它会列出所有包含该关键字的软件包,省时省力。
-
安装软件包
一条命令搞定安装和依赖:yum install package_name系统会自动解决依赖关系,装完就能用。
-
更新软件包
想把某个包升级到最新版?或者干脆全系统升级?yum update都能办:yum update package_name如果不指定包名,则更新所有可更新的软件包。这个命令在日常维护中间出镜率很高。
-
卸载软件包
不需要的东西就删掉,连带它的依赖一起清理:yum remove package_name -
列出已安装的软件包
想看看系统里都装了哪些包?很简单:yum list installed -
列出可用的软件包
想知道仓库里还有哪些包可以装?a vailable参数会告诉你:yum list a vailable -
查看软件包信息
装之前想确认包的版本、大小、描述?用info:yum info package_name -
清理缓存
yum下载的包和元数据都会缓存在本地,时间长了会占用不少磁盘空间。一条命令清空所有缓存:yum clean all
高级操作
-
查看操作历史
用过yum之后的每一次安装、更新、删除,系统都记录着。用history可以查看完整的操作日志:yum history每一条记录都有一个事务ID,方便后续撤销。
-
撤销最近的yum操作
手滑装了不该装的东西?别慌,用事务ID就能回滚:yum history undo transaction_id这功能在误操作时特别救命。
-
安装特定版本的软件包
有些场景下需要装一个旧版本(比如兼容性问题),直接指定版本号就好:yum install package_name-version -
排除特定软件包
安装或更新时,如果不想让某个包被连带更新,可以用--exclude参数把它踢出去:yum install package_name --exclude=package_to_exclude -
检查更新但不执行
有时候只想看看系统有哪些包可以升级,而不实际更新。这时check-update就派上用场了:yum check-update -
更新所有软件包
如果要一键更新整个系统,不加包名的update就是最直接的方式:yum update -
降级软件包
新版本有bug?需要回退?downgrade命令可以把包降回指定版本:yum downgrade package_name-version -
查看软件包详细信息
info不仅能看基本描述,还能告诉你依赖关系、文件列表、changelog等深度信息:yum info package_name
注意事项
- 执行
yum命令需要足够的权限,通常得用sudo或者直接以root身份运行。 - 操作之前,建议先把本地缓存更新一下,确保拿到的软件包信息是最新的:
yum clean all yum makecache
掌握了这些技巧,日常的包管理工作会顺手很多。不管是日常安装软件、系统升级,还是遇到问题需要回滚,都能快速搞定。