NFS客户端和NFS服务端通讯过程

1.首先服务器端启动RPC服务,并开启111端口

2.服务器端启动NFS服务,并向RPC注册端口信息

3.客户端启动RPC(portmap服务),向服务端的RPC请求服务端的NFS端口

4.服务端的RPC反馈NFS端口信息给客户端

5.客户端通过获取的NFS端口来建立和服务端的NFS连接并进行数据的传输

一、安装NFS软件(默认已安装)

要部署NFS服务,服务端和客户端都需要安装这两个软件

nfs-utils:NFS主程序

rpcbind:PRC主程序

# 安装
sudo pacman -S nfs-utils
sudo pacman -S rpcbind

二、配置NFS服务端

编辑 /etc/exports,添加格式如下

# [共享目录]    [客户端地址1(权限)]    [客户端地址2(权限)]    ...
# [共享目录] [客户主机名1(权限)] [客户主机名2(权限)] ...
# 设置目录最高权限 sudo chmod 777 [共享目录]
/tftp1 10.82.16.233(rw,no_root_squash,no_subtree_check,sync)
/tftp2 *(rw,no_root_squash,no_subtree_check,sync)

(权限)参数列表:

rw读写属性

ro只读属性

sync文件实际写入磁盘后才返回

all_squash:所有访问用户均被压缩成后续接的用户

anonuid:默认压缩的用户

anongid:默认压缩的用户组

*:所有主机

三、启动服务端NFS服务

先启动 [rpcbind],然后启动 [nfs-server]

systemctl start rpcbind.service
systemctl start nfs-server.service

将他们设置为开机启动

systemctl enable rpcbind.service
systemctl enable nfs-server.service

查看当前状态

systemctl status rpcbind
systemctl status nfs-server

四、配置客户端NFS服务

1 启动rpcbind服务并设置为开机启动(hisiv 3519跳过这一步)

systemctl enable rpcbind.service
systemctl start rpcbind.service
#客户端不需要启动nfs服务

2 将服务器的共享目录挂载到客户端的目录下:

新建共享目录:mkdir -p /mnt/code

修改权限:chmod 777 /mnt/code -R

挂载到客户端:

挂载到开发版 mount -t nfs -o nolock -o tcp -o rsize=32768,wsize=32768 IP:/code /mnt/code

挂载到Linux mount -t nfs -o nolock -o tcp IP:/code /mnt/code

挂载到windows mount -o mtype=soft -o timeout=3 -o retry=3 -o nolock \\IP\code H:

IP:/code 是服务器的IP地址和共享目录, /mnt 是客户端的目录,mtype=soft为软挂载,timeout为RPC调用超时秒值,retry为软挂载重试次数,这样设置客户端不容易卡死。

挂载后就可以从客户端的 /mnt 目录访问服务器/code目录下的内容了。

查看是否挂载成功 df -h

五、其他命令

服务器配置:

exportfs      :在服务的查看已经开启的共享目录命令
exportfs -r :修改 /etc/exports 服务配置后马上生效

如果出现:

exportfs: could not open /var/lib/nfs/.etab.lock for locking: errno 13 (Permission denied)
exportfs: can't lock /var/lib/nfs/etab for writing

解决办法:sudo chmod 777 -R /var/lib/nfs 再重新执行。

客户端:

showmount -e nfs    :检查 NFS 服务器端是否有目录共享

服务控制 [rpcbind] 和 [nfs-server] :

systemctl status     [服务名]:查看当前状态
systemctl restart [服务名]:重新启动服务
systemctl disable [服务名]:停止开机启动

防火墙:

sudo systemctl status  firewalld.service
sudo systemctl stop firewalld.service
sudo systemctl disable firewalld.service

更多详细可以参考:NFS服务基本配置及使用

