NFS搭建
2015-09-22 23:12
246 查看
NFS(network file system),即网络文件系统;它用于在网络上共享存储。这次试验准备两台虚拟机,一个作为服务端,一个为客户端。服务端共享一个目录,然后客户端挂载这个目录就可以实现共享存储了。1、服务端配置NFS 首先需要安装两个包nfs-utils和rpcbind(用于服务端和客户端之间的通信,CentOS6版本以前都是安装portmap包,实际上是同一个东西)
[root@tpp ~]# yum install -y nfs-utils rpcbind
编辑配置文件
[root@tpp ~]# vim /etc/exports //写入以下内容
/home 192.168.0.0/24(rw,sync,all_squash,anonuid=501,anongid=501)
注:假设要共享的目录为/home,信任的主机为192.168.0.0/24这个网段,权限为读/写,同步模式,限定所有使用者,并且限定的uid和gid都为501,前提是本机的/etc/passwd中存在这个uid和gid。
启动NFS服务:
[root@tpp ~]# /etc/init.d/rpcbind start 先启动
[root@tpp ~]# /etc/init.d/nfs start
注:后期要是修改了/etc/exports这个配置文件,可以使用exportfs命令挂载不需要重启NFS服务。 # exportfs -arv
客户端挂载NFS
客户端也要安装nfs-utils和rpcbind两个包
[root@tpp ~]# yum install -y nfs-utils rpcbind
在挂载之前,我们先查看共享了哪些目录
[root@tpp ~]# showmount -e 192.168.137.22 //此为服务端IP
Export list for 192.168.137.22:
/home 192.168.0.0/24
注:要关闭服务端的防火墙,要不然客户端查看不到该共享,会报如下的错:
clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to host
然后挂载NFS
[root@tpp ~]# mount -t nfs 192.168.137.33:/home/ /mnt/
[root@tpp ~]# df -h
使用命令df -h 我们可以看到增加了一个/mnt分区,它就是NFS共享的目录了
命令 exportfs
当改变/etc/exports配置文件后,使用exportfs命令挂载不需要重启NFS服务,如:
# vim /etc/exports //增加一行:
# /tmp/ 192.168.0.0/24(rw,sync,no_root_squash)
然后在服务端执行如下命令:
# exports -arv
exporting 192.168.0.0/24/tmp
exporting 192.168.0.0/24/home
-a:全部挂载或者卸载 -r:重新挂载
-u:卸载某一个目录 -v:显示共享的目录
mount命令,他要用-t nfs来指定挂载的类型为nfs,还常用-o nolock选项,即不加锁,例如在客户端执行如下命令:
# mkdir /test
# mount -t nfs -o nolock 192.168.137.33:/tmp/ /test/
我们还可以把要挂载的NFS目录写到客户端的/etc/fstab,挂载时只需执行mount -a即可,如:
[root@tpp opt]# vim /etc/fstab //添加下面一行
192.168.0.109:/tmp/ /test nfs nolock 0 0
因为刚我们挂载了NFS,所以先卸载
[root@tpp opt]# cd
[root@tpp ~]# umount /test
然后重新挂载,只要执行如下命令即可
[root@tpp ~]# mount -a
这样操作后,以后开机都会自动挂载NFS。
后记
若想把新建的文件都设置为root用户。
我们在服务端配置/etc/exports文件如下:
[root@tpp ~]# vim /etc/exports
/home 192.168.137.22(rw,sync,no_root_squash)
[root@tpp ~]# exportfs -arv //重新加载NFS服务
exporting 192.168.137.22:/mnt
在客户端/opt目录下新建文件
[root@tpp opt]# touch 1.txt
[root@tpp opt]# touch 123
[root@tpp opt]# ls -l
总用量 0 -rw-r--r--. 1 root root 0 9月 13 02:05 123
-rw-r--r--. 1 root root 0 9月 13 02:05 1.txt
由上可知文件所属主和所属组都为root
[root@tpp ~]# yum install -y nfs-utils rpcbind
编辑配置文件
[root@tpp ~]# vim /etc/exports //写入以下内容
/home 192.168.0.0/24(rw,sync,all_squash,anonuid=501,anongid=501)
注:假设要共享的目录为/home,信任的主机为192.168.0.0/24这个网段,权限为读/写,同步模式,限定所有使用者,并且限定的uid和gid都为501,前提是本机的/etc/passwd中存在这个uid和gid。
启动NFS服务:
[root@tpp ~]# /etc/init.d/rpcbind start 先启动
[root@tpp ~]# /etc/init.d/nfs start
注:后期要是修改了/etc/exports这个配置文件,可以使用exportfs命令挂载不需要重启NFS服务。 # exportfs -arv
客户端挂载NFS
客户端也要安装nfs-utils和rpcbind两个包
[root@tpp ~]# yum install -y nfs-utils rpcbind
在挂载之前,我们先查看共享了哪些目录
[root@tpp ~]# showmount -e 192.168.137.22 //此为服务端IP
Export list for 192.168.137.22:
/home 192.168.0.0/24
注:要关闭服务端的防火墙,要不然客户端查看不到该共享,会报如下的错:
clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to host
然后挂载NFS
[root@tpp ~]# mount -t nfs 192.168.137.33:/home/ /mnt/
[root@tpp ~]# df -h
使用命令df -h 我们可以看到增加了一个/mnt分区,它就是NFS共享的目录了
命令 exportfs
当改变/etc/exports配置文件后,使用exportfs命令挂载不需要重启NFS服务,如:
# vim /etc/exports //增加一行:
# /tmp/ 192.168.0.0/24(rw,sync,no_root_squash)
然后在服务端执行如下命令:
# exports -arv
exporting 192.168.0.0/24/tmp
exporting 192.168.0.0/24/home
-a:全部挂载或者卸载 -r:重新挂载
-u:卸载某一个目录 -v:显示共享的目录
mount命令,他要用-t nfs来指定挂载的类型为nfs,还常用-o nolock选项,即不加锁,例如在客户端执行如下命令:
# mkdir /test
# mount -t nfs -o nolock 192.168.137.33:/tmp/ /test/
我们还可以把要挂载的NFS目录写到客户端的/etc/fstab,挂载时只需执行mount -a即可,如:
[root@tpp opt]# vim /etc/fstab //添加下面一行
192.168.0.109:/tmp/ /test nfs nolock 0 0
因为刚我们挂载了NFS,所以先卸载
[root@tpp opt]# cd
[root@tpp ~]# umount /test
然后重新挂载,只要执行如下命令即可
[root@tpp ~]# mount -a
这样操作后,以后开机都会自动挂载NFS。
后记
若想把新建的文件都设置为root用户。
我们在服务端配置/etc/exports文件如下:
[root@tpp ~]# vim /etc/exports
/home 192.168.137.22(rw,sync,no_root_squash)
[root@tpp ~]# exportfs -arv //重新加载NFS服务
exporting 192.168.137.22:/mnt
在客户端/opt目录下新建文件
[root@tpp opt]# touch 1.txt
[root@tpp opt]# touch 123
[root@tpp opt]# ls -l
总用量 0 -rw-r--r--. 1 root root 0 9月 13 02:05 123
-rw-r--r--. 1 root root 0 9月 13 02:05 1.txt
由上可知文件所属主和所属组都为root
相关文章推荐
- 使用zabbix监控Nginx活动状态--Part1
- 可以获取客户端的IP地址的sql语句
- Windows下使用Cygwin编译MySQL客户端
- 对JavaScript客户端应用编程的一些建议
- 服务端 VBScript 与 JScript 几个相同特性的写法与示例
- JavaScript调用客户端Java程序的方法
- SharePoint 客户端对象模型 (一) ECMA Script
- Js如何判断客户端是PC还是手持设备简单分析
- 使用AjaxPro.Net框架实现在客户端调用服务端的方法
- PostgreSQL教程(十七):客户端命令(1)
- Oracle 11g服务器与客户端卸载、安装全过程
- 服务端拼接json数据格式的正确写法(Append方式)
- 利用客户端缓存对网站进行优化的原理分析第1/2页
- 由于这台计算机没有终端服务器客户端访问许可证,远程会话被中断
- asp.net 客户端浏览器缓存的Http头介绍
- 真正的获取客户端真实IP地址及利弊分析
- php 获取客户端的真实ip
- JavaScript 获取用户客户端操作系统版本
- jsp 获取客户端的浏览器和操作系统信息
- DVWA系列之19 XSS攻击介绍