NFS服务器搭建精华篇

Linux NFS服务器 (文件共享)

NFS主要应用场景是在生产的环境中,上百台服务器为了实现数据同步或者文件共享,会利用到NFS,局域网的一种共享

1.1. 概述

RPC主程序:rpcbind    rpcbind.i686      port:111

NFS主程序:nfs-utils   nfs-utils.i686     port:2049

文件共享  rpc.nfsd

权限设置  rpc.mountd

文件锁定  rpc.lockd

文件一致性rpc.statd

默认端口 111  2049

rpc  远程过程调用

1.2. 安装软件:

 

yum install rpcbind -y

Yum install nfs-utils -y

1.3. 服务与端口

 

Service autofs restart

Service nfs restart

Service rpcbind restart

centos5.x的服务

/etc/init.d/portmap restart;

/etc/init.d/nfs restart;

centos6.x的服务

/etc/init.d/rpcbind restart\

/etc/init.d/nfs restart

1.4. 配置文件

vi /etc/sysconfig/nfs

# 主要针对三个程序设置端口  rpc.mountd  rpc.lockd  rpc.statd

#LOCKDARG=

# TCP port rpc.lockd should listen on.

LOCKD_TCPPORT=4000

# UDP port rpc.lockd should listen on.

LOCKD_UDPPORT=4000

# Optional arguments passed to rpc.mountd.See rpc.mountd(8)

#RPCMOUNTDOPTS=""

# Port rpc.mountd should listen on.

MOUNTD_PORT=4001

#

# Optional arguments passed to rpc.statd.See rpc.statd(8)

#STATDARG=""

# Port rpc.statd should listen on.

STATD_PORT=4002

# Outgoing port statd should used. Thedefault is port

# is random

#STATD_OUTGOING_PORT=2020

rpcinfo -plocalhost    # 查询rpc已分配的端口

1.5. 防火墙的配置:

iptables -I INPUT 1 -P tcp --dport 111 -jACCEPT

iptables -I INPUT 1 -P udp --dport 111 -jACCEPT

iptables -I INPUT 1 -P tcp --dport 2049 -jACCEPT

iptables -I INPUT 1 -P udp --dport 2049 -jACCEPT

iptables -I INPUT 1 -P tcp --dport4000:4002 -j ACCEPT

iptables -I INPUT 1 -P udp --dport4000:4002 -j ACCEPT

service iptables save

1.6. NFS 配置

配置步骤:

1. 设置/etc/exports的共享目录  /xx     192.168.1.0/24(rw,sync)

2. 重启服务  service rpcbind restart  service nfs restart

3. 客户端访问  showmount -e192.168.1.100  查询共享是否成功

4. Mount挂载

vi /etc/exports

………………………………………………………………….

共享目录   范围(属性1,属性2,属性3)

/xx    192.168.1.0/24(rw,sync,"root_squash")

…………………………………………………………………

属性列表:

# ro 只读访问

# rw 读写访问

# sync  所有数据在请求时写入共享

# hide      在NFS共享目录中不共享其子目录

# no_hide   共享NFS目录的子目录

# root_squash是对客户端用root访问共享文件夹来转换root权限,

# no root_squash是取消转换权限

# all_squash 对所有用户权限转换成nfsnobody

# no_all_squash   保留共享文件的UID和GID(默认)

# anonuid=1000,anongid=1000  指定转换为UID 1000的用户

# vi /var/lib/nfs/etab  查询默认的一些选项

# exportfs -arv 所有共享重新挂载

# exportfs -au  取消所有共享

# 24代表全网段,如果要代表某台主机,要算子掩数32

1.7. 客户端访问

客户端要安装nfs-utils

showmount -e 192.168.1.250

# 查询1.250服务器共享了哪些共享

mount –t nfs 192.168.1.250:/xx  /bb

# 将服务器上共享文件夹挂载到本机根目录的bb文件夹

1.8. 自动挂载 使用挂载点时自动挂载

当使用外置设备,如光驱挂载点时,才自动挂载,闲置时不挂载

1.首先写改挂载目录文件,

vi /etc/auto.master

# 此文件内容主要是修改需要挂载的外置设备的文件

#

/misc  /etc/auto.misc

/mnt /etc/auto.misc         # /mnt  代表mnt目录下所有子文件夹

/-   /etc/auto.misc         # /- 代表根目录下所有子文件夹

#

Vi /etc/auto.misc

# 此目录修改外置外载点

#

# This is an automounter map and it has thefollowing format

# key [ -mount-options-separated-by-comma ]location

