Mount实现Linux之间数据互相共享
我们的目的通过Mount挂载共享目录,然后通过软连接的方式进行共用数据。具体环境见下:
IP:192.168.5.20
Role:nfs server
IP:192.168.5.21
Role:nfs client
IP:192.168.5.22
Role:nfs client
我们首先在192.168.5.20 --nfs server 上/DATA/目录下创建一个目录sharedir
mkdir sharedir
最终的目录
1
|
/DATA/sharedir
|
1
2
|
chmod
755
默认是755
|
1
2
|
安装nfs server
yum
install
-y nfs-utils
|
1
|
yum
install
rpcbind (系统默认已经有了,可查看下)
|
1
|
vim
/etc/exports
|
添加以下内容:
1
|
/DATA/sharedir
*(rw,
sync
,no_root_squash)
|
下面是一些NFS共享的常用参数:
ro 只读访问
rw 读写访问
sync 所有数据在请求时写入共享
async NFS在写入数据前可以相应请求
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
生效 exportfs -r
exportfs -r
保存退出后
1
2
3
4
|
systemctl start rpcbind
systemctl
enable
rpcbind
systemctl start nfs
systemctl
enable
nfs
|
然后我们查看端口监听状态
1
|
netstat
-lt
|
然后在需要nfs客户端的服务器上执行以下命令:
192.168.5.21
192.168.5.22
我们需要首先要创建一个挂载目录
然后安装nfs-utils
yum install -y nfs-utils
注意:客户端不需要启动nfs服务
然后启动rpcbind服务
1
|
systemctl
enable
rpcbind
|
查看测试共享目录:
查看已共享的目录,命令:
1
2
3
4
|
本机:showmount -e
其他:showmount -e IP
showmount -e nfsserver
showmount -e 192.168.5.20
|
1
|
mount
-t nfs 192.168.5.20:
/DATA/sharedir
/DATA/sharedir
|
然后我们通过df -h进行查看
最后我们为了保证能够启动启动挂载
1
2
|
vim
/etc/fstab
192.168.5.20:
/DATA/sharedir
/DATA/sharedir
nfs defaults 0 0
|
最后我们做一下测试,我们创建测试文件
我们在nfs客户端上从创建文件
接着我们在nfs服务器上进行查看
最后做一下软连接
我们同样在/DATA目录下创建一个目录,然后命名为fileslink
我们需要将该文件夹连接到sharedir目录下
我们同样也需要在共享目录中创建一个同名的文件夹
最后我们做一下软连接
ln -s 源文件 目标文件,在目标文件下建立虚拟链接(快捷键)
/OAFS/mount/3 是真实存在的数据----共享磁盘数据
/OAFS/software/1/2/ 下没有数据3,我们通过软链接,将共享磁盘中的3,连接到2目录下
1
|
ln
-s
/OAFS/mount/3
/OAFS/software/1/2/3
|
进入2后,看见的3目录是从共享磁盘的数据
本文转自 高文龙 51CTO博客,原文链接:http://blog.51cto.com/gaowenlong/1899284,如需转载请自行联系原作者