文章目录

  • Centos7----NFS服务器配置
  • rpm包安装
  • 配置文件配置
  • 服务开启
  • 开启端口
  • 显示共享目录状态
  • 客户端配置
  • 查看目标服务器共享目录状态
  • 实现挂载
  • 查看挂载


Centos7----NFS服务器配置

 

rpm包安装

 NFS服务涉及两个主要的rpm包,rpcbind和nfs-utils。有两种方法安装,一种,直接使用yum install xxxx进行安装;另外一种获取这两个包以及它所依赖的包,使用rpm -ivh进行手动安装。
 
在这里我们使用第二种方法,通过 yum 命令的 Downloadonly 插件下载 RPM 软件包及其所有依赖包。
为了安装 Downloadonly 插件,以 root 身份运行以下命令。
yum install yum-plugin-downloadonly
即安装了此插件。

之后我们需要下载RPM软件包以及它的依赖包到某个目录中,如下形式的代码

yum install  --downloadonly  --downloaddir=/root/mypackages/  httpd-2.2.6-40.el7
    #此命令将httpd软件包及其依赖包下载到目录/root/mypackages/中
    
    
    #在linux命令行中以root权限运行代码如下:
    yum install  --downloadonly  --downloaddir=/RPM/NFS_RPM  rpcbind
    yum install --downloadonly --downloaddir=/RPM/NFS_RPM nfs-utils
    #安装发现,总共有17个软件包,这些都是和nfs有关的软件包,这就需要使用rpm -i 一次性安装多个软件包了
    
  
    #进入/RPM/NFS_RPM中,运行代码:
    rpm -i ./*.rpm
    
    #启动nfs服务,检验是否安装成功
    systemctl restart nfs
    systemctl restart rpcbind
    systemctl status nfs    #查看开启状态
    systemctl status rpcbind    #查看开启状态

 

配置文件配置

  已知当前linux server ip是192.168.91.133; 远程linux client端ip是192.168.91.131。实验需要实现:client端可以在/mnt/nfs_share挂载server端的共享目录/nfs_share,权限是可读可写。
  文件涉及/etc/exports

vi /etc/exports
  
    #编辑exports文件
    /nfs_share      192.168.91.131(sync,rw) 
  
    # 规则:
    # 共享目录       client端ip(sync,rw或ro)  其他client的ip(sync,rw或ro)
    # 其中,目录和ip通过tab分开,client的ip之间通过空格分开。
    # sync      用户之间同步写磁盘,这样不会丢数据,NFS服务建议使用该选项
    # ro        输出的共享目录只读
    # rw        输出的共享目录可读可写

 

服务开启

systemctl restart rpcbind
    systemctl restart nfs
    systemctl enable rpcbind    #开机自启
    systemctl enable nfs    #开机自启

 

开启端口

  查看nfs服务涉及的端口:

rpcinfo  -p  192.168.91.133  # 本地ip
    
    #输出
    
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100005 1 udp 20048 mountd
100005 1 tcp 20048 mountd
100005 2 udp 20048 mountd
100005 2 tcp 20048 mountd
100005 3 udp 20048 mountd
100005 3 tcp 20048 mountd
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100227 3 tcp 2049 nfs_acl
100003 3 udp 2049 nfs
100003 4 udp 2049 nfs
100227 3 udp 2049 nfs_acl
100021 1 udp 43071 nlockmgr
100021 3 udp 43071 nlockmgr
100021 4 udp 43071 nlockmgr
100021 1 tcp 39876 nlockmgr
100021 3 tcp 39876 nlockmgr
100021 4 tcp 39876 nlockmgr

 其中NFS主要端口有三个:
(1) portmapper端口(udp/tcp):111
(2) nfs端口(udp/tcp): 2049
(3) mountd端口(udp/tcp): 20048
 
 使用防火墙命令开启对应端口,有两种方法,一种手动添加:

firewall-cmd  --permanent  --add-port=111/tcp   # --permanent 说明永久添加端口
    firewall-cmd  --permanent  --add-port=111/udp
       ……
       
    #如此添加六次,最后需要重启防火墙
    firewall-cmd  --reload
    systemctl  restart  firewalld

 第二种,直接添加服务:

firewall-cmd  --permanent  --add-service=nfs  # 这是永久添加
    
    #重启防火墙
    firewall-cmd  --reload
    systemctl  restart  firewalld

 

显示共享目录状态

 需要使用到showmount命令

showmount   -e
    #命令参数不加ip,说明查看本地状态,showmount -e 192.168.1.1 说明查看对面linux的共享状态
    
    #输出
    Export list for localhost:
    /nfs_share 192.168.91.131

 
 

客户端配置

查看目标服务器共享目录状态

showmount -e 192.168.91.133
    
    #输出
    Export list for 192.168.91.133:
    /nfs_share 192.168.91.131
    #成功

 

实现挂载

mount  192.168.91.133:/nfs_share  /mnt/nfs_share
    #规则:
    # mount  server的ip:共享目录  挂载到哪里的本地目录
    # 这只是临时挂载,如果需要永久挂载就需要设置/etc/fstab文件,具体可以百度。
    # 挂载成功后,client就可以把共享目录当做本地目录进行访问。

查看挂载

mount | grep nfs_share
    # 就可以查看挂载记录