CentOS 6.5系统下安装和配置NFS服务

简介: 一、环境介绍:   服务器:centos 192.168.1.225   客户端:centos 192.168.1.226 二、安装: NFS的安装配置:centos 5 : 1 yum -y install nfs-utils portmap centos 6(在CentOS 6.

一、环境介绍:

  服务器:centos 192.168.1.225

  客户端:centos 192.168.1.226

二、安装:

NFS的安装配置:


centos 5 :

1
yum -y  install  nfs-utils portmap

centos 6(在CentOS 6.5当中,portmap服务由rpcbind负责) :

1
yum -y  install  nfs-utils rpcbind

三、服务器端配置:

1、创建共享目录:

1
[root@centos2 /] # mkdir /usr/local/test

2、NFS文件配置:

1
2
3
[root@centos2 /] # vi /etc/exports 
#增加一行:
/usr/local/test/  192.168.1.226(rw,no_root_squash,no_all_squash, sync )

:x 保存退出;

使配置生效:

1
[root@centos2 /] # exportfs -r

注:配置文件说明:

/usr/local/test/ 为共享的目录,使用绝对路径

192.168.1.226(rw,no_root_squash,no_all_squash,sync) 为客户端的地址及权限,地址可以是一个网段,一个IP地址或者是一个域名,域名支持通配符,如:*.youxia.com,地址与权限中间没有空格,权限说明:

rw:read-write,可读写;

ro:read-only,只读;

sync:文件同时写入硬盘和内存;

async:文件暂存于内存,而不是直接写入内存;

no_root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,也拥有root权限。显然开启这项是不安全的。

root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,拥有匿名用户权限,通常他将使用nobody或nfsnobody身份;

all_squash:不论NFS客户端连接服务端时使用什么用户,对服务端分享的目录来说都是拥有匿名用户权限;

anonuid:匿名用户的UID值,通常是nobody或nfsnobody,可以在此处自行设定;

anongid:匿名用户的GID值。

3、启动:

centos6:

1
2
3
4
5
6
7
8
9
10
[root@centos2 /] # service rpcbind start
Starting rpcbind:                                          [  OK  ]
[root@centos2 /] # service nfs start
Starting NFS services:                                     [  OK  ]
Starting NFS quotas:                                       [  OK  ]
Starting NFS mountd:                                       [  OK  ]
Stopping RPC idmapd:                                       [  OK  ]
Starting RPC idmapd:                                       [  OK  ]
Starting NFS daemon:                                       [  OK  ]
[root@centos2 /] #

centos 5

1
2
3
[root@centos2 /] # service portmap start
[root@centos2 /] # service nfs start
[root@centos2 /] #

四、客户端挂载:

1、创建需要挂载的目录:

1
2
[root@localhost ~] # mkdir /usr/local/test
[root@localhost ~] #

2、测试挂载:

1
2
3
4
[root@localhost ~] # showmount -e 192.168.1.225
Export list  for  192.168.1.225:
/usr/local/test  192.168.1.226
[root@localhost ~] #

如果显示:rpc mount export: RPC: Unable to receive; errno = No route to host,则需要在服务端关闭防火墙(稍候会详细说)。

3、挂载:

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@localhost ~] # mount -t nfs 192.168.1.225:/usr/local/test /usr/local/test
[root@localhost ~] # mount
/dev/mapper/VolGroup-lv_root  on /  type  ext4 (rw)
proc on  /proc  type  proc (rw)
sysfs on  /sys  type  sysfs (rw)
devpts on  /dev/pts  type  devpts (rw,gid=5,mode=620)
tmpfs on  /dev/shm  type  tmpfs (rw)
/dev/sda1  on  /boot  type  ext4 (rw)
none on  /proc/sys/fs/binfmt_misc  type  binfmt_misc (rw)
sunrpc on  /var/lib/nfs/rpc_pipefs  type  rpc_pipefs (rw)
nfsd on  /proc/fs/nfsd  type  nfsd (rw)
192.168.1.225: /usr/local/test  on  /usr/local/test  type  nfs (rw,vers=4,addr=192.168.1.225,clientaddr=192.168.1.226)
[root@localhost ~] #

如果信息如上显示则挂载成功!

4、测试:

客户端生成一个文件:

1
2
3
4
5
6
[root@centos2 /] # cd /usr/local/test/
[root@centos2  test ] # echo "hello nfs test">>test
[root@centos2  test ] # ll
total 4
-rw-r--r-- 1 root root 15 Apr  9 13:24  test
[root@centos2  test ] #

服务端检查:

1
2
3
4
5
[root@centos2 /] # cd /usr/local/test/
[root@centos2  test ] # ll
total 4
-rw-r--r-- 1 root root 15 Apr  9 13:24  test
[root@centos2  test ] #

挂载成功!

五、解除挂载:

1
2
3
4
5
6
7
8
9
10
11
12
[root@localhost ~] # umount /usr/local/test
[root@localhost ~] # mount
/dev/mapper/VolGroup-lv_root  on /  type  ext4 (rw)
proc on  /proc  type  proc (rw)
sysfs on  /sys  type  sysfs (rw)
devpts on  /dev/pts  type  devpts (rw,gid=5,mode=620)
tmpfs on  /dev/shm  type  tmpfs (rw)
/dev/sda1  on  /boot  type  ext4 (rw)
none on  /proc/sys/fs/binfmt_misc  type  binfmt_misc (rw)
sunrpc on  /var/lib/nfs/rpc_pipefs  type  rpc_pipefs (rw)
nfsd on  /proc/fs/nfsd  type  nfsd (rw)
[root@localhost ~] #

如果遇到:umount.nfs: /usr/local/test: device is busy

可能用命令:

1
2
3
4
5
6
7
8
[root@localhost /] # fuser -m -v /usr/local/test
                      用户     进程号 权限   命令
/usr/local/test/ :              root       2798 ..c..  bash
                      root       2996 ..c..  su
[root@localhost /] # kill -9 2798
[root@localhost /] # kill -9 2996
[root@localhost /] # umount /usr/local/test
[root@localhost /] #

 

六、服务器端防火墙设置(NFS 开启防墙配置):

1、修改/etc/service,添加以下内容(端口号必须在1024以下,且未被占用)

1
2
3
4
5
# Local services  
     mountd 1011 /tcp  #rpc.mountd  
     mountd 1011 /udp  #rpc.mountd  
     rquotad 1012 /tcp  #rpc.rquotad  
     rquotad 1012 /udp  #rpc.rquotad

2、重起Linux NFS服务

1
  service nfs restart

3、此时rpc相关端口已经被固定,可以为Linux NFS添加防火墙规则

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
     #portmap  
     /sbin/iptables  -A INPUT -s 192.168.1.0 /254  -p tcp --dport 111 -j ACCEPT  
     /sbin/iptables  -A INPUT -s 192.168.1.0 /254  -p udp --dport 111 -j ACCEPT  
     #nfsd  
     /sbin/iptables  -A INPUT -s 192.168.1.0 /254  -p tcp --dport 2049 -j ACCEPT  
     /sbin/iptables  -A INPUT -s 192.168.1.0 /254  -p udp --dport 2049 -j ACCEPT  
     #mountd  
     /sbin/iptables  -A INPUT -s 192.168.1.0 /254  -p tcp --dport 1011 -j ACCEPT  
     /sbin/iptables  -A INPUT -s 192.168.1.0 /254  -p udp --dport 1011 -j ACCEPT  
     #rquotad  
     /sbin/iptables  -A INPUT -s 192.168.1.0 /254  -p tcp --dport 1012 -j ACCEPT  
     /sbin/iptables  -A INPUT -s 192.168.1.0 /254  -p udp --dport 1012 -j ACCEPT  
     #rpc.statd  
     /sbin/iptables  -A INPUT -s 192.168.1.0 /254  -p tcp --dport 32768 -j ACCEPT  
     /sbin/iptables  -A INPUT -s 192.168.1.0 /254  -p udp --dport 32768 -j ACCEPT
1
2
3
4
5
6
---TCP方法成功-------------------------------------------
-A INPUT -m state --state NEW -m tcp -p tcp --dport 111 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 2049 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1011 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1012 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 32768 -j ACCEPT

客户端在挂载的时候遇到的一个问题如下,可能是网络不太稳定,NFS默认是用UDP协议,换成TCP协议即可:

1
mount  -t nfs 192.168.1.225: /usr/local/test  /usr/local/test   -o proto=tcp -o nolock

 

目录
相关文章
|
23天前
|
Linux 应用服务中间件 nginx
CentOS系统下的软件安装与卸载
CentOS系统中安装及卸载软件,常用yum命令安装及卸载软件包。yum是基于RPM的软件包管理器,可用于在CentOS中安装、更新、查询和移除软件包。yum命令可以从指定服务器下载rpm包并安装,能自动解决依赖问题。
133 78
|
5天前
|
缓存 Ubuntu Linux
Linux中yum、rpm、apt-get、wget的区别,yum、rpm、apt-get常用命令,CentOS、Ubuntu中安装wget
通过本文,我们详细了解了 `yum`、`rpm`、`apt-get`和 `wget`的区别、常用命令以及在CentOS和Ubuntu中安装 `wget`的方法。`yum`和 `apt-get`是高层次的包管理器,分别用于RPM系和Debian系发行版,能够自动解决依赖问题;而 `rpm`是低层次的包管理工具,适合处理单个包;`wget`则是一个功能强大的下载工具,适用于各种下载任务。在实际使用中,根据系统类型和任务需求选择合适的工具,可以大大提高工作效率和系统管理的便利性。
54 25
|
15天前
|
监控 Linux PHP
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
65 20
|
1月前
|
存储 Shell 网络安全
Centos7.9安装openldap
Centos7.9安装openldap
58 16
|
1月前
|
数据可视化 Linux 应用服务中间件
Centos7.9安装phpldapadmin
Centos7.9安装phpldapadmin
62 15
|
1月前
|
网络协议 Java 应用服务中间件
centos7环境下tomcat8的安装与配置
本文介绍了在Linux环境下安装和配置Tomcat 8的详细步骤。首先,通过无网络条件下的文件交互软件(如Xftp 6或MobaXterm)下载并解压Tomcat安装包至指定路径,启动Tomcat服务并测试访问。接着,修改Tomcat端口号以避免冲突,并部署Java Web应用项目至Tomcat服务器。最后,调整Linux防火墙规则,确保外部可以正常访问部署的应用。关键步骤包括关闭或配置防火墙、添加必要的端口规则,确保Tomcat服务稳定运行。
|
Linux
百度搜索:蓝易云 ,Centos7系统wget 的安装与使用详细教程。
以上是在CentOS 7系统上安装和使用wget的详细教程。确保按照步骤操作,并根据您的需求进行必要的修改和调整。
198 0
|
关系型数据库 MySQL Linux
百度搜索:蓝易云【Centos7系统如何安装MySQL5.7数据库?】
安装 MySQL 5.7 数据库需要进行以下步骤:
132 0
|
9月前
|
关系型数据库 Linux Shell
Centos系统上安装PostgreSQL和常用PostgreSQL功能
Centos系统上安装PostgreSQL和常用PostgreSQL功能
|
Shell Linux Python
centos7系统 shell脚本安装python3 各版本
centos7系统 shell脚本安装python3 各版本
294 0

热门文章

最新文章