`
hochiang
  • 浏览: 21399 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

nfs

 
阅读更多
NFS的安装配置:
centos 5 :
yum install nfs-utils portmap
centos 6 :
yum install nfs-utils rpcbind

服务端:
1.安装
yum install nfs-utils rpcbind
chkconfig —level 35 rpcbind on
chkconfig —level 35 nfs on
service rpcbind start
service nfs start
2.修改配置
vim /etc/exports
>>/home/kaifa/test xxx.xx.xx.xxx(rw,sync,all_squash,anonuid=500,anongid=500)
重启rpcbind nfs服务
查看配置是否正确:
sudo exportfs
3.若启用了防火墙,配置防火墙,如下

客户端:
1.安装
yum install nfs-utils rpcbind
2.测试连接nfs服务器
service iptables stop
showmount -e 192.168.1.75
3.挂载
sudo mount -o nolock -t nfs xx.xx.xx.xx:/drbd /var/www/resin/resource/
4.配置开机自动挂载
vi /etc/fstab
添加 #192.168.1.75:/opt/centos6/ /opt/centos6/ nfs nodev,rw 0 0
或者:
vi /etc/rc.d/rc.local #这个是启动系统时最后一个执行的程序
加入: mount -o nolock -t nfs xx.xx.xx.xx:/drbd /var/www/resin/resource/
-t :指定挂载的文件类型,这里是nfs
如要马上生效:命令行/etc/rc.d/rc.local 回车即可
5.查看挂载
mount -l
或 df
6.卸载
umount -v /dev/sda1          通过设备名卸载
umount -v /mnt/mymount/      通过挂载点卸载

服务端防火墙问题>>>
如果服务端启用了防火墙,客户端使用showmount -e 服务器IP,会出现如下错误:
clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to host)
使用rpcinfo -p 服务器IP,也会出错:
rpcinfo: can't contact portmapper: RPC: Remote system error - No route to host

这时需要服务端打开相应端口:
[root@mes-bk backup]# vi /etc/sysconfig/nfs

# Port rquotad should listen on.
RQUOTAD_PORT=875
# TCP port rpc.lockd should listen on.
LOCKD_TCPPORT=32803
# UDP port rpc.lockd should listen on.
LOCKD_UDPPORT=32769
# Port rpc.mountd should listen on.
MOUNTD_PORT=892

其中 portmapper nfs 服务端口是固定的分别是 111 2049
另外 rquotad nlockmgr mountd 服务端口是随机的。由于端口是随机的,这导致防火墙无法设置。
这时需要配置/etc/sysconfig/nfs 使 rquotad nlockmgr mountd 的端口固定。
找到以下几项,将前面的#号去掉。

使用rpcinfo -p localhost命令即可看到nfs服务需要用到的端口及协议,然后编辑iptables增加相应端口即可。
-A INPUT -s 11.40.8.144 -p tcp --dport 875 -j ACCEPT
-A INPUT -s 11.40.8.144 -p udp --dport 875 -j ACCEPT
-A INPUT -s 11.40.8.144 -p tcp --dport 32803 -j ACCEPT
-A INPUT -s 11.40.8.144 -p udp --dport 32803 -j ACCEPT
-A INPUT -s 11.40.8.144 -p tcp --dport 32679 -j ACCEPT
-A INPUT -s 11.40.8.144 -p udp --dport 32679 -j ACCEPT
-A INPUT -s 11.40.8.144 -p tcp --dport 892 -j ACCEPT
-A INPUT -s 11.40.8.144 -p udp --dport 892 -j ACCEPT
-A INPUT -s 11.40.8.144 -p tcp --dport 662 -j ACCEPT
-A INPUT -s 11.40.8.144 -p udp --dport 662 -j ACCEPT
-A INPUT -s 11.40.8.144 -p tcp --dport 111 -j ACCEPT
-A INPUT -s 11.40.8.144 -p udp --dport 111 -j ACCEPT
-A INPUT -s 11.40.8.144 -p tcp --dport 2049 -j ACCEPT
-A INPUT -s 11.40.8.144 -p udp --dport 2049 -j ACCEPT

这时到客户端再 使用命令:rpcinfo -p 服务器IP,即可看到相应信息

问题:
>>>
出现如下错误提示:
mount.nfs: access denied by server while mounting 172.16.12.140:/home/liangwode/test
那我们可以用以下的方法进行解决:
修改/etc/sysconfig/nfs文件,将

# Turn off v2 and v3 protocol support
#  RPCNFSDARGS="-N 2 -N 3"
# Turn off v4 protocol support
#RPCNFSDARGS="-N 4"    /*把这句话的#号去掉*/
NFS分为三个版本,即NFS-2 NFS-3 NFS-4,该配置文件默认关闭了这三个的NFS版本,我们只需要打开NFS-4即可。

问题解决!!!


nfs4中使用idmap映射用户的uid/gid
server和client上的用户uid和gid不一样的情况下,nfs共享权限会出错。
解决:(让uid和gid号相同即可)

或使用idmap这个服务
Server:

安装NFS相关的软件包
$ sudo apt-get install nfs-kernel-server
2.  进行配置
/etc/default/nfs-common

这是一个common配置文件,也就是说服务器端和客户端都要有相同的配置。
NEED_IDMAPD=yes # 此项将打开ID映射
NEED_GSSD=no # no is default
注释:ID映射用于解决服务器端UID与客户机UID不同,而无法访问资源的情况。通过UID映射,只需要相同的用户名即可。
/etc/idmapd.conf

既然启用了ID映射,就需要配置:
[Mapping]
Nobody-User = geek
Nobody-Group = geek

这里填写你需要映射都客户端的用户名和组名。
/etc/exports

/test/geek 192.168.1.0/24(rw,nohide,insecure,sync,no_root_squash)
选项解释:
rw                      – 可读写
nohide                  - 如果被挂载的目录下的其他目录也是挂载的,此选项将使它们可见
insecure                – 允许客户端不使用保留端口
sync                    - 每次写操作要同步到物理存储器上(而不是仅写入内存)
no_root_squash          – 当客户端以root的UID/GID(=0)挂载时,不会分配一个匿名UID/GID(也就是说它创建的文件将属于root)
3.  重启服务
/etc/init.d/nfs-kernel-server restart
service rpcidmapd restart

Client:
1. sudo apt-get install nfs-common
2. /etc/default/nfs-common
NEED_IDMAPD=yes  #打开ID映射
3./etc/idmapd.conf

既然启用了ID映射,就需要配置:
[Mapping]
Nobody-User = geek
Nobody-Group = geek

4./etc/init.d/idmapd restart
5./etc/fstab
IP:/     /mnt     nfs4   _netdev,auto 0 0                      #NFS4默认用了/,不需要写除完整的路径
6.mount -a -v
分享到:
评论

相关推荐

    NFS服务端离线安装包

    NFS(Network File System)是一种分布式文件系统协议,允许网络中的计算机之间共享文件和目录。在Ubuntu 18.04服务器环境下配置NFS服务端是实现跨机器数据共享的关键步骤。这个离线安装包正是为了解决在没有互联网...

    nfs服务器软件包.zip

    【NFS服务器软件包】 NFS(Network File System)是一种分布式文件系统协议,由Sun Microsystems在1984年开发,允许网络上的计算机共享文件和存储设备。NFS服务器软件包通常包含一组服务和工具,使得Linux或Unix...

    NFS服务端源码.zip

    在本压缩包中,我们主要关注NFS服务端的源码,特别是`nfs-server-2.2beta47-ubuntuok.tar.bz2`和`nfs-server-2.2beta47.tar.gz`这两个文件,它们包含了NFS服务器的实现代码。通过分析这些源码,我们可以深入了解NFS...

    centos7 nfs离线安装包

    NFS(Network File System)是UNIX和Linux系统中广泛使用的网络文件系统,它允许网络上的计算机之间共享文件和目录。在CentOS 7中,NFS服务被用于跨多个主机提供透明的文件共享功能,这对于多服务器环境或者集群配置...

    NFS的exports配置文件权限

    NFS(Network File System)是一种分布式文件系统协议,允许网络中的计算机通过TCP/IP网络共享文件和目录。NFS的exports配置文件是NFS服务的核心部分,它决定了哪些主机可以访问NFS服务器的哪些目录以及它们的访问...

    nfs1169工具.zip

    《Nfs1169工具在Windows系统的应用与配置详解》 Nfs1169是一款专为Windows系统设计的NFS(Network File System)工具,它的主要功能是帮助用户在Windows环境中搭建NFS服务器,从而实现不同操作系统之间的数据共享和...

    NFS搭建步骤.doc

    NFS搭建步骤 NFS(Network File System)是 Unix 和类 Unix 操作系统中的一种分布式文件系统,它允许客户机访问服务器上的文件系统,实现文件共享和交换。下面是 NFS 搭建步骤的详细讲解: 安装 NFS 服务器 1. ...

    NFS4的使用

    在深入探讨NFS4(Network File System版本4)与NFSv2、NFSv3之间的区别之前,我们首先简要回顾一下NFS的基本概念。NFS是一种分布式文件系统协议,允许网络上的不同计算机共享彼此的文件系统。自1985年首次推出以来,...

    ubuntn 离线安装 nfs 所需资源包

    在Ubuntu系统中,为了实现多台虚拟机之间的文件共享,我们常常会采用网络文件系统(NFS)。NFS是一种协议,允许一个系统(服务器)通过网络共享目录给其他系统(客户端),使得它们能够像访问本地文件一样访问远程...

    nfs离线安装包,服务端客户端离线安装包

    NFS(Network File System)是UNIX和Linux操作系统中广泛使用的一种网络文件系统协议,它允许一个网络中的计算机(客户端)挂载远程计算机(服务器)的文件系统,就像挂载本地文件系统一样。这个离线安装包包含了...

    Windows搭建nfs的工具及使用说明

    在Windows系统中搭建NFS(Network File System)服务器可以实现与Linux系统之间的文件共享,这对于跨平台协作和数据传输非常有帮助。以下是一份详细的Windows搭建NFS的工具选择及使用说明。 首先,你需要一个适合...

    NFS服务端源码 编译安装

    NFS(Network File System)是一种分布式文件系统协议,由Sun Microsystems开发,允许网络中的计算机之间共享文件和存储设备。在本教程中,我们将探讨如何在服务端编译和安装NFS源码,以便实现跨机器的文件共享和...

    win下NFS客户端

    标题中的“win下NFS客户端”指的是在Windows操作系统环境下安装和使用NFS(Network File System)客户端的过程。NFS是一种由Sun Microsystems开发的协议,它允许不同计算机系统之间共享文件和目录,通常在Linux和...

    Ubuntu 14.04安装配置NFS服务器

    Ubuntu 14.04 安装配置 NFS 服务器 NFS(Network File System)是一种允许多个电脑通过网络共享文件的系统。它使得不同的计算机可以通过网络访问和共享对方的文件,实现了文件的共享和交换。在 Ubuntu 14.04 中,...

    Linux系统NFS服务器的配置方法

    一、NFS服务器的安装 检查linux系统中是否安装了nfs-utils和portmap两个软件包(RHEL4系统默认已经安装了这两个软件包) 命令#rpm –q nfs-utils portmap 二、查看NFS服务器是否启动 命令#service nfs starus #...

    haneWIN NFS Server

    【haneWIN NFS Server】是一款专为Windows操作系统设计的NFS(Network File System)服务器软件。NFS是一种由Sun Microsystems开发的文件系统协议,它允许网络中的计算机共享资源,特别是文件系统。通过NFS,用户...

    nfs安装教程及离包安装包(磁盘共享)

    NFS(Network File System)是UNIX和Linux系统中广泛使用的一种网络文件系统,它允许一个系统(服务器)通过网络向其他系统(客户端)共享其文件系统。本教程将详细介绍NFS服务端和客户端的安装过程,包括在线安装与...

    nfs-utils.tar.gz

    【nfs-utils.tar.gz】是一个包含NFS(Network File System)工具的离线安装包,主要服务于Linux系统,用于实现不同计算机之间的文件共享。NFS是一种标准的协议,允许一台计算机(客户端)透明地访问另一台计算机...

Global site tag (gtag.js) - Google Analytics