ftp源和NFS

部署yum仓库及NFS共享服务

yum仓库服务

YUM概述

YUM (Yellow dog Updater Modified)

  • 基于RPM包构建的软件更新机制
  • 可以自动解决依赖关系
  • 所有软件包由集中的YUM软件仓库提供

准备安装源3-1

  • 软件仓库的提供方式
    • FTP服务: ftp:// …
    • HTTP服务: http://…
    • 本地目录: file:/ll …
  • RPM软件包的来源
    • CentOS发布的RPM包集合
    • 第三方组织发布的RPM包集合
    • 用户自定义的RPM包集合

准备安装源3-2

构建CentOS 7软件仓库

  • RPM包来自CentOS 7 DVD光盘
  • 通过FTP方式提供给客户机
[root@localhost ~]# mkdir -p /var/ftp/centos7
[root@localhost ~]# cp -rf /medialcdrom/* /varlftplcentos7
[root@localhost ~]# rpm -ivh /medialcdrom/Packagesl/vsftpd-3.0.2-21.el7.x86_64.rpm  [root@localhost ~]# systemctl start vsftpd
[root@localhost ~]# systemctl enable vsftpd

准备安装源3-3

  • 在软件仓库中加入非官方RPM包组
    • 包括存在依赖关系的所有RPM包
    • 使用createrepo工具建立仓库数据文件
[root@localhost ~]# mkdir /varlftplother
[root@localhost ~]# cd /var/ftp/other
[root@localhost other]# createrepo -g /media/cdrom/repodata/repomd.xml ./

配置FTP源

主要是思路

服务器配置:

  1. 安装vsftpd服务端软件
  2. 创建并制作yum远程ftp站点的源
  3. 启动ftp服务
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’安装软件验证结果
服务端yum远程文件
vi /etc/yum.repos.d/ftp.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 : /l192.168.10.17/other
enabled=l #启用此软件仓库
gpgcheck=0 #验证软件包的签名

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

yum history查看历史记录来找到它所依赖的包,然后删除,
如:yum history list 列出最近的历史
   yum history info id 列出某次的详细信息
   yum history undo id 撤销某次更改
   yum history help 查看帮助
   yum history redo 加入序号重新执行序号里的操作

部署yum软件仓库

网络源 本地源 ftp源

使用yum工具管理软件包

YUM工具概述

  • 关于YUM命令

    • 由软件包yum-3.4.3-150.el7.centos.noarch提供
    • 用来访问YUM仓库,查询、下载及安装、卸载软件包
  • YUM的配置文件

    • 基本设置:/etc/yum.conf
    • 仓库设置:/etc/yum.repos.d/*.repo
    • 日志文件: /var/log/yum.log

NFS共享存储服务

NFS (网络文件服务)

NFS是一种基于TCP/IP传输的网络文件系统协议,最初由 sun公司开发
通过使用NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源,NFS 也是NAS 存储设备必然支持的一种协议
NAS存储:
NFS服务的实现依赖于RPC (Remote Processcall,远端过程调用)机制,以完成远程到本地的映射过程。在 centos 7系统中,需要安装nfs-utils、rpcbind 软件包来提供NES 共享服务,前者用于NFS共享发布和访问,后者用于RPC支持。
手动加载NFS共享服务时,

应该先启动rpcbind,再启动nfs

nfs端口号2049
RPC端口号11111
特点:

采用TCP/IP传输网络文件
安全性低
简单易操作
适合局域网环境

二,实验步骤:

  1. 安装nfs和rpcbind软件
  2. 修改配置文件设置共享
  3. 创建共享目录
  4. 开启服务
  5. 客户端验证共享目录可访问

服务器192.168.xxx.xxx上配置:

yum install -y nfs-utils rpcbind
vim /etc/exports //NFS配置文件 默认为空
/opt/web 192.168.118.0/24(rw,sync,no_root_squash)
mkdir -p /opt/web
ls /opt/

NFS配置文件常用选项
常用选项:
rw
表示允许读写
ro
表示为只读
sync
表示同步写入到内存与硬盘中
no_root_squash
表示当客户机以root身份访问时赋予本地root权限(默认是root_squash),如果不加那么客户端无法在里面编辑或写入文件,因为默认以nfsnobody的权限
root_squash
表示客户机用root用户访问该共享目录时,将root用户映射成匿名用户


其它常用选项:
all_squash
所有访问用户都映射为匿名用户或用户组
async
将数据先保存在内存缓冲区中,必要时才写入磁盘,速度快但会丢失数据
subtree_check(默认)
若输出目录是一个子目录,则nfs服务器将检查其父目录的权限
no_subtree_check
即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率

systemctl enable rpcbind
systemctl enable nfs
systemctl start rpcbind //需要先启动rpc服务,因为nfs要向rpc注册端口
systemctl start nfs
netstat -anpu |grep rpc //查看rpc状态
netstat -anpu |grep nfs //查看nfs
rpcinfo -p localhost //localhost指向服务器ip 查看nfs向rpc注册的端口信息
yum -y install netstat //若是没有netstat和net-tools就安装
yum -y install net-tools
systemctl stop firewalld
setenforce 0
showmount -e 192.168.xxx.xxx //验证共享 指向服务器ip
exportfs -v //验证结果 如果没有就exportfs -r刷新结果

客户机192.168.xxx.xxx上配置:

yum -y install nfs-utils rpcbind
showmount -e 192.168.xxx.xxx//客户端验证共享 指向服务端
yum  -y install httpd  
ls /var/www/html/
mount -t nfs 192.168.118.11:/opt/web /var/www/html/ //将共享目录挂载到网页目录
df -h
systemctl start httpd //启动web服务
curl 127.0.0.1  //成功访问主页内容
echo "Welcome to the Destiny Terminal database" >> /var/www/html/index.html
cat index.html //查看服务端生成文件 在客户端修改服务端也会同步

在浏览器上输入192.168.118.12

上一篇:centos7下使用wget命令出现 无法在本地验证发行者的权限。为了安全地连接到GC.GNU.ORG,请使用“无检查证书”。的解决方法


下一篇:【CentOs7在线安装docker】