Linux服务器间共享文件的方式有很多种(ftp、smba、nfs)这里给介绍以下,Linux下nfs文件共享方式和实现的方法。


1、首先要开启portmap和nfs服务。

service portmap start 
service nfs start




2、查看服务是否开启。

netstat -ntpl


3、修改 /etc/exports

vi /etc/exports 
#/home/temp *(rw,sync,no_root_squash,all_squash) 
/home/temp *(ro,sync,no_root_squash,all_squash) (/home/temp 表示要被共享的目录)
/mnt/inst *(ro,sync) (* 表示任意地址)

例如:/home/XKP/SharedFolder3 192.168.1.0/255.255.255.0(rw,sync,all_squash) 



下面是一些NFS共享的常用参数:


rw: 可读写的权限;

 ro: 只读的权限;

 no_root_squash: 登入到NFS主机的用户如果是ROOT用户,他就拥有ROOT的权限

root_squash: 在登入 NFS 主机使用目录的使用者如果是 root 时,那么这个使用者的权限 将被压缩成为匿名使用者,通常他的 UID 与 GID 都会变成 nobody 那个身份;

all_squash: 不管登陆NFS主机的用户是什么都会被重新设定为nobody。

anonuid: 将登入NFS主机的用户都设定成指定的user id,此ID必须存在于/etc/passwd中。 

anongid: 同 anonuid ,但是变成 group ID 就是了! 

sync: 资料同步写入存储器中。 

async: 资料会先暂时存放在内存中,不会直接写入硬盘。 insecure 允许从这台机器过来的非授权访问。


4、exportfs -a (到处所以共享的目录)
   exportfs -rv (相当于重启NFS)
5、showmount -e 127.0.0.1 (查被共享的目录)
Export list for 127.0.0.1:
/mnt/inst *
/home/temp *

6、服务端需要关闭防火墙或者开放nfs的端口,以便客户端能够远程共享

Turn off firewall for now)

Turn off firewall on boot)

7、在客户端输入所需要的共享文件。
mount -t nfs 192.168.111.1:/mnt/inst /mnt (mount服务器上的共享目录)

如果客户端在启动时便共享文件,则编辑/etc/rc.local增加下面一行

mount -t nfs 192.168.111.1:/mnt/inst /mnt



8、在客户端使用mount命令,就可以看到刚才被mount的文件了。


这样简单的就是实现了文件共享。