linux 技能包【4】:yum源
文章目录
一、配置yum源(客户端)
1.1、本地yum源
step1:挂载本地镜像文件
[root@localhost /]# mkdir /media/cdrom
[root@localhost /]# mount /dev/cdrom /media/cdrom # 写入 /etc/fstab 可实现开机自动挂载镜像
step2:配置本地yum源头
[root@localhost /]# vim /etc/yum.repos.d/Centos7-media.repo
[base] # 自定义源标识
name=Centos7-media # 自定义源名称
baseurl=file:///media/cdrom # 指定仓库路径
enabled=1 # 启用yum源,0为禁用,1为启用{默认为启用}
gpgcheck=0 # 检查GPG-KEY,0为不检查,1为检查
step3:清除缓存
[root@localhost /]# yum clean all # 清除 yum 缓存
已加载插件:fastestmirror
正在清理软件源: base
Cleaning up list of fastest mirrors
Other repos take up 41 M of disk space (use --verbose for details)
step4:生成缓存
[root@localhost /]# yum makecache # 缓存本地 yum 源中的软件包信息
已加载插件:fastestmirror
Determining fastest mirrors
base | 3.6 kB 00:00
(1/4): base/group_gz | 3.5 kB 00:00
(2/4): base/primary_db | 798 kB 00:00
(3/4): base/filelists_db | 301 kB 00:00
(4/4): base/other_db | 201 kB 00:00
元数据缓存已建立
1.2、网络yum源(阿里云)
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
# 非阿里云ECS用户会出现 Couldn't resolve host 'mirrors.cloud.aliyuncs.com' 信息,解决过程如下:
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo
# 官网提供路径已过时,对实际路径适配
sed -i "s/\$releasever/7.9.2009/g" /etc/yum.repos.d/CentOS-Base.repo
# 清理并生成缓存
yum clean all
yum makecache
二、查看yum源
- 查看所有的 yum 源
$ yum repolist all
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
源标识 源名称 状态
base Centos7-media 启用: 445
repolist: 445
- 查看可用的 yum 源
$ yum repolist enabled
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
源标识 源名称 状态
base Centos7-media 445
repolist: 445
- 列出 yum 源下的安装包
$ yum list
三、指定 yum 源 & 软件安装版本
-
场景
从centos6开始,官方版本的yum源中用 mariadb 替换了mysql,那么安装 mysql 一般需要去官网下载rpm包或者源码包等方式。如果还想直接yum安装的话需要自己配置mysql的yum源。
-
官方 yum 源
https://dev.mysql.com/downloads/repo/yum/ -
下载对应版本mysql源到本地,如果系统是centos7,这里选择el7版本
-
安装 yum 源
$ rpm -ivh mysql80-community-release-el7-1.noarch.rpm
-
查看mysql yum源,yum install mysql 默认安装的是8.0版本
$ yum repolist | grep mysql mysql-connectors-community/x86_64 MySQL Connectors Community 74 mysql-tools-community/x86_64 MySQL Tools Community 74 mysql55-community/x86_64 MySQL 5.5 Community Server 427 mysql56-community/x86_64 MySQL 5.6 Community Server 429 mysql80-community/x86_64 MySQL 8.0 Community Server 49
$ yum repolist | grep mysql mysql-connectors-community/x86_64 MySQL Connectors Community 74 mysql-tools-community/x86_64 MySQL Tools Community 74 mysql55-community/x86_64 MySQL 5.5 Community Server 427 mysql56-community/x86_64 MySQL 5.6 Community Server 429 mysql80-community/x86_64 MySQL 8.0 Community Server 49
要修改默认安装版本的话,可以直接修改mysql的yum源文件,yum配置文件里从5.5版本到8.0都有,只不过默认只开启了mysql8.0。更改别的版本记得将mysql8.0的源 enable=0
vim /etc/yum.repos.d/mysql-community.repo # Enable to use MySQL 5.6 [mysql56-community] name=MySQL 5.6 Community Server baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/7/$basearch/ enabled=1 #打开mysql5.6源 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
-
再yum install看一下,默认已经是mysql5.6了
四、指定软件安装版本
$ yum install XXX --enablerepo=YYY
- XXX 是要安装的软件;
- YYY 是 repo 源文件下的源标识;
【注意】建议安装的时候尽量选择同一个源,不同的源安装的软件可能会有冲突。
五、制作本地 yum 库(服务端)
-
step1:下载 rpm 包到指定的目录
-
step2:创建 yum 源
$ createrepo [rpm 包目录]
执行命令后,会在该目录下生成 repodata 目录,有 repodata 目录的才可以作为 yum 源。
-
step3:后续 rpm 包库的更新
createrepo --update [rpm 包目录]
-
step4:至此库就建好了,要使用还需要在 /etc/yum.repos.d/ 下创建 repo 文件,配置内容参考本文的 “ 配置yum源 ” 部分。
六、制作网络 yum 库(服务端)
-
step1:基础准备
a)创建仓库的命令:createrepo
b)要有 rpm 包:网站获取、镜像获取、yum源获取
c)yum 源的配置文件 -
step2:安装创建仓库的命令
yum -y install createrepo
-
step3:通过系统镜像获取rpm包
mount /dev/cdrom /mnt
-
step4:部署 vsftpd 服务
yum -y install vsftpd systemctl start vsftpd systemctl enable vsftpd
验证:打开浏览器访问:ftp://ip
-
step5:创建仓库目录
# 创建rpm包存放目录 mkdir /var/ftp/pub/base # 拷贝rpm包到base目录下 cp /mnt/Packages/*.rpm /var/ftp/pub/base/ # 创建库会在该目录下生成 repodata 目录,有 repodata 目录的才可以作为 yum 源 createrepo /var/ftp/pub/base/
-
step6:上网页查看仓库
至此,远程仓库就构建完成了,下面就是客户端配置部分! -
step7:配置yum源repo文件(客户端)
cat > /etc/yum.repos.d/base.repo <<EOF [base] name=base baseurl=ftp://192.168.56.10/pub/base/ gpgcheck=0 EOF
更多推荐
所有评论(0)