一、yum
1.1yum的定义
yum是一个基于RPM包,构建的软件更新机制,能够自动解决软件包之间的依赖关系。解决了日常工作中的大量查找安装依赖包的时间 为什么会有依赖关系的发生 因为linux本身就是以系统简洁为自身优势,所以在安装操作系统的时候并没有将所有的库文件以及编译软件包进行安装,所以在linux操作系统上进行软件安装的时候会出现软件包依赖的情况。
1.2yum实现过程
先在yum服务器上创建 yum,在仓库中事先存储了众多rpm包,以及包的相关的元数据文件,当yum客户端利用yum/dnf工具进行安装时包时,会自动下载repodata中的元数据,查询远数据是否存在相关的包及依赖关系,自动从仓库中找到相关包下载并安装。
yum依赖于环境,依赖于服务端和客户端,允许跨网络
服务端:
-
RPM包 (Packages文件夹中)
-
元数据(repodata文件夹:目录(软件的目录),软件的依赖关系,软件的位置)
客户端:
- 配置文件
仓库类型:
- 光盘的仓库(基本仓库)
- epel 扩展仓库
1.3yum配置文件
主配置文件 : /etc/yum.conf
1.4仓库配置文件
位置:/etc/yum.repos.d/*.repo //yum仓库文件位置
二、yum命令总结
命令 | 不加关键字 | 加入关键词、软件包、软件包组 |
yum list | 显示所有可用包 | 单个的可安装包 |
yum info | 显示所有可用包的信息 | 单个具体的信息 |
yum search | \ | 模糊查找所有的相关信息 |
yum provides | \ | 精确查找 |
yum install | \ | 安装具体软件包 |
yum update | 所有软件升级,更新内核 | 具体软件升级 |
yum upgrade | 所以软件升级,不更新内核 | 具体软件更新 |
yum remove | \ | 卸载具体软件 |
yum history | 查看当前yum操作历史 | \ |
yum history info | \ | 加序号列出某次事务的详细信息 |
yum history undo | \ | 加序号卸载序号里安装的软件 |
yum history redo | \ | 加序号重新执行序号里的操作 |
yum grouplist | 显示所有可用包组 | 显示具体包组 |
yum groupinfo | 显示所有的包组具体信息 | 显示具体的包组的具体信息 |
yum groupinstall | \ | 安装具体软件包组 |
yum group update | 所有包组升级 | 具体包组升级 |
yum groupremove | \ | 卸载具体包组软件 |
三、搭建本地yum仓库
mount /dev/sr0 /mnt #挂载提供安装包
cd /etc/yum.repos.d #切换到固定目录
mkdir bak #建立备份文件夹
mv *.repo bak #将所有网络源移走,减少干扰
vim zhuo.repo #自建本地源的配置文件
[local] #自定义仓库描述
name=local #自定义仓库名
baseurl=file:///mnt #指明仓库位置
gpgcheck=0 #不验证安全性(若为1则验证)
yum clean all #清理缓存
yum makecache #重新建立元数据
yum install bind -y #下载软件bind进行验证
四、NFS
4.1NFS定义
NFS(Network File System 网络文件服务) 文件系统(软件)文件的权限
NFS 是一种基于 TCP/IP 传输的网络文件系统协议,最初由 Sun 公司开发。
通过使用 NFS 协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源 NFS 也是 NAS 存储 设备必然支持的一种协议
4.2NFS的特点
采用TCP/IP传输网络文件
安全性低
简单易操作
适合局域网环境
4.3NFS优缺点
优点:节省本地存储空间
缺点:由于NFS没有用户认证机制,而且数据在网络上明文传输,安全性很差,一般只在局域网中使用。
4.4NFS的原理图
4.5NFS配置文件
/etc/exports——主配置文件
/etc/exports.d/*.exports
exportfs -v ——显示本机服务端的共享目录
exportfs -r ——重新加载配置文件
文件格式—— 共享目录 主机(权限)
软件名 —— nfs-utils
依赖软件 —— rpcbind
重启服务 ——systemctl restart nfs
重新加载配置—— exportfs -r
显示当前配置 ——exportfs -v
客户端显示服务端——ip showmount -e 服务端ip地址
临时挂载 ——mount 服务端ip:共享目录 挂载点
永久挂载 vim /etc/fstab 服务端ip:共享目录 挂载点 文件系统类型(nfs) 权限 _netdev 0 0
五、实验:NFS共享存储服务配置
1.服务端安装nfs-utils与rpcbind软件包
2.服务端新建共享目录并赋予权限
3.服务端编辑配置文件/etc/exports:设置共享目录的相关配置
4.服务端关闭防火墙并开启服务并查看rpcbind端口是否开启(默认为TCP端口111)
5.服务端查看共享目录详细信息
6.客户端安装nfs-utils与rpcbind软件包
7.客户端查看服务端的共享文件
8.客户端将服务端共享目录挂载到本地
9.客户端关闭防火墙并开启服务
10.测试是否能文件共享
在服务端创建一个1.txt文件,测试是否客户端能查看服务器新建文件
服务端:
客户端:
六、实验:内网环境下用ftp搭建yum仓库实验
ftp可以使用内网也可以使用外网,这里选择内网环境,虚拟机全部设为仅主机模式,无法连接外部网络,如果想要下载ftp服务则需要搭建一个本地yum仓库
1.服务端搭建本地yum仓库并下载vsftpd服务
2.服务端进入/var/ftp目录下添加一个挂载目录centos7然后将光驱挂载到centos7目录
3.关闭防火墙和核心防护,并且开启vsftpd服务
4.客户端搭建本地yum仓库并下载vsftpd和ftb服务
5.用客户端测试ftp服务是否正常
6.客户端搭建yum仓库
7.客户端测试,安装tree服务
七、实验:内网环境下用http搭建yum仓库实验
由于是内网环境,虚拟机全部设为主机模式,无法连接外部网络,如果想要下载httpd服务则需要搭建一个本地yum仓库
1.服务器搭建本地yum仓库并下载httpd服务
2.服务端进入/var/www/html添加挂载目录centos7,创建centos7文件,解挂载/mnt并将光驱/dev/sr0挂载到centos7目录下
服务端关闭防火墙与核心防护,并且开启http服务
客户端搭建yum仓库,将客户端设置为仅主机模式
清理缓存并重新建立元数据缓存
八、FTP
8.1FTP协议
FTP文件传输协议:用于Internet上的控制文件的双向传输,是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。
FTP服务器默认使用TCP协议的20,21端口与客户端进行通信:
20端口是命令端口,用于建立数据连接并传输文件数据
21端口是数据端口,用于建立控制连接并传输FTP控制命令
8.2FTP的数据连接模式
主动模式:服务器主动发起数据连接
被动模式:服务器被动等待数据连接
8.3svftpd安装及配置
1.yum安装vsftpd
2.查看安装包是否存在
3.将vsftpd复制到vsftpd目录下
4.vsftpd配置文件
5.关闭防火墙与核心防护,并且重启vsftpd
6.在匿名用户的默认目录下给文件夹最大权限并创建一个测试文件
7.测试
8.这样做777权限过高,存在安全隐患,需要设置本地用户验证访问ftp,禁止匿名用户登录,创建本地用户hao并重新设置密码123