Linux使用入门教程之NFS、Samba、ACL权限、SELinux和RPM包管理

一、NFS网络文件共享服务

1、简单介绍

NFS包含3个版本:NFSv2、NFSv3、NFSv4

RHEL6是以NFSv4作为默认版本,NFSv4使用TCP协议,默认NFS占用5个端口,1个NFS端口(2049),四个动态端口,而老版本的NFS可以在TCP协议或者是UDP协议上运行。

/etc/exports:NFS服务的主配置文件,该文件的最主要目的是发布共享目录并为共享目录限制权限。

/var/lib/nfs/xtab:这个文件主要用来记录客户端与NFS服务器的连接记录。

格式:共享目录 客户端 参数

客户端

示例

使用IP地址指定单一主机

10.20.30.40

使用IP地址指定范围主机

172.16.0.0/16

使用IP地址指定范围主机

192.168.1.*

使用域名指定单一主机

Test.ice.apple

使用域名指定范围主机

*.ice.apple

使用通配符指定所有主机

*

参数

说明

ro

设置共享权限为只读

rw

设置共享权限为读写

root_squash

共享目录的使用者是root时,将被映射为匿名账号nobody

no_root_squash

当使用NFS服务器共享目录的使用者是root时,将不被映射为匿名账号

all_squash

将所有使用NFS服务器共享目录的使用者都映射为匿名账号

anonuid

设置匿名账号的UID

anongid

设置匿名账号的GID

sync

将数据同步写入内存和硬盘。这可能导致效率降低

async

先将数据保存在内存中,而不是直接保存在硬盘

2、安装nfs
yum install -y nfs-utils
service rpcbind start
service nfs start
chkconfig rpcbind on
chkconfig nfs on
一定要先启动rpcbind,默认端口111,然后再启动nfs,不然NFS quotas和NFS daemon都将启动失败.

3、共享目录设置

vi /etc/exports
/media 192.168.0.10(rw,no_root_squash)
/test 192.168.0.0/24(ro)

4、exportfs命令

exportfs -r #刷新共享配置
exportfs -v  #查看当前共享配置
exportfs -auv  #用于停止当前主机中NFS服务器的所有目录输出
exportfs -av  #用于输出NFS服务器的所有共享目录
showmount -e  #在NFS Server上执行此命令显示NFS Server上所有的共享卷

5、客户端使用

showmount -e #查看NFS服务器发布的共享目录
mount -t nfs IP:/media 本地挂载点
开机自动挂载设置:
vi /etc/fstab
NFS服务器的IP:共享目录 挂载点 nfs defaults 0 0

6、设置nfs固定端口
默认情况下安装完,nfs使用的都是动态端口,开启防火墙就麻烦了,nfs启动时,会读取/etc/sysconfig/nfs文件,所以我们要修改它,来强制使用固定端口。

vi /etc/sysconfig/nfs
mount-port="4001"
statd-port="4002"
lockd-tcpport="4003"
lockd-udpport="4004"

7、设置防火墙

iptables -P INPUT DROP
iptables -A INPUT -p tcp -m multiport --dport 2049,4001,4002,4003,4004 -j ACCEPT

相关阅读:

相关推荐