目录
一、yum仓库简介
1、yum仓库
2、实现过程
二、yum配置文件和命令
1、配置文件
2、yum命令
三、搭建yum仓库
1、搭建ftp云仓库
2、搭建http云仓库
3、自行打包后建立元数据
4、epel源(本地)
5、离线安装软件
总结:本章主要介绍yum的安装以及部分用法
1.yum是一个基于RPM包(是Red-Hat Package Manager红帽软件包管理器的缩写)构建的软件更新机制,能够自动解决软件包之间的依赖关系。解决了日常工作中的大量查找安装依赖包的时间
1.yum安装需要有安装包
先在yum服务器上创建 yum repository(仓库),在仓库中事先存储了众多rpm包,以及包的相关的元数据文件(放置于特定目录repodata下),当yum客户端利用yum/dnf工具进行安装时包时,会自动下载repodata中的元数据,查询远数据是否存在相关的包及依赖关系,自动从仓库中找到相关包下载并安装
yum需要依赖于环境,依赖于服务端和客户端,允许跨网络
服务器:
RPM (Packages文件夹中)
元数据(repodata文件夹:目录(软件的目录),软件的依赖关系,软件的位置)
客户端的配置文件中
baseurl=地址 一定要写到到 这两个文件夹 repodata packages 的上级目录
最终形成两个文件夹Packages (包文件夹一般取名packages)和 repodata(元数据文件夹)
仓库类型:
光盘的仓库基本仓库 比较常用的
epel扩展仓库 比较新
主配置文件:/etc/yum.conf
仓库文件:/etc/yum.repos.d/*.repo
日志文件:/var/log/yum.log
yum list [包名] 显示所有可用的包(包名支持通配符)
yum search [包名] 查找包含包名的所有安装包(模糊查找)
yum info [包名] 显示包的信息
yum provides [命令] 查找这个命令来源于哪个包(精确查找)
yum history 查看yum所有的操作
yum history undo 7 撤回history7操作
yum history redo 7 撤回history7操作
yum remove [包名] 卸载单个包
yum install [软件名] 安装软件
yum update [软件包] 更新软件
示例:
yum list hhtpd 显示所有可用的http的软件包
yum list *httpd* 显示所有包含httpd的软件包
yum search httpd 查找包含httpd名的所有安装包(模糊查找)
yum provides httpd-tools 查找这个命令来源于哪个包(精确查找)
yum history 查看yum所有的操作
yum history undo 7
yum history redo 7
yum remove httpd 卸载httpd包
yum install httpd -y 安装httpd软件(-y代表默认yes)
yum update httpd 更新httpd软件
服务端:
systemctl stop firewalld
setenforce 0
yum install -y vsftpd.x86_64
systemctl start vsftpd
mkdir -p /var/ftp/lc
mount /dev/sr0 /var/ftp/lc
客户端:
systemctl stop firewalld
setenforce 0
yum install -y ftp
cd /etc/yum.repos.d
mkdir bab
mv *.repo bab
vim ftp.repo
[ftp]
name=ftp
baseurl=ftp://172.16.114.10/lc
yum clean all
gpgcheck=0
yum makecache
yum install tree
服务端
systemctl stop firewalld
setenforce 0
yum install -y httpd
systemctl start httpd
mount /dev/sr0 /var/www/html
systemctl stop firewalld
setenforce 0
yum install -y httpd
cd /etc/yum.repos.d
mkdir baa
mv *.repo baa
vim http.repo
[http]
name=http
baseurl=http://172.16.114.10/
gpgcheck=0
yum clean all
yum makecache
yum install -y tree
mount /dev/sr0 /mnt/
cp /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm
mkdir test
mv tree-1.6.0-10.el7.x86_64.rpm test/
cd test
mkdir packages
mv tree-1.6.0-10.el7.x86_64.rpm packages/
createrepo -v test
cd /etc/yum.repos.d/
mkdir bak
mv *.repo bak/
vim tree.repo
[tree]
name=tree
baseurl=file:///data/test
gpgcheck=0
yum clean all
yum makecache
yum install tree -y
yum install epel-release 安装epel源
reposync -r epel -p /root/ 下载同步epel源
yum -y install createrepo 安装建立元数据命令
createrepo -v /root/epel 建立元数据
ls
cd epel/
ls
mkisofs -r -o /root/xxx.iso /data/centos7/epel
yum install nginx --downloadonly --downloaddir=/data/
yum install nginx --downloadonly --downloaddir=/nginx/
--downloadonly #只下载相关包默认至某一目录
--downloaddir=绝对目录路径 #下载到某一目录