Centos 6.5 搭建NFS服务器笔记

简介:

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://hao360.blog.51cto.com/5820068/1670521

http://fslc2004.blog.51cto.com/1559375/1403661 

http://www.cnblogs.com/mchina/archive/2013/01/03/2840040.html 

http://ixdba.blog.51cto.com/2895551/920290 

NFS服务器端安装

1、安装nfs服务端程序

[root@nfs ~]# yum install rpcbind nfs-utils

[root@nfs ~]# rpm -qa | grep -E "nfs-utils|rpcbind"

[root@nfs ~]# mkdir /home/data

[root@nfs ~]# chmod -R 755 /home/data

2、编辑配置文件/etc/exports,设置客户端访问权限。

[root@nfs ~]# vi /etc/exports

/home/data 192.168.3.0/24(rw)       #只允许192.168.3.0网段读写

3、启动rpcbindnfs服务

 [root@nfs ~]# chkconfig rpcbind on

[root@nfs ~]#chkconfig nfs on

[root@nfs ~]#service rpcbind start

[root@nfs ~]#service nfs start

4、创建一些测试资源

[root@nfs data]# touch text

[root@nfs data]# touch text.tar.gz


linux下面NFSclient安装

1、客户端安装rpcbind

[root@nfsclient ~]# yum install rpcbind nfs-utils

 [root@nfsclient ~]# service rpcbind start

[root@nfsclient ~]# showmount -e 192.168.3.103      #查询服务器端提供的资源

Export list for 192.168.3.103:

/home/data 192.168.3.0/24

2、创建本地挂载点,并挂载。

[root@nfsclient ~]# mkdir /mnt/data

[root@nfsclient ~]# mount 192.168.3.103:/home/data /mnt/data   #挂载服务器/home/data资源到地/mnt/data

3、实现开机挂载/etc/fstab

[root@nfsclient data]# umount -lf /mnt/data         #为了实验开机挂载,先取消挂载

[root@nfsclient data]# vi /etc/fstab                 # 进入/etc/fstab添加以下配置

192.168.3.103:/home/data      /mnt/data         nfs    defaults        0 0

[root@nfsclient data]# reboot            #从启看下是否开机后自动挂载

[root@nfsclient ~]# df -T

Filesystem                  Type  1K-blocks    Used Available Use% Mounted on

/dev/mapper/VolGroup-lv_root ext4   6926264 1294084   5280336  20%

192.168.3.103:/home/data    nfs     6926272 1402528   5171872 22% /mnt/data

4、测试挂载后的权限

[root@nfsclient ~]# cd /mnt/data        #进入挂载后的目录,新建文件试下权限

[root@nfsclient data]# mkdir test