Manjaro Linux 配置nfs服务器的更多相关文章

  1. Linux 配置NFS,文件共享

    配置:   1.设定共享主机服务器    ---(注意防火墙) 编辑ipA端的/etc/exports 文件 [root@dbrac2 ~]# cat /etc/exports /media  192 ...

  2. Linux 配置nfs

    原文:http://www.cnblogs.com/mchina/archive/2013/01/03/2840040.html 一.NFS服务简介 NFS 是Network File System的 ...

  3. 配置NFS服务器

    一.配置NFS服务器 1.安装软件包 [root@wjb10000 ~]# yum -y install nfs-utils.x86_64 2.修改配置文件[root@wjb10000 ~]# vim ...

  4. Linux配置日志服务器

    title: Linux配置日志服务器 tags: linux, 日志服务器 --- Linux配置日志服务器 日志服务器配置文件:/etc/rsyslog.conf 服务器端: 服务器IP如下: 编 ...

  5. linux下配置NFS服务器

    (声明:本文大部分文字摘自Linux NFS服务器的安装与配置) 一.NFS简介     NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定,由Su ...

  6. linux下安装与配置nfs服务器

    NFS 什么是NFS?(NAS) NFS(网络文件系统):它的主要功能是通过网络让不同的机器系统之间可以彼此共享文件和目录.NFS服务器可以允许NFS客户端将远端NFS服务器端的共享目录挂载到本地的N ...

  7. Linux下NFS服务器的搭建与配置

    一.NFS服务简介 NFS 就是 Network FileSystem 的缩写,最早之前是由sun 这家公司所发展出来的. 它最大的功能就是可以透过网络,让不同的机器.不同的操作系统.可以彼此分享个别 ...

  8. Linux下NFS服务器的搭建与配置(转载)

    一.NFS服务简介 NFS 就是 Network FileSystem 的缩写,最早之前是由sun 这家公司所发展出来的. 它最大的功能就是可以透过网络,让不同的机器.不同的操作系统.可以彼此分享个别 ...

  9. Linux下NFS服务器的搭建与配置(转)

    一.NFS服务简介 NFS 就是 Network FileSystem 的缩写,最早之前是由sun 这家公司所发展出来的. 它最大的功能就是可以透过网络,让不同的机器.不同的操作系统.可以彼此分享个别 ...

随机推荐

  1. 关于Intel漏洞的学习

    这几天报道了Intel的漏洞,这里学习一下并做个记录. 报告:https://spectreattack.com/spectre.pdf #include <stdio.h> #inclu ...

  2. python中文分词库——pynlpir

    安装 pip install pynlpir import pynlpir #加载包 pynlpir.open() #加载nlpir的库,这步是必须的 #否则会出现 段错误/段转储 segment f ...

  3. vue-router 进阶

    简单回顾一下vue基础部分 动态路由匹配 路由配置方法 export default new Router({ routes: [ { path: '/router01/:name', name: ' ...

  4. JAVA SE ------------------- 项目的菜单输入

    //写一个工具类,进行输入选项数值的获取public class InputUtil { static Scanner sc=new Scanner(System.in); public static ...

  5. java中 时间/日期 的使用方法

    import java.util.*;    //引入date需要的包import java.text.SimpleDateFormat;//   引入格式化需要的包import java.util. ...

  6. SpringMVC+MyBatis+Druid使用MySQL8.0.11版本

    1.使用MySQL8.0.11版本,要使用5.1.45或其他高版本驱动jar包,我本地使用的是最新的8.0.11 2.更换了MySQL驱动后,报Cannot find class [com.aliba ...

  7. Codeforces 1090A - Company Merging - [签到水题][2018-2019 Russia Open High School Programming Contest Problem A]

    题目链接:https://codeforces.com/contest/1090/problem/A A conglomerate consists of n companies. To make m ...

  8. 电力电子MATLAB

    1.电力电子仿真时,要加一个powergui 2.变压器Multi-Winding Transformer 其中额定电压比就是匝数比,并且变压器上的电压不能超过额定电压 上图这一项表示变压器的容量和频 ...

  9. Linux 从源码编译安装 OpenSSH

    https://blog.csdn.net/bytxl/article/details/46639073 Linux 从源码编译安装 OpenSSH以及各问题解决 2015年06月25日 17:37: ...

  10. 实现mybash

    任务内容 1.使用fork,exec,wait实现mybash 查找资料: fork函数 通过fork()系统调用我们可以创建一个和当前进程印象一样的新进程.我们通常将新进程称为子进程,而当前进程称为 ...