# Details may be found in the autofs(5)manpage

cd              -fstype=iso9660,ro,nosuid,nodev:/dev/cdrom

cdrom           -fstype=iso9660                 :/dev/cdrom

nfs             -fstype=nfs,rw            192.168.30.250:/xx

# cd cdrom nfs代表是子目录,本身不存在的目录

# -fstype=设备类型

# 后面是挂载设备可以是设备也可以是共享文件夹

# the following entries are samples topique your imagination

#linux          -ro,soft,intr           ftp.example.org:/pub/linux

#boot           -fstype=ext2            :/dev/hda1

service autofs stop

service autofs start

# 不能使用rstart

1.9. windwos挂载linux主机NFS

启动windosNFS客户端服务:

1. 打开控制面板->程序->打开或关闭windows功能->NFS客户端

勾选NFS客户端,即开启windows NFS客户端服务.

2.win+R->cmd

mount 192.168.1.10:/home/用户/share X:

成功挂载,打开我的点脑,你即可在你网络位置看到X:盘了

解释:

mount,是指令

192.168.1.10你的linux主机IP

/home/share你的共享目录

X:你挂载的网络文件盘--注意,可能会与你的其他盘冲突,你可以随意更改

3.取消挂载:

直接在 我的电脑 里面鼠标点击取消映射网络驱动器 X:

或者:win+R->cmd

输入: umountX:

(umount-a 取消所有网络驱动器)

好了,尽情享用吧,祝你成功!

1.10. 共享目录权限实例1

5个账号同时共享一个目录/home/usergroup这个目录,这个目能只能让这5个用户使用,对此目录有所有权限,其它人无权限,

需要有SGID权限,否则5个账号间会出现彼此无法修改对方的数据,

mkdir /home/usergroup

chgrp usergroup /home/usergroup

chomd 2770 /home/usergroup

ll -d /home/usergroup

对共享目录做磁盘配额限制

每个用户的配额为2GB(hard)以及1.8GB(soft),

1.vim /etc/fstab   # 建立开机挂载

2.在rw后面加上userquota,grpquota   也可以mount -o usrquto,grpquota /dev/sda1 /mnt/disk

3.quotacheck -avug 制作数据文件

4.group quotas turned on

5.user quotas turned on

6.edquota -u user1  # 给用户配置配额

7.edquota -p user1 user2  # 复制配置给其它用户

8.repquota -au   #查询所有用户配额配

1.11. 步骤精华  ★★★

  1. 安装软件 yum install rpcbind nfs* -y
  2. 配置共享 vi /etc/export  写入共享目录 格式: /mnt  192.168.1.100(rw)
  3. 重启服务  service rpcbind restart  service nfs restart
  4. 关闭防火墙或selinux       检查分配端口 rpcinfo -p localhost
  5. 客户端安装 yum install nfs-utils –y
  6. Showmount –e 192.18.1.100 测试结果
  7. 在mount挂载  mount 192.168.1.100:/mnt  /xx

1.12. 故障排除

往共享目录写文件

[[email protected] ~]#touch aa

touch: 无法创建"aa":权限不够

检查共享目录本身是否对other有写权限

注:默认情况共享文件夹客户端不允许root权限,即实使用root也会

被更改为nfsnobody

挂载意外中断,无法进行操作的案例:

错误提示:

[[email protected]~]# mount 192.168.182.128:/mnt /tmp/

mount.nfs:access denied by server while mounting 192.168.182.128:/mnt

解决方法:这是因为授权访问无权限  在exports中,要指定网段或IP有权限mount,也可以用*代表所有

/mnt  192.168.1.0/24(rw)    # 这个Ip段,或者用*代表所有/mnt *(rw)

1.12.1. 限制只有1.10主机能访问,其实不能访问

/XX 192.168.1.10/32(rw,sync)192.168.1.0/24(r0,sync)

# 如果不加192.168.1.0/24(r0,sync),代表其它电脑不能挂载

1.12.2. 后台挂载,网络断开自动挂载

mount -0 bg 192.168.1.250:xx /mnt

错误提示:

[[email protected] ~]# showmount -e192.168.242.128

clnt_create: RPC: Program not registered

# 软件未注册,因为服务没重启

[[email protected] ~]# showmount -e192.168.242.128

clnt_create: RPC: Port mapper failure -Unable to receive: errno 113 (No route to host)

# 端口连接失败,防火墙设置

[[email protected] etc]# showmount -e 192.168.16.170

clnt_create: RPC: Port mapper failure -Unable to receive: errno 111 (Connection refused)

