YUM
什么是YUM
YUM的前身是YUP,借助于YUM软件仓库,可以完成安装、卸载、自动升级rpm软件包等任务,能自动查找并解决rpm包之间的依赖关系,而无需管理员手动去查找。
YUM由仓库和客户端组成,所以yum可以存放在一台服务器或者两台服务器上,可以由官方提供,也可以有第三方来提供,如国内的阿里云,搜狐云,一些非盈利的组织(学校)。官方的源一般不在国内,下载速度受限制,手动改成国内的云可以大幅度提高速度。
YUM概述
YUM(Yellow dog Updater Modified)
- 基于RPM包构建的软件更新机制
- 可以自动解决依赖关系
- 所有软件包由集中的YUM软件仓库提供
准备安装源
软件仓库的提供方式
网络源:
FTP服务: ftp://……
HTTP服务:http://……
本地源:
本地目录: file://……
RPM软件包的来源
- Centos发布的RPM包集合
- 第三方组织发布的RPM包集合
- 用户自定义的RPM包集合
构建CentOS 7软件仓库
- RPM包来自Centos 7 DVD光盘
- 通过FTP方式提供给客户机
访问YUM仓库
为客户机指定YUM仓库位置
- 配置文件:/etc/yum.repos.d/centos7.repo
YUM工具概述
YUM的配置文件
- 基本设置:/etc/yum.conf
- 仓库设置:/etc/yum.repos.d/*.repo
- 日志文件:/var/log/yum.log
软件包查询
-
yum list [软件名]
-
yum info [软件名]
-
yum search<关键词>
-
yum whatprovides<关键词>
查询软件包组
- yum grouplist[包组名]
- yum groupinfo<包组名>
YUM源的提供方式
配置本地源仓库
cd /etc/yum.repos.d/
vim local.repo
[local] #仓库类别
name=local #仓库名称
baseurl=file:///mnt #指定URL 访问路径为光盘挂载目录
enabled=1 #开启此yum源,此为默认项,可省略
gpgcheck=0 #不验证软件包的签名
mount /dev/sr0 /mnt #把光盘挂载到/mnt目录下(前提虚拟机是光盘挂载)
##清理yum缓存并更新
yum clean all && yum makecache
###检查
yum repolist
配置ftp源
服务器配置
- 安装vsftpd服务端软件
- 创建并制作yum远程ftp站点的源
- 启动ftp服务
rpm -qa|grep vsftpd
yum -y install vsftpd
mkdir /var/ftp/centos7 #创建挂盘挂载目录
mount /dev/sr0 /mnt #镜像挂载
cp -rf /mnt/* /var/ftp/centos7/ & #&表示挂在后台
mkdir /var/ftp/other # 创建目录repodata 数据文件
cd /var/ftp/other/
createrepo -g /mnt/repodata/repomd.xml ./ #工具建立仓库数据文件
systemctl start vsftpd
客户端配置:
- 创建远程yum源的配置文件
- yum安装软件验证结果
vi /etc/yum.repos.d/centos7.repo
[centos7] #仓库类别
name=centos7 #仓库名称(说明)
baseurl=ftp://192.168.10.17/centos7 #URL 访问路径
enabled=1 #启用此软件仓库
gpgcheck=1 #验证软件包的签名
gpgkey=ftp://192.168.10.17/centos/RPM-GPG-KEY-CentOS-7 #GPG 公钥文件的位置
[other]
name=centos7
baseurl=ftp://192.168.10.17/other
enabled=1 #启用此软件仓库
gpgcheck=0 #验证软件包的签名
网络源
CentOS7 清华源
vim CentOS7-Base-tsinghua.repo
[base]
name=CentOS-$releasever - Base
baseurl=http://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#released updates
[updates]
name=CentOS-$releasever - Updates
baseurl=http://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
baseurl=http://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
baseurl=http://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
163 yum源
vim CentOS7-Base-163.repo #编辑163 yum 网络源
[base]
name=CentOS-$releasever - Base - 163.com
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
baseurl=http://mirrors.163.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7
#released updates
[updates]
name=CentOS-$releasever - Updates - 163.com
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
baseurl=http://mirrors.163.com/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras - 163.com
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
baseurl=http://mirrors.163.com/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus - 163.com
baseurl=http://mirrors.163.com/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7
阿里云
下载地址:wget http://mirrors.aliyun.com/repo/Centos-7.repo
vim CentOS7-Base-aliyun.repo #编辑阿里云yum 网络源
[base]
name=CentOS-$releasever - Base - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
http://mirrors.aliyuncs.com/centos/$releasever/os/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
#released updates
[updates]
name=CentOS-$releasever - Updates - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/
http://mirrors.aliyuncs.com/centos/$releasever/updates/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/
http://mirrors.aliyuncs.com/centos/$releasever/extras/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/centosplus/$basearch/
http://mirrors.aliyuncs.com/centos/$releasever/centosplus/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/contrib/$basearch/
http://mirrors.aliyuncs.com/centos/$releasever/contrib/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
其他网络源
http://ftp.sjtu.edu.cn/centos
#上海交大,但服务器位于北京,中国教育网网络中心, 北方用户与教育网用户推荐,速度飞快。
http://centos.ustc.edu.cn,
#中国科技大学,服务器位于合肥。 南方用户推荐。
http://mirrors.sohu.com/
#sohu的开源镜像服务器,服务器位于山东省联通。 速度飞快,全国用户推荐,经常用FireFox下载CD镜像
YUM命令
yum常用的操作命令
yum -y install 软件名 #安装、升级软件包,“-y”选项表示自动确认
yum -y remove 软件名 #卸载软件包,可自动解决其依赖关系
yum -y update 软件名 #升级软件包
yum list #查询软件包列表
yum list installed #查询系统中已安装的软件包
yum list available #查询仓库中尚未安装的软件包
yum list updates #查询可以升级版本的软件包
案列搜索RPM包(两种方法)
yum search vim
yum list|grep "vim"
yum info 软件名 #查询软件包的描述信息
yum info httpd
yum search [all] 关键词 #根据某个关键词来查找相关的软件包
yum search all httpd
yum whatprovides 命令 #查询命令属于哪个软件包
yum whatprovides netstat
下载RPM包而不安装
yum install 包名 -y --downloadonly
yum reinstall -y bash --downloadonly #下载已安装过的rpm包
yum install 包名 -y --downloadonly --downloaddir=/tmp/ #下载RPM包到指定目录
yum history命令
yum history 查看历史记录来找到它所依赖的包,然后删除。
yum history list 列出最近的历史
yum history info id 列出某次的详细信息,
yum history undo id 撤销某次更改
yum history help 查看帮助
yum history redo加入序号重新执行序号里的操作
NFS概述
NFS 是一种基于 TCP/IP 传输的网络文件系统协议,最初由 sun 公司开发。通过使用 NFS协议,客户机可以像访问本地目录一样访问远程 NFS 服务器中的共享资源。
NFS 也是 NAS存储设备必然支持的一种协议,但是因为没有用户认证机制,而且数据在网络上明文传输,安全性很差,所以一般只能在局域网中使用。
NFS的特点
- 采用TCP/IP传输网络文件
- 安全性低
- 简单易操作
- 适合局域网环境
安装 nfs-utils、rpcbind 软件包
NFS 服务的实现依赖于 RPC (Remote Process Call,远端过程调用)机制,以完成远程到本地的映射过程。在Centos 7系统中,需要安装 nfs-utils、rpcbind 软件包来提供 NFS 共享服务,前者用于 NFS 共享发布和访问,后者用于 RPC 支持。手动加载 NFS 共享服务时,应该先启动 rpcbind,再启动 nfs。
- nfs端口号2049
- rpc端口号111
rpm -q rpcbind nfs-utils #查询是否安装
yum install -y nfs-utils rpcbind #安装nfs和rpc的软件包
systemctl start nfs #开启nfs服务
systemctl start rpcbind #开启rpcbind服务
systemctl enable nfs #开机自启nfs服务
systemctl enable rpcbind #开机自启rpcbind服务
实验步骤
- 安装nfs和rpcbind软件
- 修改配置文件设置共享
- 创建共享目录
- 开启服务
- 客户端验证共享目录可访问
服务器:192.168.152.11
客户端:192.168.152.12
客户机2:192.168.152.13