文章目录
- 1. yum常用命令
- 1.1 安装卸载服务
- - 安装
- - 升级
- - 卸载
- - 清空缓存
- - 只下载不安装
- 1.2 查看
- - 查看yum库
- - 列出所有包
- - 查看包信息
- - 查看文件所在包
- 1.3 包组的使用
- 2. 指定yum源
- 3. 常用yum源
- 1)epel源
- 2)163源
- 3)阿里源
- 4)清华源
- 4. yum的一些操作
- 4.1 yum缓存的配置
- 4.2 yum设置代理
- 5.FAQ
- 1)Transaction check error
- 2)关于镜像不可用
1. yum常用命令
1.1 安装卸载服务
- 安装
# yum install xxx xxx -y
- 升级
# yum update xxx -y
- 卸载
# yum remove xxx -y
谨慎使用,因为依赖会被卸载。一般使用以下命令卸载:
# rpm -e --nodeps xxx
- 清空缓存
# yum clean all
- 只下载不安装
# yum install -y xxx --downloadonly --downloaddir=/usr/local/src
1.2 查看
- 查看yum库
# yum repolist
- 列出所有包
# yum list
# yum list 包名
- 查看包信息
# yum info 包名
- 查看文件所在包
# yum provides /usr/bin/scp
1.3 包组的使用
和包的使用基本相同:
# yum grouplist
# yum groupinstall xxx
2. 指定yum源
示例如下:
# vim /etc/yum.repos.d/test.repo
[test]
name=test
enabled=1
gpgcheck=0
#baseurl=file:///data/ftp/yum_data #本地文件为yum源示例
#baseurl=ftp://172.16.8.100/centos6u6 #ftp服务器yum源示例
baseurl=http://yumcto.xxx.com.cn/ #http的yum源示例
说明:
-
[test]
:仓库ID,有唯一性,根据需求自定义 -
name=test
: 仓库名 -
enabled=1
: 1,激活该仓库 -
gpgcheck=0
: 0,不检查软件包签名
3. 常用yum源
1)epel源
wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -ivh epel-release-latest-7.noarch.rpm
2)163源
# curl -o /etc/yum.repos.d/CentOS-Base-163.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
# wget -O /etc/yum.repos.d/CentOS-Base-163.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
3)阿里源
# wget -O /etc/yum.repos.d/CentOS-Base-ali.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# curl -o /etc/yum.repos.d/CentOS-Base-ali.repo http://mirrors.aliyun.com/repo/Centos-7.repo
4)清华源
# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#
[base]
name=CentOS-$releasever - Base
baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/os/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#released updates
[updates]
name=CentOS-$releasever - Updates
baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/updates/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/extras/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/centosplus/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
4. yum的一些操作
4.1 yum缓存的配置
[main]
cachedir=/var/cache/yum #yum下载的RPM包的缓存目录
keepcache=0 #缓存是否保存,1保存,0不保存。
debuglevel=2 #调试级别(0-10),默认为2(并不知道具体作用)。
logfile=/var/log/yum.log #yum的日志文件所在的位置
exactarch=1 #在更新的时候,是否允许更新不同版本的RPM包,比如是否在i386上更新i686的RPM包。
obsoletes=1 #相当于upgrade,允许更新陈旧的RPM包。
gpgcheck=1 #是否检查GPG(GNU Private Guard),一种密钥方式签名。
plugins=1 #是否允许使用插件,默认是0不允许,但是我们一般会用yum-fastestmirror这个插件。
installonly_limit=3 #允许保留多少个内核包。
exclude=selinux* #屏蔽不想更新的RPM包,可用通配符,多个RPM包之间使用空格分离
metadata_expire=90m #设定保存时长
4.2 yum设置代理
#vim /etc/yum.conf
proxy=http://代理服务器ip:port
5.FAQ
1)Transaction check error
- 报错
输出如下:
Transaction check error:
file /usr/bin/docker from install of docker-ce-18.06.0.ce-3.el7.x86_64 conflicts with file from package docker-ce-cli-1:19.03.8-3.el7.x86_64
file /usr/share/bash-completion/completions/docker from install of docker-ce-18.06.0.ce-3.el7.x86_64 conflicts with file from package docker-ce-cli-1:19.03.8-3.el7.x86_64
- 解决
和前边的版本冲突,卸载一个版本再安装即可。(前边19.03安装失败)
rpm -e docker-ce-cli-1:19.03.8-3.el7.x86_64
yum install docker-ce-18.06.0.ce-3.el7.x86_64
2)关于镜像不可用
- 报错
root@node-02:[/root]yum install docker-ce -y
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable/repodata/repomd.xml: [Errno 14] curl#56 - "Proxy CONNECT aborted"
正在尝试其它镜像。
.............
failure: repodata/repomd.xml from docker-ce-stable: [Errno 256] No more mirrors to try.
https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable/repodata/repomd.xml: [Errno 14] curl#56 - "Proxy CONNECT aborted"
- 解决
没有yum源的公钥,安装命令去掉 -y
yum install docker-ce
安装的时候会提示没有密钥,选择YES密钥会自动被安装。
从 https://mirrors.aliyun.com/docker-ce/linux/centos/gpg 检索密钥
导入 GPG key 0x621E9F35:
用户ID : "Docker Release (CE rpm) <docker@docker.com>"
指纹 : 060a 61c5 1b55 8a7f 742b 77aa c52f eb6b 621e 9f35
来自 : https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
是否继续?[y/N]:y
从 http://mirrors.cloud.tencent.com/centos/RPM-GPG-KEY-CentOS-7 检索密钥
导入 GPG key 0xF4A80EB5:
用户ID : "CentOS-7 Key (CentOS 7 Official Signing Key) <security@centos.org>"
指纹 : 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
来自 : http://mirrors.cloud.tencent.com/centos/RPM-GPG-KEY-CentOS-7
是否继续?[y/N]:y