在使用Linux系统的时候,通常需要安装许多软件,Linux系统通常安装软件有源码包安装(文件格式:.tar.gz 或.tar.bz2;安装过程:解压、环境检查、编译和安装)、Rpm包安装(文件格式:.rpm)、二进制安装(文件格式:.tar.gz /.tgz /.bz2;安装过程:解压即可)和Yum源安装(yum下载rpm包,自动安装,同进解决相互间的依赖关系)的方式。下面介绍在内网和联网的情况下,Yum仓库的配置情况。
1. 什么是Yum
Yum(全称为Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
2. Yum常用命令
1) yum显示信息
① 显示所有已经安装和可以安装的程序包
yum list
② 显示更新的源
yum repolist
③ 显示安装包信息
yum list packagename
④ 显示安装包详细信息
yum info packagename
⑤ 显示一个包所有依赖包:
yum deplist packagename
2) yum安装
yum install -y packagename
3) yum删除
yum remove packagename
4) yum包升级
① 全部更新(更新源里的软件列表)
yum update
② 更新指定包
yum update packagename
③ 检查可更新程序
yum check-update
④ 更新指定包(系统里的软件)
yum upgrade packagename
5) yum清除缓存
yum clean all
3. 本地Yum仓库制作
3.1 Yum仓库原理
Yum仓库是可以提供多种RPM包的服务器,通过http的方式来检索、下载并安装相应及相关依赖的RPM包。
3.2 Yum仓库制作
1) 创建/mnt/cdrom目录
mkdir /mnt/cdrom
2) 将CentOS-7-x86_64-Minimal-2003.iso镜像文件挂载到/mnt/cdrom目录下
mount -t iso9660 -o rw /dev/cdrom /mnt/cdrom
3) 修改本地yum源文件CentOS-Media.repo
cd /etc/yum.repos.d/ rename .repo .repo.bak * vim CentOS-Local.repo
[base] name=CentOS-Local baseurl=file:///mnt/cdrom gpgcheck=1 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
4) 清除YUM缓冲
yum clean all
5) 列出可用的YUM源
yum repolist
6) 安装httpd软件
yum install -y httpd
7) 开启httpd服务
service httpd start
8) 测试httpd服务是否开启成功,使用浏览器访问http://192.168.1.16:80,成功则显示页面
9) 将Yum源配置到httpd中,其他服务器即可通过网络访问到这个内网中的Yum源
cp -r /mnt/cdrom/ /var/www/html/soft
10) 在浏览器中访问http://192.168.1.16/soft
11) 让其他需要安装Rpm包的服务器指向这个Yum源
备份repo文件:
rename .repo .repo.bak *
vim CentOS-Local.repo
[base] name=CentOS-Local baseurl=http://192.168.1.16/soft gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
12) 在其他安装Rpm包服务器执行yum命令
清除缓存:
yum clean all
显示更新的源:
yum repolist
13) 重启后自动挂载,在192.168.1.16这台服务器/etc/fstab追加以下内容
/dev/cdrom /mnt/cdrom iso9660 defaults 0 0
vim /etc/fstab
14) 自此,Yum本地仓库制作完成。
4. 联网Yum仓库制作
1) 文件准备
① 浏览器访问http://mirrors.163.com/.help/centos.html,选择对应的版本,这里选择Centos7下载,下载的文件为CentOS7-Base-163.repo
② 将CentOS7-Base-163.repo上传服务器,命令行输入rz,选择文件上传即可
2) 将CentOS7-Base-163.repo重命名为CentOS-Base.repo
Mv CentOS7-Base-163.repo CentOS-Base.repo
3) 执行yum命令
清除缓存:
yum clean all
显示更新的源:
yum repolist
4) 测试配置是否成功
yum install -y tree
5) 自此,Yum源联网制作完成。