时间: 2024-10-26 15:29:43

NFS服务器搭建精华篇的相关文章

Linux之我有你也有-共享平台NFS服务器搭建

Linux之我有你也有-共享平台NFS服务器搭建 最近因工作需要,所以要搭一个共享的服务器用于存储.实现你有我有大家有的共享的和谐局面.想到了NFS-Network File System.接下来我便说一说NFS以及有关它的搭建. 什么是NFS 搜索引擎哪家强,有事问度娘(好吧,我承认技术性问题我问的是谷歌,此处为了押韵,不用介怀),度娘是这么解释NFS的: NFS,是Network File System的简写,即网络文件系统.网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS

NFS服务器搭建之/etc/exports文件配置权限参数

在NFS服务器搭建过程中,当我们在修改配置文件的时候,其中很重要的一环就是权限参数. /etc/exprots中的权限参数主要有如下几个: ① rw : 该目录共享的权限是读写 ro : 该目录共享的权限是只读 但最终能不能读写还是与文件系统的权限和身份有关 ② sync : 数据会同步写入到内存和硬盘中 async : 数据会暂存于内存而不写入硬盘 ③ no_root_squash : 开放客户端使用root使用来操作文件系统,也就是说让root写入的文件仍然具有root权限 root_squ

学习手记-基于iTOP4412开发板NFS服务器搭建及测试

NFS特点: 1)基于UDP/IP 2)功能和网盘基本上差不多,但性能没那么强. NFS服务器搭建步骤: 在ubantu上安装nfs软件:nfs-kernel-server 配置文件 1)打开配置文件:/etc/exports 2)增加配置:/home/topeet/minLinux/ *(rw,sync,no_root_squash) 含义如下: /home/topeet/minLinux/:服务器上的共享目录 *:表示接受任何网段的访问 rw:可读可写 sync:同步 no_root_squ

centos6.5上NFS服务器搭建!!!

项目背景: 搭建NFS网络服务器!!! 试验环境: vmware workstation 11 centos6.5的系统下 NFS服务器:ip:192.168.0.36 iptables 关闭  setenforce 0 NFS客户端:ip:192.168.0.39 iptables 关闭  setenforce 0 SecureCRT (ssh远程连接软件) 实验过程: 一.软件安装 服务器端: [[email protected]_server02 ~]# yum install -y nf

Ubuntu环境下NFS服务器搭建

看到鸟哥私房菜对NFS的介绍,就想试试玩一下.看起来步骤也很简单. 1.背景名词. NFS(Network File System) 作用:让所有的Unix-like 机器通过网络共享彼此的文件 局限:文件权限问题.客户端和服务器端必须具备相同的账号才能够访问某些目录或文件. RPC(Remote Procedure Call) 作用:指定每个NFS功能所对应的port number,并且通知客户端,让客户端可以连接到正确的端口上去. 当服务器在启动NFS时会随机选取数个端口,并主动向RPC注册

Linux NFS服务器搭建

1.NFS:NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源.   在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样. 2.安装NFS服务器端:sudo apt-get install nfs-kernel-server: 3.配置/etc/exports:sudo vim /etc/exports :   Ubuntu NFS允许挂

NFS服务器搭建

[[email protected] ~]# yum install -y nfs-utils rpcbind    #安装NFS服务器 [[email protected] ~]# rpm -qa nfs-utils rpcbind             #检查安装情况 rpcbind-0.2.0-13.el6_9.1.x86_64 nfs-utils-1.2.3-75.el6.x86_6 [[email protected] ~]# setenforce 0                

简述NFS服务器搭建

简单罗列基础命令,只分享我的想法! NFS网络文件系统,和FTP文件传输协议不一样,NFS主要依靠rpcbind进程,通过rpcbind把命令传递到NFS服务器(这一点就与FTP不一样,FTP的client是发送对具体资源的请求,而NFS是要把某个函数的调用作为请求发送到服务器端,你可以挂载共享目录.vim共享文件等,就好像你在NFS服务器实机操作一样),再由NFS服务器的nfsd进程向NFS服务器的kernel发起系统调用,在把调用之后的结果通过rpcbind发到client. client和

centos6.6 NFS服务器搭建

环境: nfs服务器IP:10.0.0.8 nfs客户端IP: ################# NFS服务器端 ################## 1.打印系统版本: hostname nfsserver cat /etc/redhat-release uname -r uname -m 2.检查并安装NFS服务: rpm -qa nfs-utils portmap rpcbind yum grouplist yum install nfs-utils rpcbind -y rpm -qa