yum是什么?

yum:(全称为 Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 CentOS 中的 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

yum 提供了对软件的查找、安装、更新、删除的等一系列功能。

install[RPM包]:安装包
-q:不显示安装的过程
-y:当安装过程提示选择全部为 "yes"
-t:忽略错误
yum history:查看历史执行yum命令
yum check-update:列出所有可更新的软件清单命令
yum update:更新所有软件命令
yum update nginx:仅更新指定的软件命令
yum list:列出所有可安裝的软件清单命令
yum list installed:已安装的命令
yum remove nginx:删除软件包命令
yum search nginx:查找软件包命令
yum deplist:列出包的依赖
yum provides:根据文件,命令,库文件,搜索对应的软件包
yum clean packages: 清除缓存目录下的软件包
yum clean headers: 清除缓存目录下的 headers
yum clean oldheaders: 清除缓存目录下旧的 headers

yum常用命令下载

[root@dmxsp ~]# yum install -y sl cowsay htop bash-completion bash-completion-extras tree vim wget 
bash-completion bash-completion-extras lrzsz net-tools sysstat iotop iftop htop unzip nc nmap telnet
bc psmisc httpd-tools bind-utils nethogs

更换YUM源

备份源镜像

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.backup

base源改为阿里云源

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

epel源改为阿里云源

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

base源改为腾讯云

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repo

epel源改为腾讯云

wget -O /etc/yum.repos.d/epel.repo http://mirrors.cloud.tencent.com/repo/epel-7.repo

清理和生成缓存

yum clean all
yum makecache

YUM仓库

1.本地YUM仓库

有时候你的linux系统不能联网,当然就不能很便捷的使用联网的yum源了,这时候就需要你自己会利用linux系统光盘制作一个yum源

[root@dmxsp ~]# ls /mnt/
[root@dmxsp ~]# mount /dev/sr0 /mnt
mount: /dev/sr0 is write-protected, mounting read-only
[root@dmxsp ~]# ls /mnt/
CentOS_BuildTag EULA images LiveOS repodata RPM-GPG-KEY-CentOS-Testing-7
EFI GPL isolinux Packages RPM-GPG-KEY-CentOS-7 TRANS.TBL

备份原有仓库

[root@dmxsp ~]# gzip /etc/yum.repos.d/*

创建新仓库文件,并加入如下内容:

方式一

手动添加repo配置文件

[root@dmxsp ~]# cat /etc/yum.repos.d/dmxsp.repo
[dmxsp]
name=local dmxsp
baseurl=file:///mnt
enabled=1
gpgcheck=0

检查本地仓库信息

[root@dmxsp ~]# yum repoinfo local

刷新 repos 生成缓存

[root@dmxsp ~]# yum makecache

[]:仓库名称
name:仓库描述信息
baseurl:YUM源url地址 ,可以是file:// ftp:// http://
enabled:是否激活该YUM源(0代表禁用,1代表激活,默认为激活)
gpgcheck:安装软件时是否检查签名(0代表禁用,1代表激活)

方法二

[root@dmxsp ~]# yum -y install yum-utils
[root@dmxsp ~]# yum-config-manager --add-repo="http:///mnt"
Loaded plugins: fastestmirror
adding repo from: http:///mnt

[mnt]
name=added from: http:///mnt
baseurl=http:///mnt
enabled=1

刷新 repos 生成缓存

[root@dmxsp ~]# yum makecache

2.网络YUM仓库

官方网络YUM源配置(阿里源)(默认的是国外官位源)

[root@dmxsp ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

EPEL扩展源

国外epel源

[root@dmxsp ~]# yum -y install epel-release

阿里云epel源

[root@dmxsp ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

基础命令源

Nginx ZABBIX下载ZABBIX官网

3.构建企业YUM仓库

一个公司内部使用的yum源,搭建yum仓库
环境准备(两台机器搭建)

系统 IP 角色 主机名
centos7.9_x86_64 10.0.0.100 yum仓库服务端 yum_server_79_100
centos7.9_x86_64 10.0.0.101 yum仓库客户端 yum_client_79_101

服务端配置

基础环境准备
关闭防火墙

systemctl stop firewalld 
systemctl disable firewalld

关闭selinux

setenforce 0 sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config

配置yum仓库 服务端 开始

安装ftp服务,启动并加入开机启动

yum -y install vsftpd
systemctl start vsftpd
systemctl enable vsftpd

配置 base和epel源

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.backup
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

开启yum缓存功能

vim /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=1
yum clean all

提供基础base源

配置yum仓库 服务端 准备rpm包

mkdir -p  /var/ftp/{centos610,centos79}
tree /var/ftp/
mount /dev/cdrom /mnt/
df -h
cp -a /mnt/Packages/*.rpm     /var/ftp/centos79/

提供第三方源

配置yum仓库 服务端 准备额外软件源的rpm包

find /var/cache/yum/x86_64/7/  -iname "*.rpm" -exec cp -rf {} /var/ftp/ops 
find /var/cache/yum/ -type f  -name "*.rpm" |xargs cp -t /var/ftp/opt/
ls /var/ftp/opt/

安装createrepo 并创建 reopdata仓库

配置yum仓库 服务端 给rpm创建元数据

yum -y install createrepo

客户端使用yum源

配置并使用base基础源

gzip /etc/yum.repos.d/*
vim /etc/yum.repos.d/centos7.repo
[centos79]
name=centos79_base
baseurl=ftp://10.0.0.100/centos79
gpgcheck=0

客户端指向本地ops 源

vim /etc/yum.repos.d/opt.repo
[opt]
name=local ftpserver
baseurl=ftp://10.0.0.100/opt
gpgcheck=0

作者 dmxsp

发表回复

您的电子邮箱地址不会被公开。