NFS(Network File System 网络文件系统)

NFS(Network File System 网络文件系统)

Linux与Linux之间的文件共享、提供远端读存文件的服务

最主要的功能就是让网络上的UNIX可以共享目录及档案、可以将远程所共享出来的文件系统挂载到本地端。

特点:分布式存储、集中管理

NFS简介:

NFS是系统间进行文件共享的一种网络协议、在NFS的应用结构中有服务器和客户机两种角色、NFS客户端通过挂载的方式访问NFS服务器中的共享目录、在同一台主机中即可以是NFS服务器亦可以作为NFS客户机、建立在RPC协议上的服务。RHEL默认已安装此服务。

NFS搭建:(服务端172.16.30.2 客户端172.16.30.3)

​ netstat -tulnp | grep nfs/111(此命令用来查看某个服务是否开启)

​ nfs服务对应的端口号是111

​ rpm -q rpcbind

​ systemctl status rpcbind 查看状态

添加防火墙(firewall-cmd --get-service)

​ firewall-cmd --add-rich-rule ‘rule family=ipv4 source address=172.16.30.0/24 service name=nfs accept’ --permanent

​ firewall-cmd --add-rich-rule ‘rule family=ipv4 source address=172.16.30.0/24 service name*=rpc-bind* accept’ --permanent

​ firewall-cmd --reload

编辑NFS主配置文件(etc/exports)

/common 172.16.30.0/24(rw,sync)

重启服务:systemctl restart nfs

客户端验证:(-t 表示类型)

mount -t nfs 172.16.30.2:/common /mnt

目前客户端无权限创建文件,只有服务端有权限,可以在服务端将共享目录的权限变成o+w

chmod o+w /common

但是在客户端创建的目录或文件,显示的权限为:nfsnobody

  • ```
    [root@c mnt]# ll
    total 0
    -rw-r–r--. 1 root root 0 Dec 17 21:54 121
    drwxr-xr-x. 2 nfsnobody nfsnobody 6 Dec 17 21:56 123
    -rw-r–r--. 1 nfsnobody nfsnobody 0 Dec 17 21:55 test
    方法1:在服务端
    [root@b common]# chown -R root.root test
    [root@b common]# ll
    total 0
    -rw-r–r--. 1 root root 0 Dec 17 21:54 121
    drwxr-xr-x. 2 nfsnobody nfsnobody 6 Dec 17 21:56 123
    -rw-r–r--. 1 root root 0 Dec 17 21:55 test
    方法2:进到/var/lib/nfs编辑 etab 这里面记录挂载信息
    [root@b nfs]# vim /var/lib/nfs/etab找到root_squash字段后复制
    [root@b nfs]# exportfs -v
    /common 172.16.30.0/24(sync,wdelay,hide,no_subtree_check,sec=sys,rw,secure,root_squash,no_all_squash)
    [root@b nfs]# vim /etc/exports
    /common 172.16.30.0/24(rw,sync,no_root_squash)
    :wq
    [root@b nfs]# systemctl restart nfs
    客户端验证:
    [root@c mnt]# mkdir test1
    [root@c mnt]# ll
    total 0
    -rw-r–r--. 1 root root 0 Dec 17 21:54 121
    drwxr-xr-x. 2 nfsnobody nfsnobody 6 Dec 17 21:56 123
    -rw-r–r--. 1 root root 0 Dec 17 21:55 test
    drwxr-xr-x. 2 root root 6 Dec 17 22:14 test1
    延申:
    [root@c mnt]# showmount -e 172.16.30.2
    Export list for 172.16.30.2:
    /common 172.16.30.0/24
    showmount -e 这条命令可以查看任何一台提供共享的客户机开启的共享
    [root@b nfs]# exportfs -v
    /common 172.16.30.0/24(sync,wdelay,hide,no_subtree_check,sec=sys,rw,secure,no_root_squash,no_all_squash)
    exportfs -v 查看共享的目录以及功能
    
    

注:这里的root_squash相当于将root抹除了,所以要在服务端主配置文件中叫上no_root_squash

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值