zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Linux NFS | Export解析

2023-02-18 16:38:32 时间

文章目录

NFS (网络文件系统)

NFS -------Network File System 网络文件系统

功能

unix/linux和linux之间文件共享

优缺点:

优点:是局域网共享中速度最快的

缺点:不支持跨平台

什么是网络文件系统?

网络文件系统是一种将远程主机上的目录经过网络挂载到客户端本地系统的一种机制。

Linux 安装 NFS

yum install nfs-utils rpcbind -y
服务端
服务端配置要共享的资源
例:服务器共享/test目录,将/dev/sdb1分区挂载在此目录 
[root@nfs-server ~]# parted /dev/sdb mklabel gpt
[root@nfs-server ~]# parted /dev/sdb mkpart primary 1 3G 
[root@nfs-server ~]# ll /dev/sd
sda sda1 sda2 sdb sdb1
[root@nfs-server ~]# mkfs.xfs /dev/sdb1
[root@nfs-server ~]# mkdir /test
[root@nfs-server ~]# vim /etc/fstab 
/dev/sdb1 /test xfs defaults 0 0
[root@nfs-server ~]# mount -a
[root@nfs-server ~]# cd /test
[root@nfs-server test]# echo "nfs test" > test.txt
配置共享/test目录
[root@nfs-server ~]# vim /etc/exports
# man 5 exports
共享资源 共享给谁(共享的属性)
/test 192.168.1.251(rw)

chmod o+w /test     给共享资源/test设置读写权限
重启服务
[root@nfs-server ~]# systemctl restart nfs-server
[root@nfs-server ~]# systemctl reload nfs-server //修改配置文件重新读取 当nfs服务已经启动,可能客户端正在使用,不适合用restart
[root@nfs-server ~]# systemctl start rpcbind
查看共享资源
[root@nfs-server ~]# showmount -e 192.168.1.252
Export list for 192.168.1.252:
/test 192.168.1.251
客户端
查看共享资源
[root@client ~]# showmount -e 192.168.1.252
Export list for 192.168.1.252:
/test 192.168.1.251
挂载

语法:mount.nfs 服务器地址:服务器共享的目录 本地的挂载点

[root@client ~]# mount.nfs 192.168.1.252:/test /opt
[root@client ~]# vim /etc/fstab
192.168.1.252:/test /opt nfs defaults 0 0
查看是否挂载
[root@client ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/cl-root 17G 3.5G 14G 21% /
devtmpfs 473M 0 473M 0% /dev
tmpfs 489M 144K 489M 1% /dev/shm
tmpfs 489M 7.0M 482M 2% /run
tmpfs 489M 0 489M 0% /sys/fs/cgroup
/dev/sda1 1014M 155M 860M 16% /boot
tmpfs 98M 16K 98M 1% /run/user/0
/dev/sr0 4.1G 4.1G 0 100% /run/media/root/CentOS 7 x86_64
192.168.1.252:/test 2.8G 33M 2.8G 2% /opt
测试
[root@client ~]# cd /opt
[root@client opt]# ls
[root@client opt]# mkdir a
mkdir: 无法创建目录"a": 只读文件系统
[root@client opt]# cat test.txt 
nfs test

vim /etc/exports

共享资源 共享给谁(共享的属性)

man 5 exports

共享资源:服务器的目录 共享给谁:多个主机 之间有空格隔开 192.168.1.251 某台主机 192.168.1.0/24 192.168.1.0/255.255.255.0 today.yuming.com 主机名 *.yuming.com 匹配yuming.com的所有主机

  • 表示任意

共享的属性:文件系统的属性 ro 只读 rw 可读写 async 异步 sync 同步 secure 小于1024端口连接 insecure 大于1024端口连接 root_squash 把客户端使用root操作的文件的uid和gid映射为匿名用户(nfsnobody) no_root_squash 不映射,以管理员root身份操作 all_squash 把所有用户创建文件的uid和gid都映射为匿名用户 (nfsnobody) anonuid=uid 设置匿名用户的UID anongid=gid 设置匿名用户的GID 例如: /pub *(ro,insecure,all_squash) /home/joe pc001(rw,all_squash,anonuid=150,anongid=100) 将所有用户映射为匿名用户,设置匿名用户的UID=150,GID=100