【Linux常用服务器配置——NFS服务】
目录1.NFS网络文件系统2.NFS服务安装1.NFS网络文件系统NFS,Network File System,网络文件系统。它最大的功能就是可以透过网络,让不同的机器、不同的操作系统、可以彼此分享个别的档案。1)NFS服务器端安装步骤01服务器端安装服务02服务器端配置端口03服务器端NFS权限设置04服务器端防火墙设置05服务器端启动服务06NFS客户端的挂载注意安装服务之前,需要先查询PR
目录
1.NFS网络文件系统
NFS,Network File System,网络文件系统。它最大的功能就是可以透过网络,让不同的机器、不同的操作系统、可以彼此分享个别的档案。
1)NFS服务器端安装步骤
01服务器端安装服务
02服务器端配置端口
03服务器端NFS权限设置
04服务器端防火墙设置
05服务器端启动服务
06NFS客户端的挂载
注意
安装服务之前,需要先查询PRC服务(rpc是先决条件)
安装服务一般需要具有超级用户权限,所以需先切换用户,避免安装出错。
2)查询是否安装服务
# rpm –qa|grep rpcbind
3)服务器端端口配置
# vi /etc/sysconfig/nfs
4)服务器端启动服务
# systemctl start nfs.service
5)卸载NFS共享目录
# umount /mnt/nfs
# ls /mnt/nfs
2.NFS服务安装
1).服务器端安装服务 可以发现,系统默认安装了RPC并且启动了服务。
[root@master ~]# rpm -qa|grep rpcbind
rpcbind-0.2.0-44.el7.x86_64
[root@master ~]# systemctl status rpcbind.service
● rpcbind.service - RPC bind service
Loaded: loaded (/usr/lib/systemd/system/rpcbind.service; enabled; vendor preset: enabled)
Active: active (running) since 四 2019-03-14 04:19:48 CST; 3 days ago
Process: 698 ExecStart=/sbin/rpcbind -w $RPCBIND_ARGS (code=exited, status=0/SUCCESS)
Main PID: 708 (rpcbind)
Tasks: 1
CGroup: /system.slice/rpcbind.service
└─708 /sbin/rpcbind -w
3月 14 04:19:39 localhost.localdomain systemd[1]: Starting RPC bind service...
3月 14 04:19:48 localhost.localdomain systemd[1]: Started RPC bind service.
2).服务器端配置端口
[root@master ~]# vi /etc/sysconfig/nfs
在文件的最后添加以下内容:
# 追加端口配置
MOUNTD_PORT=4001
STATD_PORT=4002
LOCKD_TCPPORT=4003
LOCKD_UDPPORT=4003
RQUOTAD_PORT=4004
NFS除了主程序端口2049和rpcbind的端口111是固定以外,还会使用一些随机端口,以上配置将定义这些端口,以便配置防火墙。
3).服务器端NFS权限设置
NFS权限,对于普通用户: (1)当设置all_squash时:访客时一律被映射为匿名用户(nfsnobody); (2)当设置no_all_squash时:访客被映射为服务器上相同uid的用户,因此在客户端应建立与服务端uid一致的用户,否则也映射为nfsnobody。root除外,因为root_suqash为默认选项,除非指定了no_root_squash。 对于root用户: (1)当设置root_squash时:访客以root用户访问NFS服务端时,被映射为nfsnobody用户; (2)当设置no_root_squash时:访客以root用户访问NFS服务端时,被映射为root用户。以其他用户访问时同样映射为对应uid的用户,因为no_all_squash是默认选项。
以nfsnobody创建共享目录,允许所有客户端写入。
[root@master ~]# mkdir /var/nfs
[root@master ~]# echo 'Hello,world!'>/var/nfs/text.txt
[root@master ~]# chown -R nfsnobody:nfsnobody /var/nfs
[root@master ~]# vi /etc/exports
添加如下内容:
/var/nfs *(rw,sync)
重载exports配置:
[root@master ~]# exportfs -r
查看共享参数:
[root@master ~]# exportfs –v /var/nfs
<world>(rw,sync,wdelay,hide,no_subtree_check,sec=sys,root_squash,no_all_squash)
注:exportfs参数说明: -a 全部挂载或卸载 /etc/exports中的内容 -r 重新读取/etc/exports 中的信息 ,并同步更新/etc/exports、/var/lib/nfs/xtab -u 卸载单一目录(和-a一起使用为卸载所有/etc/exports文件中的目录) -v 输出详细的共享参数
4).服务器端防火墙设置
注意,对于CentOS 7.5以上的版本,其默认安装的防火墙是firewall,不是iptables。 运行以下命令可以设置端口:
[root@master ~]# firewall-cmd --permanent --add-port=111/tcp
success
[root@master ~]# firewall-cmd --permanent --add-port=111/udp
success
[root@master ~]# firewall-cmd --permanent --add-port=2049/tcp
success
[root@master ~]# firewall-cmd --permanent --add-port=2049/udp
success
[root@master ~]# firewall-cmd --permanent --add-port=4001-4004/tcp
success
[root@master ~]# firewall-cmd --permanent --add-port=4001-4004/udp
success
5).服务器端启动服务
运行以下命令:
[root@master ~]# systemctl start nfs.service
[root@master ~]# systemctl enable nfs.service
Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service.
[root@master ~]# systemctl status nfs.service
● nfs-server.service - NFS server and services
Loaded: loaded (/usr/lib/systemd/system/nfs-server.service; enabled; vendor preset: disabled)
Drop-In: /run/systemd/generator/nfs-server.service.d
└─order-with-mounts.conf
Active: active (exited) since 日 2019-03-17 22:39:51 CST; 2min 10s ago
Main PID: 83600 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/nfs-server.service
6).客户端挂载
首先执行如下命令切换用户:
$ su - root
将服务器端NFS共享目录挂载到本地的“/mnt/nfs”目录中:
[root@slave ~]# mkdir /mnt/nfs
[root@slave ~]# mount -t nfs master:/var/nfs /mnt/nfs
[root@slave ~]# ls -l /mnt/nfs
text.txt
要卸载NFS共享目录,则执行如下命令:
[root@slave ~]# umount /mnt/nfs
[root@slave ~]# ls /mnt/nfs
更多推荐
所有评论(0)