NFS需要使用远程过程调用 (RPC),也就是说,我们并不是只要启动NFS, 还需要启动RPC这个服务
服务器端
CentOS 7.4
ip:172.16.0.1
共享/tmp目录
共享/data目录给172.16.0.2
安装nfs
# yum install rpcbind
# yum install nfs-utils
# service rpcbind start
# service nfs start
设置rpcbind和nfs服务开机启动
# chkconfig nfs on
# chkconfig rpcbind on
也可以设置rpcbind和nfs服务只在系统运行级别3和5自动启动。
# chkconfig --level 35 rpcbind on
# chkconfig --level 35 nfs on
配置共享文件夹
在/etc/exports添加:
/data 172.16.0.2(rw) #对指定ip共享共享/data目录
也可以用共享给所有IP
/data *(rw,sync,no_root_squash) #共享/data目录
参数
作用
ro
只读模式
rw
读写模式
root_squash
当NFS客户端使用root用户访问时,映射为NFS服务端的匿名用户
no_root_squash
当NFS客户端使用root用户访问时,映射为NFS服务端的root用户
sync
同时讲数据写入到内存与硬盘中,保证不丢失数据
async
优先将数据保存到内存,然后再写入硬盘,效率更高,但可能造成数据丢失
修改后不用重启nfs,执行以下命令生效:
# exportfs -a
添加读写权限
chmod -R 666 /data
防火墙中开放端口
RedHat在7中更改了系统软件,不再使用iptables作为系统的防火墙,而是使用了FirewallD,但是为了兼容过去的命令也可以使用iptables来设置防护规则。
需要开放rpc(111端口),nfs(2049端口),nfs挂载端口(892端口),其中111和892是tcp,udp都用。
# iptables -I INPUT -p tcp -m multiport --dports 111,892,2049 -j ACCEPT
# iptables -I INPUT -p udp -m multiport --dports 111,892 -j ACCEPT
上述配置系统重启后失效,要永久有效,需要修改/etc/sysconfig/iptables-config配置文件,详细请baidu
使用firewall,使用permanent参数,系统重启后依然有效
# firewall-cmd --zone=public --add-port=111/tcp --permanent
# firewall-cmd --zone=public --add-port=111/udp --permanent
# firewall-cmd --zone=public --add-port=892/tcp --permanent
# firewall-cmd --zone=public --add-port=892/ucp --permanent
# firewall-cmd --zone=public --add-port=2049/tcp --permanent
# systemctl restart firewalld.service //重启防火墙
# firewall-cmd --zone=dmz --list-ports //查看开放的端口
重启nfs
# service rpcbind restart
# service nfs restart
# showmount -e //查看自己共享的目录
客户端
CentOS 7.4
ip:172.16.0.2
挂载172.16.0.1:/data到本地/data目录
# mount -t nfs 172.16.0.1:/data /data
开机自动挂载
在/etc/fstab中添加
172.16.0.1:/data /data nfs defaults 0 0
添加读写权限
chmod -R 666 /data
如果还是出现其他权限问题,比如Permission denied等,可以修改文件夹的所有者为nfsnobody
chown nfsnobody.nfsnobody -R /data
关于linux中关在共享文件的NFS 提示错误解决办法
0. 查看挂载情况命令 : findmnt 1. 如果在客户机上遇到如下这样的提示错误,有可能的原因是因为没有安装nfs-utils 只需要yum install nfs-utils 就解决了 ...
Linux下通过NFS共享文件夹
测试环境:CentOS 6.7 服务端 # yum -y install nfs-utils rpcbind # 开启服务 service nfs start service rpcbind star ...
在linux中访问virtualbox的共享文件夹
1.在客户机里需要安装Virtualbox的增强功能. 2.使用virtualbox的图形界面设置好共享文件夹. 3.假设你设置的共享文件夹的名称是 share,使用如下命令在客户机的linux系统中 ...
Linux 中NFS服务器的搭建
serve端IP:192.168.2.128 客户端IP:192.168.2.131 server端配置: 1.安装nfs,rpcbind,可以参考Linux 中yum的配置来安装: yum inst ...
在WINDOWS2008 Server 中创建NFS服务器,使用LINUX的MOUNT命令去加载网络盘
1.在WINDOWS服务器中创建NFS SERVER 首先,打开服务管理器,选择添加角色: 选中文件服务,下一步: 出现一个提示,不管它,继续下一步: 在接下来的页面中选中“网 ...
VirtualBox中Linux虚拟机与主机共享文件夹
VirtualBox中Linux虚拟机与主机共享文件夹 一.Linux虚拟机安装增强功能 二.点击虚拟机 设置-->选择 共享文件夹-->点击右侧的带加号的文件夹图标,执行下面的操作1. ...
linux上挂载windows共享文件夹
linux上挂载windows共享文件夹 1.共享windows目录 挂载之前得创建一个有password的用户(当前用户也能够),并将你要挂载的目录进行共享,并赋予读写权限 如图. watermar ...
linux下使用NFS挂载文件系统
转自linux如何使用NFS挂载文件系统 设备:一台服务器和一台客户端,这里我们把装在PC机上的RedHat作为服务器,而客户端则是嵌入式linux开发板. 环境:开发板已启动,连接好串口和网线,串口 ...
在Linux下访问Windows共享文件夹
说明 以下操作以Ubuntu为例,大家可以参考. 我在Ubuntu 14.04和16.04都试过了. Windows共享文件夹 如果局域网内有一台Windows主机,将指定文件夹设为共享,就可以在局域 ...
随机推荐
梦想还需有,因它必实现——发现最新版iOS漏洞,OverSky团队专访
梦想还需有,因它必实现——发现最新版iOS漏洞,OverSky团队专访 “成功了!”,随着一句欢呼声在阿里巴巴西溪园区传出,Cydia的图标出现在一部iOS9.3.4的iPhone6上并成功运行 ...
Java并发编程核心方法与框架-ExecutorService的使用
在ThreadPoolExecutor中使用ExecutorService中的方法 方法invokeAny()和invokeAll()具有阻塞特性 方法invokeAny()取得第一个完成任务的结果值 ...
js 中{},[]中括号,大括号
1. { } 大括号,表示定义一个对象,大部分情况下要有成对的属性和值,或是函数. 如: var LangShen = {"Name":"Langshen",& ...
mysql使用二进制日志恢复数据
一.恢复到某个二进制文件 1.开启二进制日志 在mysqld的配置节点下添加如下配置 log-bin="E:/Mysql57BinLog/binlog"(windows下的路径,l ...
C#实现对文件目录的实时监控
本文主要描述如何通过C#实现实时监控文件目录下的变化,包括文件和目录的添加,删除,修改和重命名等操作. 首先,我们需要对.net提供的FileSystemWatcher类有所了解.我有些懒,找了MSD ...
hdoj 1035 Robot Motion
Robot Motion Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Tota ...
JQ each