目录
1. yum仓库简介
1 yum简介
yum是一个基于RPM包 构建的软件更新机制,能够自动解决软件包之间的依赖关系。解决了日常工作中的大量查找安装依赖包的时间
2yum 实现过程
先在yum服务器上创建 yum repository(仓库),在仓库中事先存储了众多rpm包,以及包的相关的元数据文件(放置于特定目录repodata下),当yum客户端利用yum/dnf工具进行安装时包时,会自动下载repodata中的元数据,查询远数据是否存在相关的包及依赖关系,自动从仓库中找到相关包下载并安装。
yum需要依赖于环境,依赖于服务端和客户端,允许跨网络
服务器:RPM包
元数据(repodata文件夹:目录(软件的目录),软件的依赖关系,软件的位置)
客户端的配置
baseurl=地址
一定要写到到 这两个文件夹 repodata packages 的上级目录
仓库类型:
光盘的仓库基本仓库 比较常用的
epel扩展仓库 比较新
2.yum配置文件和命令
1.yum位置
1 yum配置文件
主配置 位置:/etc/yum.conf
2.yum仓库文件位置
/etc/yum.repos.d/*.repo
默认的yum仓库 是centos官方的yum源,需要联网才可以使用
3 日志文件
位置:/var/log/yum.log
cat /var/log/yum.log
查看日志文件
2.命令
1.yum查询
1.yum list
显示所有可用包 包名支持通配符
2.yum info
显示包的信息
3.yum search ftp
查找包含httpd字符的所有安装包,模糊查找
4.yum provides httpd
查找这个命令来源于哪个包 精确查找
5.yum history
查找yum所有操作
查看历史的使用记录
6.undo redo
卸载软件包
7.yum grouplist [包组名]
安装包组的查询 不加包组名 就是显示所有
6.yum remove
包名 卸载但是只可以卸载单个
2 yum安装升级
1. yum install [软件名]
安装软件包,如例子yum install安装http服务
2. yum update
更新包组,可以单个也可以全部 后面加具体包组名称就是单个更新,不加就是全部更新。
但是首先你要有更新的包组库否则也无法更新。
3.http ftp 方法搭建yum仓库
http
服务端
systemctl stop firewalld
setenforce 0
yum install httpd -y
systemctl start httpd
mount /dev/sr0 /var/www/html
客户端
cd /etc/yum.repos.d
mkdir bak
mv *.repo bak
vim http.repo
[http]
name=http
baseurl=http://192.168.17.130/
gpgcheck=0
yum clean all
yum makecache
yum install tree
ftp
服务端
systemctl stop firewalld
setenforce 0
关闭安全措施
yum install vsftpd -y
systemctl start vsftpd
mkdir /var/ftp/ky33
mount /dev/sr0 /var/ftp/ky33
客户端:
cd /etc/yum.repos.d
mkdir bak
mv *.repo bak
vim http.repo
[http]
name=http
baseurl=ftp://192.168.17.130/ky33
gpgcheck=0
yum clean all
yum makecacheyum install tree
4.epel源 本地
yum install epel-release
安装epel源 生成epel仓库文件
reposync -r epel -p /root/
下载同步epel源 根据epel仓库文件去找目录
太多了 下不完
看命令把
yum -y install createrepo
安装建立元数据命令
createrepo -v /root/epel
建立元数据 软件目录 依赖关系
ls
anaconda-ks.cfg epel
cd epel/
ls查看元数据
5. 离线安装软件
yum install nginx
安装软件包
yum install nginx --downloadonly --downloaddir=/data/
只下载相关包默认至某一目录
yum install nginx --downloadonly --downloaddir=/nginx/
--downloaddir=绝对目录路径 下载到某一目录
6.自行打包后建立元数据
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=0yum clean all
yum makecache
yum install tree -y