mkdir: cannot create directory `test': Permission denied

试下在服务器端设置文件权限为777

[root@nfs ~]# chmod -R 777 /home/data/

[root@nfsclient data]# mkdir test

[root@nfsclient data]# ll

drwxr-xr-x 2 nfsnobody nfsnobody 4096 Apr 26 20:55 test

可以创建文件,但通过root访问nfs服务器,默认root会由root_squash的设定压缩成nfsnobody,成为匿名使用名。

5、测试创建用户去挂载,以及使用root用户不压缩挂载。

先在服务器端新建一个www用户,uidgid都为800

[root@nfs ~]# useradd -u 800 www

[root@nfs ~]# id www

uid=800(www) gid=800(www) groups=800(www)

[root@nfs ~]# setfacl -R -m u:800:rwx /home/data/    #只有使用者身份是www才可读写

[root@nfs ~]# getfacl /home/data                  #查看一下权限

getfacl: Removing leading '/' from absolute path names

# file: home/data

# owner: root

# group: root

user::rwx

user:www:rwx

group::rwx

mask::rwx

other::rwx

在客户端机器上创建一个与服务器端一样的用户,并且uidgid要与服务器相同。

[root@nfsclient ~]# useradd -u 800 www

[root@nfsclient ~]# su – www        #切换到用户www测试。

[www@nfsclient ~]$ cd /mnt/data

[www@nfsclient data]$ mkdir 123

[www@nfsclient data]$ ll

total 12

drwxrwxr-x 2 www    www      4096 Apr 26 21:24  123     #用户和组都为www

6、测试root用户不压缩时挂载

先在服务器端修改nfs配置文件/etc/exports

[root@nfshome]# vi /etc/exports

/home/data192.168.3.0/24(rw,no_root_squash)    #增加no_root_squash不压缩root

[root@nfs home]# service rpcbind restart

[root@nfshome]# service nfs restart


在客户端机器上测试验证

[root@nfsclientdata]# mkdir 123

[root@nfsclientdata]# ll

drwxr-xr-x 2 root     root      4096 Apr 26 21:47  123    #用户和组为root


7、如果服务器使用防火墙,客户端就无法访问,但除了固定的port 1112049外,其它不固定的端口是由rpc.mountd,rpc,rquotad等服务所开启,所以iptables很难设定规则, rpc 服务主要有 mountd, rquotad, nlockmgr 三个,Centos 6.X提供一个固定特定NFS服务端口的配置文件,如下:

在服务器端设置

[root@nfs ~]# vi /etc/sysconfig/nfs

RQUOTAD_PORT=1001

LOCKD_TCPPORT=30001

LOCKD_UDPPORT=30001

MOUNTD_PORT=1002


添加十个端口到防火墙规则里,并保存

[root@nfs ~]#iptables -I INPUT -p tcp --dport 111 -j ACCEPT

[root@nfs ~]#iptables -I INPUT -p tcp --dport 2049 -j ACCEPT

[root@nfs ~]#iptables -I INPUT -p tcp --dport 1001 -j ACCEPT

[root@nfs ~]#iptables -I INPUT -p tcp --dport 1002 -j ACCEPT

[root@nfs ~]#iptables -I INPUT -p tcp --dport 30001 -j ACCEPT

[root@nfs ~]#iptables -I INPUT -p udp --dport 111 -j ACCEPT

[root@nfs ~]#iptables -I INPUT -p udp --dport 2049 -j ACCEPT

[root@nfs ~]#iptables -I INPUT -p udp --dport 1001 -j ACCEPT

[root@nfs ~]#iptables -I INPUT -p udp --dport 1002 -j ACCEPT

[root@nfs ~]#iptables -I INPUT -p udp --dport 30001 -j ACCEPT

[root@nfs ~]# service iptables save


8、客户端测试是否挂载成功

[root@nfsclient ~]# df -T

Filesystem                 Type  1K-blocks    Used Available Use% Mounted on

192.168.3.103:/home/data  nfs     6926272 1406016   5168416 22% /mnt/data


Windows下面配置挂载

通过WIN7下的NFS功能,可以让win7共享Linux下面的磁盘分区或者目录数据,这个功能原理只能通过samba或者ftp来实现,并且配置复杂,而现在通过在win7下开启NFS功能,只需一分钟时间即可完成配置,简单方便。

1:首先是在linux下设置nfs数据共享
[root@localhost ~]# more /etc/exports 
/app   192.168.12.0(rw,no_root_squash)

然后执行:
[root@localhost ~]# exportfs  -av
exporting 192.168.12.0:/app

2:在win7下开启nfs功能,如图:

wKioL1WWG-6TREuOAAKqCUfLmr8478.jpg

3:接着开始在win7进行挂载操作,如下图:

wKioL1WWHAzRaWlJAAEfcmoQomM848.jpg

4:修改win7对nfs分区只读属性

Win7 NFS客户端使用mount命令挂载NFS服务之后,文件系统对Win7只读,无法写入文件,无法新建文件夹,此时使用mount命令可以查看到如下状态:

wKioL1WWHC3SENzRAAB6x1U685E724.jpg

可以看到UID=-2由于在存储设备上共享出来的NFS文件系统归属于root权限,并且无法修改该所属用户,而Windows通过UID=-2的用户去写,肯定写不进去。

解决办法就是让Win7在挂载NFS的时候将UID和GID改成0即可:打开注册表:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default,增加两项:AnonymousUid,AnonymousGid,如图:

wKiom1WWGo_z4wrGAAMGqY0z0No258.jpg

重新启动计算机,重新mount即可。此时就能在win7下对nfs文件系统进行读写操作了,跟本地磁盘一样。

查看mount属性,如下:

wKioL1WWHHmDLhVqAACUfeYNqTI871.jpg

mount命令在win7下的具体用法如下:

wKiom1WWGs_xi66_AAHs1NWwHsw343.jpg

如果要去掉nfs共享,只需只需卸载命令即可,umount用法如下:

wKioL1WWHLWSxmnSAAEizIOO5jw383.jpg


Mac电脑上面挂载方法:

在终端中使用  

showmount -e IP\Domain

wKiom1WWHODRxuvwAAC0LSQBldA135.jpg

然后使用命令挂载即可

$ sudo mount -t nfs 192.168.100.222:/var/www /private/nfs

本文出自 “从心开始” 博客,请务必保留此出处http://hao360.blog.51cto.com/5820068/1670521






      本文转自rshare 51CTO博客,原文链接:http://blog.51cto.com/1364952/1952221,如需转载请自行联系原作者


相关文章
|
21天前
|
存储 安全 Linux
CentOS 7.9系统备份:每日定期发送最新备份文件到另一台服务器。
注意,这个解决方案忽略了很多细节,例如错误处理和通知、备份版本控制、循环处理旧的备份文件等等。此外,你也应该尽量保持源服务器和目标服务器之间快速,稳定且安全的网络连接,并且目标服务器应该有足够的空间用于存放每天的备份文件。如果你需要更高级的备份解决方案,可能需要考虑一下使用专门的备份工具或者服务。
54 18
|
1月前
|
存储 运维 网络协议
【Syslog】Centos下的syslog服务器配置
通过本文的配置指导,您不仅学会了如何安装和配置 `rsyslog`,还掌握了如何在防火墙中开放必要的端口,并验证服务器的配置是否正确。希望这些知识能够帮助您更好地管理和维护您的Linux系统。
122 15
|
3月前
|
安全 大数据 Linux
云上体验最佳的服务器操作系统 - Alibaba Cloud Linux | 飞天技术沙龙-CentOS 迁移替换专场
本次方案的主题是云上体验最佳的服务器操作系统 - Alibaba Cloud Linux ,从 Alibaba Cloud Linux 的产生背景、产品优势以及云上用户使用它享受的技术红利等方面详细进行了介绍。同时,通过国内某社交平台、某快递企业、某手机客户大数据业务 3 大案例,成功助力客户实现弹性扩容能力提升、性能提升、降本增效。 1. 背景介绍 2. 产品介绍 3. 案例分享
|
6月前
|
NoSQL Linux Redis
在 centos7 下重启/开启 redis 服务器
本文提供了一种在Centos 7操作系统下如何重启Redis服务器的步骤,包括停止Redis服务、确认停止成功以及重新启动Redis服务。
367 2
在 centos7 下重启/开启 redis 服务器
|
6月前
|
存储 弹性计算 算法
前端大模型应用笔记(四):如何在资源受限例如1核和1G内存的端侧或ECS上运行一个合适的向量存储库及如何优化
本文探讨了在资源受限的嵌入式设备(如1核处理器和1GB内存)上实现高效向量存储和检索的方法,旨在支持端侧大模型应用。文章分析了Annoy、HNSWLib、NMSLib、FLANN、VP-Trees和Lshbox等向量存储库的特点与适用场景,推荐Annoy作为多数情况下的首选方案,并提出了数据预处理、索引优化、查询优化等策略以提升性能。通过这些方法,即使在资源受限的环境中也能实现高效的向量检索。
191 1
|
6月前
|
存储 网络协议 Linux
AWS实操-EC2-创建购买linux(centos)EC2服务器
AWS实操-EC2-创建购买linux(centos)EC2服务器
|
6月前
|
弹性计算 关系型数据库 MySQL
CentOS 7.x操作系统的ECS云服务器上搭建WordPress网站
CentOS 7.x操作系统的ECS云服务器上搭建WordPress网站
|
6月前
|
Linux 数据安全/隐私保护 Windows
centos 7.2 搭建svn服务器
centos 7.2 搭建svn服务器
195 0
|
4天前
|
关系型数据库 MySQL Linux
CentOS 7系统下详细安装MySQL 5.7的步骤:包括密码配置、字符集配置、远程连接配置
以上就是在CentOS 7系统下安装MySQL 5.7的详细步骤。希望这个指南能帮助你顺利完成安装。
107 26
|
6天前
|
Kubernetes Linux 网络安全
CentOS 7.8下使用kubeadm安装Kubernetes 1.26
这就是所有的前线报告,冒险家们,你们已经做好准备,开始在CentOS 7.8上通过Kubeadm安装Kubernetes 1.26的挑战了吗?走上这段旅程,让你的代码飞翔吧。
53 16