yum 命令
Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
yum 语法
- yum [options] [command] [package ...]
- options:可选,选项包括-h(帮助),-y(当安装过程提示选择全部为"yes"),-q(不显示安装的过程)等等。
- command:要进行的操作。
package操作的对象。
选项 -h:显示帮助信息; -y:对所有的提问都回答“yes”; -c:指定配置文件; -q:安静模式; -v:详细模式; -d:设置调试等级(0-10); -e:设置错误等级(0-10); -R:设置yum处理一个命令的最大等待时间; -C:完全从缓存中运行,而不去下载或者更新任何头文件。
参数
- #常的命令
- install:安装rpm软件包;
- update:更新rpm软件包;
- check-update:检查是否有可用的更新rpm软件包;
- remove:删除指定的rpm软件包;
- list:显示软件包的信息;
- search:检查软件包的信息;
- info:显示指定的rpm软件包的描述信息和概要信息;
- clean:清理yum过期的缓存;
- shell:进入yum的shell提示符;
- resolvedep:显示rpm软件包的依赖关系;
- localinstall:安装本地的rpm软件包;
- localupdate:显示本地rpm软件包进行更新;
- deplist:显示rpm软件包的所有依赖关系。
-
- alias 列出或创建命令别名
- autoremove 删除所有原先因为依赖关系安装的不需要的软件包
- check 在包数据库中寻找问题
- check-update 检查是否有软件包升级
- clean 删除已缓存的数据
- deplist 列出软件包的依赖关系和提供这些软件包的源
- distro-sync 同步已经安装的软件包到最新可用版本
- downgrade 降级包
- group 显示或使用组信息
- help 显示一个有帮助的用法信息
- history 显示或使用事务历史
- info 显示关于软件包或软件包组的详细信息
- install 向系统中安装一个或多个软件包
- list 列出一个或一组软件包
- makecache 创建元数据缓存
- mark 在已安装的软件包中标记或者取消标记由用户安装 的软件包。
- module 与模块交互。
- provides 查找提供指定内容的软件包
- reinstall 重装一个包
- remove 从系统中移除一个或多个软件包
- repolist 显示已配置的软件仓库
- repoquery 搜索匹配关键字的软件包
- repository-packages 对指定仓库中的所有软件包运行命令
- search 在软件包详细信息中搜索指定字符串
- shell 运行交互式的DNF终端
- swap 运行交互式的 DNF 终端以删除或者安装 spec 描述文件
- updateinfo 显示软件包的参考建议
- upgrade 升级系统中的一个或多个软件包
- upgrade-minimal 升级,但只有“最新”的软件包已修复可能影响你 的系统的问题
插件命令列表:
- builddep Install build dependencies for package or spec file
- changelog 查看软件包的改变日志数据
- config-manager 管理 dnf 配置选项和软件仓库
- copr 与 Copr 仓库交互
- debug-dump 转储已安装的 RPM 软件包信息至文件
- debug-restore 恢复调试用转储文件中的软件包记录
- debuginfo-install 安装调试信息软件包
- download 下载软件包至当前目录
- needs-restarting 判断所升级的二进制文件是否需要重启
- playground 与 Playground 仓库交互。
- repoclosure 显示仓库中未被解决的依赖关系的列表
- repodiff 列出两组仓库中的不同
- repograph 以点线图方式输出完整的软件包依赖关系图
- repomanage 管理 RPM 软件包目录
- reposync 下载远程仓库中的全部软件包
安装
- yum install #全部安装
- yum install package1 #安装指定的安装包package1
- yum groupinsall group1 #安装程序组group1
更新和升级
- yum update #全部更新
- yum update package1 #更新指定程序包package1
- yum check-update #检查可更新的程序
- yum upgrade package1 #升级指定程序包package1
- yum groupupdate group1 #升级程序组group1
查找和显示
- yum info package1 #显示安装包信息package1
- yum list #显示所有已经安装和可以安装的程序包
- yum list package1 #显示指定程序包安装情况package1
- yum groupinfo group1 #显示程序组group1信息yum search string 根据关键字string查找安装包
删除程序
- yum remove | erase package1 #删除程序包package1
- yum groupremove group1 #删除程序组group1
- yum deplist package1 #查看程序package1依赖情况
清除缓存
- yum clean packages #清除缓存目录下的软件包
- yum clean headers #清除缓存目录下的 headers
- yum clean oldheaders #清除缓存目录下旧的 headers
- yum clean all #清除全部缓存目录
Linux配置yum源
国内yum源:
阿里:http://mirrors.aliyun.com
网易:http://mirrors.163.com
中科大:http://mirrors.ustc.edu.cn/
查看yum源配置
cat /etc/yum.repos.d/CentOS-Base.repo
[base] #仓库名称 name= #仓库描述 mirrorlist= #仓库镜像路径 baseurl= #仓库url路径 enabled= #仓库是否启用,1表示启用,0表示关闭 gpgcheck=1 #密钥检测,1表示开启,0表示关闭 gpgkey= #检查key的地址,如果上面不检查,这个可以不写
1、yum源配置(网络):
1.1先备份原有的yum源:
- [root@alliancehacker ~]# mkdir -p /root/back
- [root@alliancehacker ~]# mv /etc/yum.repos.d/CentOS-Base.repo /root/back/CentOS-Base.repo.back
1.2下载新的yum源(阿里):
- // 因为我这是centos8,源就选择了Centos-8.repo
- [root@alliancehacker ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
-
1.3清除原有yum缓存:
[root@localhost ~]# yum clean all
1.4生成新的缓存:
[root@localhost ~]# yum makecache
1.5添加多个网络源:
- #在 /etc/yum.repo.d 中有几个文件夹,每个文件夹就是一个源的配置文件。#例如:
- #(一)local.repo(本地源,名字随意取)
- [local]
- name=local
- baseurl=file:///mnt/cdrom
- gpgcheck=0
- enabled=1
- #(二)163.repo(163的源)
- [163]
- name=163
- baseurl=http://mirrors.163.com/centos/7.5.1804/os/x86_64/
- gpgcheck=0
- enabled=1
- #这里要注意的是,baseurl这一项,你要到http://mirrors.163.com/centos这里,去找到你对应的redhat版本的目录,然后点os、再点x86_64(一般都有),然后用你地址栏上显示的网址替换上面的baseurl就行了,保存退出。
1.6命令补充
希望下面的信息,可回答你的问题:
1. 查询当前repo(全部、启用的、禁用的)
yum repolist [all|enabled|disabled]
安装软件,并指定你不要使用的repo
yum –-disablerepo=repository-name install nagios
从设定为禁用(enabled=0)的repo中,安装软件
yum --enablerepo=epel install nagios
在某1个repo设定中,指定你要排除的软件包名称
exclude=nagios
如果多个repo中,某1个软件有多个版本存在, 可在安装时候,指定版本
yum install httpd-2.4.6-6
2、yum源配置(本地):
2.1下载ISO文件
从CentOS的官网下载CentOS的完整版iso文件,并上传到Linux文件系统中,例如/opt/tools/。
2.2为ISO创建一个挂载目录
mkdir /mnt/vcdrom
2.3将ISO文件挂载到挂载目录
- mount -o loop -t iso9660 /opt/tools/CentOS-7-x86_64-bin-DVD1.iso /mnt/vcdrom
2.4移除或备份原yum源Centos-Base.repo文件
- mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.back
2.5配置Centos-Media.repo文件
- [root@localhost ~]# cat /etc/yum.repos.d/CentOS-Media.repo
- [c7-media]
- name=CentOS-$releasever - Media
- baseurl=file:///mnt/vcdrom/ #将baseurl修改为DVD的挂载目录
- gpgcheck=0 #关闭密钥检测
- enabled=1 #启用仓库
- #gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
2.6清除原有yum缓存:
[root@localhost ~]# yum clean all
2.7生成新的缓存:
[root@localhost ~]# yum makecache
2.8编写脚本开机自动挂载镜像
- [root@localhost ~]#vim /opt/shell/mymount.sh
- #!/bin/bash
- #
- mount -o loop -t iso9660 /opt/tools/CentOS-6.7-x86_64-bin-DVD1.iso /mnt/vcdrom
2.9修改脚本权限:
[root@localhost ~]#chmod 777 /opt/shell/mymount.sh
2.10修改/etc/rc.local配置文件,在文件最后一行加上 /opt/shell/mymount.sh
- [root@localhost ~]#vim /etc/rc.local
- /opt/shell/mymount.sh
2.11重启服务器测试:
[root@localhost ~]# reboot
实例1:使用yum安装php7
参考:php7.3安装@centos7
https://www.itgeeker.net/php7-3-yum-install-on-centos-7/
https://dl.fedoraproject.org/pub/epel/ http://rpms.remirepo.net/enterprise 自己上这个网址上找到自己的版本,然后替换就行了,可能有的源会失效的,到时自己找一下可用的吧
- #添加几个源,不然会报错
- #php高版本的yum源地址,有两部分,其中一部分是epel-release,另外一部分来自webtatic。如果跳过epel-release的话,安装webtatic的时候
- rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
- rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-8.rpm
安装你想要的扩展
- yum --enablerepo=remi install php73-php php73-php-pear php73-php-bcmath php73-php-pecl-jsond-devel php73-php-mysqlnd php73-php-gd php73-php-common php73-php-fpm php73-php-intl php73-php-cli php73-php php73-php-xml php73-php-opcache php73-php-pecl-apcu php73-php-pdo php73-php-gmp php73-php-process php73-php-pecl-imagick php73-php-devel php73-php-mbstring php73-php-zip php73-php-ldap php73-php-imap php73-php-pecl-mcrypt
运行并查看版本, 重启命令, 添加自动启动,链接php文件
- # The current PHP memory limit is below the recommended value of 512MB.
- vi /etc/opt/remi/php73/php.ini
- memory_limit = 512M
-
- #如果你运行的是nginx而不是apache,修改
- vi /etc/opt/remi/php73/php-fpm.d/www.conf
- user = apache
- group = apache
- # Replace the values with
- user = nginx
- group = nginx
卸载所有php7.3
yum remove php73-php*
总结
以上所述是小编给大家介绍的Liunx(centos8)下的yum的基本用法和实例,希望对大家有所帮助!