Ubuntu 12.04中NFS文件共享安装与配置步骤

下面又是因为备份这个问题我们找到了这篇关于Ubuntu 12.04中NFS文件共享安装与配置步骤,下面与大家分享一下,希望能给各位带来帮助.

又是碰到的问题,继续做记录备份,涉及到服务器之间文件共享,需用到NFS共享设置,服务器为Ubuntu 12.04 64位.

准备环境,服务器两台,服务端:192.168.1.1,客户端:192.168.1.2.

服务端操作

1,首先安装nfs服务(以下操作自行切换root用户)

apt-get install nfs-kernel-server

2,安装完成后,编辑设置文件:vi /etc/exports

新安装的是一个空文件,只有部分注释,在下方加入:

/mydata 192.168.1.2(rw,sync,no_root_squash,no_subtree_check)

释义:

/mydata:本地要共享的文件夹名称;

192.168.1.2:欲让访问的服务器地址,也可以写* ,或192.178.1.* 这样的通配符;

rw:读写权限.

sync:同步写入内存和硬盘.

no_root_squash:root用户拥有所有权限.

no_subtree_check:不对共享文件夹内的上级目录权限做检查.

如若共享多个目录,添加多行即可.

3,重启NFS相关服务

  1. /etc/init.d/portmap restart
  2. /etc/init.d/nfs-kernel-server restart

4,查看共享目录:showmount -e

服务器端的安装已经完成,接下来操作访问的服务器端.

客户端(访问的服务器)

1,同样安装nfs服务

apt-get install nfs-kernel-server

2,在本地挂载共享的文件夹,先在本地服务器创建一个文件夹,用来挂载共享的文件夹。

mkdir nfsdisk

接下来挂载:

mount -t nfs 192.168.1.1:/mydata /nfsdisk

注:以上操作需root权限,上面命令中的地址是主服务器的地址后面跟冒号和主服务器共享文件夹地址,接着空格,跟上本地要挂载的文件夹.

可以尝试创建个文件或文件夹,再返回主服务器看下该目录下是否出现.

附加操作

1,取消挂载

sudo umount /netdisk

如若提示 "device is busy",标示该目录正在被使用,使用以下命令:

fuser -km /netdisk

df -lh

然后再执行umount操作

2,添加开机自动挂载

vi /etc/rc.local

在exit()之前,添加上面的挂载命令:

mount -t nfs 192.168.1.1:/mydata /nfsdisk

3,常用参数

ro  只读访问

rw  读写访问

sync  同步写入资料到内存与硬盘中

async  资料会先暂存于内存中,而非直接写入硬盘

secure  NFS通过1024以下的安全TCP/IP端口发送

insecure  NFS通过1024以上的端口发送

wdelay  如果多个用户要写入NFS目录,则归组写入(默认)

no_wdelay  如果多个用户要写入NFS目录,则立即写入,当使用async时,无需此设置。

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

no_hide  共享NFS目录的子目录

subtree_check  如果共享/usr/bin之类的子目录时,强制NFS检查父目录的权限(默认)

no_subtree_check  和上面相对,不检查父目录权限

all_squash  共享文件的UID和GID映射匿名用户anonymous,适合公用目录.

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

root_squash  root用户的所有请求映射成如anonymous用户一样的权限(默认)

no_root_squash  root用户具有根目录的完全管理访问权限

anonuid=xxx  指定NFS服务器/etc/passwd文件中匿名用户的UID

anongid=xxx  指定NFS服务器/etc/passwd文件中匿名用户的GID