Linux yum搭建私有仓库

  • Linux yum搭建私有仓库已关闭评论
  • 258 次浏览
  • A+
所属分类:linux技术
摘要

(本示例使用光盘作为源)createrepo 存放软件包的目录
执行这条命令以后就会在这个目录文件下面生成要给repodata的文件,此时这个存放软件包的目录就可以作为私有仓库了


搭建yum仓库需要两种资源:

  • rpm包
  • rpm包的元数据(repodata)

搭建好仓库后需要使用三种网络协议共享出来

  • http或https
  • ftp

范例:

使用http协议搭建私有仓库

(本示例使用光盘作为源)

#仓库服务器配置 yum -y install httpd systemctl enable --now httpd mkdir /var/www/html/centos/8 -p mount /dev/sr0 /mnt/ #挂载本地光盘到指定文件夹 cp -a /mnt/* /var/www/html/centos/8 #把光盘里面的文件复制到对应文件 
#yum客户端配置 [root@repo-client ~]#cat /etc/yum.repos.d/test.repo [BaseOS] #仓库唯一标识 name=BaseOS   #说明 baseurl=http://10.0.0.8/centos/8/BaseOS #仓库路径 gpgkey=0 #enable=1不写默认就是开启的 [AppStream] name=Appstream baseurl=http://10.0.0.8/centos/8/AppStream/ gpgkey=0 

只用rpm包,没有元数据信息:

createrepo 存放软件包的目录
执行这条命令以后就会在这个目录文件下面生成要给repodata的文件,此时这个存放软件包的目录就可以作为私有仓库了

使用互联网上面的epel源搭建私有仓库

1.把epel源中的rpm包下载下来
2.在httpd服务的指定目录下创建epel源的目录文件

#下载相关仓库包和元数据 #首先需要吧epel源配好: #cat /etc/yum.repos.d/base.repo 	#[epel] 	#name=EPEL 	#baseurl=https://mirrors.aliyun.com/epel/8/Everything/x86_64/ 	#gpgcheck=0  yum reposync --repoid=epel --download-metadata  -p  /var/www/html #下载epel源 #epel --- 配置好的epel源唯一标识 会从这个仓库的指定路径去下载 -P:指定路径 #搞定以后会在指定目录下生成一个叫epel的子目录 #--download-meta 

下载软件包的时候会顺便把相关的依赖都下载下来。卸载的时候相关依赖不会跟着卸载。(centos8不存在这个问题)
全部卸载干净的解决方法:

  1. 使用yum history 查看执行过的历史纪录
  2. 使用 yum undo number(history的编号)进行卸载 --- 相当于重装

yum history --- 查看yum的历史事务
yum history info yum的历史事务编号id --- 查看这个是事务都干了些啥

yum日志文件

#CentOS 7以前版本日志 /var/log/yum.log  #CentOS 8 版本日志 /var/log/dnf.rpm.log /var/log/dnf.log 

日志命令:yum history xxxx