centos6.4 64位下安装nfs文件共享系统
不知道谁装的服务器,默认自带,以下内容摘自互联网,配置部分按教程执行成功 一、环境介绍: 服务器:centos 192.168.1.225 客户端:centos 192.168.1.226 二、安装: NFS的安装配置:
centos :
yum -y install nfs-utils portmap centos (在CentOS .3当中,portmap服务由rpcbind负责) :
yum -y install nfs-utils rpcbind 三、服务器端配置: 、创建共享目录:
[root@centos2 /]# mkdir /usr/local/test 、NFS文件配置:
[root@centos2 /]# vi /etc/exports
#增加一行:
/usr/local/test/ 192.168.1.226(rw,no_root_squash,no_all_squash,sync) :x保存退出; 使配置生效:
[root@centos2 /]# exportfs -r 注:配置文件说明: /usr/local/test/ 为共享的目录,使用绝对路径。
192.168.1.226(rw,no_root_squash,no_all_squash,sync) 为客户端的地址及权限,地址可以是一个网段,一个IP地址或者是一个域名,域名支持通配符,如:*.youxia.com,地址与权限中间没有空格,权限说明:
rw:read-write,可读写;
ro:read-only,只读;
sync:文件同时写入硬盘和内存;
async:文件暂存于内存,而不是直接写入内存;
no_root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,也拥有root权限。显然开启这项是不安全的。
root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,拥有匿名用户权限,通常他将使用nobody或nfsnobody身份;
all_squash:不论NFS客户端连接服务端时使用什么用户,对服务端分享的目录来说都是拥有匿名用户权限;
anonuid:匿名用户的UID值,通常是nobody或nfsnobody,可以在此处自行设定;
anongid:匿名用户的GID值。 、启动: centos6: [root@centos2 /]# service rpcbind start
Starting rpcbind: [ OK ]
[root@centos2 /]# service nfs start
Starting NFS services: [ OK ]
Starting NFS quotas: [ OK ]
Starting NFS mountd: [ OK ]
Stopping RPC idmapd: [ OK ]
Starting RPC idmapd: [ OK ]
Starting NFS daemon: [ OK ]
[root@centos2 /]# centos
[root@centos2 /]# service portmap start
[root@centos2 /]# service nfs start
[root@centos2 /]# 四、客户端挂载: 、创建需要挂载的目录:
[root@localhost ~]# mkdir /usr/local/test
[root@localhost ~]# 、测试挂载:
[root@localhost ~]# showmount -e 192.168.1.225
Export list for 192.168.1.225:
/usr/local/test 192.168.1.226
[root@localhost ~]# 如果显示:rpc mount export: RPC: Unable to receive; errno = No route to host,则需要在服务端关闭防火墙(稍候会详细说)。 、挂载: [root@localhost ~]# mount -t nfs 192.168.1.225:/usr/local/test /usr/local/test
[root@localhost ~]# mount
/dev/mapper/VolGroup-lv_root on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=,mode=)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
nfsd on /proc/fs/nfsd type nfsd (rw)
192.168.1.225:/usr/local/test on /usr/local/test type nfs (rw,vers=,addr=192.168.1.225,clientaddr=192.168.1.226)
[root@localhost ~]# 如果信息如上显示则挂载成功! 、测试: 客户端生成一个文件:
[root@centos2 /]# cd /usr/local/test/
[root@centos2 test]# echo "hello nfs test">>test
[root@centos2 test]# ll
total
-rw-r--r-- root root Apr : test
[root@centos2 test]# 服务端检查:
[root@centos2 /]# cd /usr/local/test/
[root@centos2 test]# ll
total
-rw-r--r-- root root Apr : test
[root@centos2 test]# 挂载成功! 五、解除挂载: [root@localhost ~]# umount /usr/local/test
[root@localhost ~]# mount
/dev/mapper/VolGroup-lv_root on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=,mode=)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
nfsd on /proc/fs/nfsd type nfsd (rw)
[root@localhost ~]# 如果遇到:umount.nfs: /usr/local/test: device is busy 可能用命令: [root@localhost /]# fuser -m -v /usr/local/test
用户 进程号 权限 命令
/usr/local/test/: root ..c.. bash
root ..c.. su
[root@localhost /]# kill - [root@localhost /]# kill - [root@localhost /]# umount /usr/local/test
[root@localhost /]# 六、服务器端防火墙设置(NFS 开启防墙配置): 、修改/etc/service,添加以下内容(端口号必须在1024以下,且未被占用) # Local services
mountd /tcp #rpc.mountd
mountd /udp #rpc.mountd
rquotad /tcp #rpc.rquotad
rquotad /udp #rpc.rquotad 、重起Linux NFS服务 service nfs restart 、此时rpc相关端口已经被固定,可以为Linux NFS添加防火墙规则 #portmap
/sbin/iptables -A INPUT -s 192.168.1.0/ -p tcp --dport -j ACCEPT
/sbin/iptables -A INPUT -s 192.168.1.0/ -p udp --dport -j ACCEPT
#nfsd
/sbin/iptables -A INPUT -s 192.168.1.0/ -p tcp --dport -j ACCEPT
/sbin/iptables -A INPUT -s 192.168.1.0/ -p udp --dport -j ACCEPT
#mountd
/sbin/iptables -A INPUT -s 192.168.1.0/ -p tcp --dport -j ACCEPT
/sbin/iptables -A INPUT -s 192.168.1.0/ -p udp --dport -j ACCEPT
#rquotad
/sbin/iptables -A INPUT -s 192.168.1.0/ -p tcp --dport -j ACCEPT
/sbin/iptables -A INPUT -s 192.168.1.0/ -p udp --dport -j ACCEPT
#rpc.statd
/sbin/iptables -A INPUT -s 192.168.1.0/ -p tcp --dport -j ACCEPT
/sbin/iptables -A INPUT -s 192.168.1.0/ -p udp --dport -j ACCEPT ---TCP方法成功-------------------------------------------
-A INPUT -m state --state NEW -m tcp -p tcp --dport -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport -j ACCEPT 客户端在挂载的时候遇到的一个问题如下,可能是网络不太稳定,NFS默认是用UDP协议,换成TCP协议即可: mount -t nfs 192.168.1.225:/usr/local/test /usr/local/test -o proto=tcp -o nolock ------------------------------------------------------------------------------------------------------------
问题:umount 时发生如下错误:
$ sudo umount /mnt/
/mnt was not found in /proc/mounts
/mnt was not found in /proc/mounts
解决:
umount 时使用 -l 命令。
$ sudo umount -l /mnt/
参考:
man umount:
-l Lazy unmount. Detach the filesystem from the filesystem hierarchy now, and cleanup all references to the filesystem as soon as it is not busy anymore. (Requires kernel 2.4.11 or later.)
来源于:https://www.lvtao.net/server/centos-nfs.html
centos6.4 64位下安装nfs文件共享系统的更多相关文章
- CentOS6.3(64位)下安装Oracle11gR2(64)服务器
安装环境 Linux服务器:Centos6.3 64位 Oracle服务器:Oracle11gR2 64位 系统要求 1.Linux安装Oracle系统要求 系统要求 说明 内存 必须高于1G的物理内 ...
- CentOS6.5 64位下安装部署Ansible
这里使用的软件包为一下版本 Python-2.7.12.tgz pip-9.0.1.tar.gz ansible-2.2.0.0.tar.gz 其他依赖包使用pip方式安装 方便说明做以下设定: 控制 ...
- linux(centos6.8 64位)下安装mysql5.7(yum方式)
下载mysql源安装包 # wget http:.noarch.rpm 安装mysql源包 #yum localinstall mysql57.noarch.rpm 检查mysql源是否安装成功 # ...
- Windows10 64位下安装TensorFlow谷歌人工智能系统已官方原生支持
Windows10 64位下安装TensorFlow谷歌人工智能系统已官方原生支持 GitHub - tensorflow/tensorflow: Computation using data flo ...
- 求助下 Ubuntu 15.10(64 位)下安装 pyspider 下的问题 - V2EX
https://www.v2ex.com/t/279405 求助下 Ubuntu 15.10(64 位)下安装 pyspider 下的问题 - V2EX pip 更新到最新 sudo apt inst ...
- CentOS6.x 64位下mysql5.5.25安装图解教程
查看当前安装的linux版本 命令:lsb_release -a 如下图所示 通过上图中的数据可以看出安装的版本为CentOS release 6.3,所以我们需要下载CentOS release 6 ...
- centos6.5 64位静默安装oracle 10G R2
操作系统:CentOS release 6.5 (Final) 64位 oracle版本:Oracle Database 10g Enterprise Edition Release 10.2.0.1 ...
- Windows 7/8 64位下安装64位Apache 2.4.7
准备软件: VC11 运行库 64位的apache版本 传送门:http://www.apachelounge.com/download/ 安装步骤: 修改httpd.conf配置文件 37行: Se ...
- CentOS 6.5 64位下安装Redis3.0.2的具体流程
系统环境:CentOS 6.5 64位 安装方式:编译安装 防火墙:开启 Redis版本:Redis 3.0.2 一.环境准备 1.安装 gcc gcc-c++ [root@iZ94ebgv853Z ...
随机推荐
- 实践一:Linux基础实践
一.Linux基础实践 1.1 1. 掌握软件源的维护方法,配置系统使用软件源镜像.掌握通过软件源来查找,安装,卸载,更新软件的方法. 这部分内容在许多学长学姐的报告里都有很详细的讲解,我在此就不赘述 ...
- Android菜鸟成长记6 -- 网络连接的检查
在android开发中我们要经常考虑到各种问题.在开发android应用时,涉及到要进行网络访问,时常需要进行网络状态的检查,以提供给用户必要的提醒.一般可以通过ConnectivityManager ...
- 使用rownum对oracle分页
以Student表为例进行分页 建表及插入 -- 有表结构如下 create table STUDENT ( sno INTEGER, sname ), sage INTEGER ); -- 插入数据 ...
- R6010 - abort() has been called 错误
今天修改了下程序,发布到服务器上进行测试,结果在测试的时候弹出下面的一个框: 找了N久,发现了原因,差点呗自己弄哭了.. 程序里写了下面这句代码,没有注释掉.
- Android Studio 初使用
Android Studio 更改Eclipse快捷键 Android Studio 更改编码 Android Studio 导包
- python学习笔记-Day6(3)
代码书写原则: 1)不能重复写代码 2)写的代码要经常变更 编程模式概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数 ...
- 防止刷新/后退引起的重复提交问题的Java Token代码,非Struts
贴子转自http://hi.baidu.com/bobylou,转之前并没有验证文章里的方法是不是有效,估计原作者把它放到blog之前应该做过测试了吧. Struts本身有一套完善的防止重复提交表单的 ...
- django 创建项目
django-admin startproject project-name 启动服务器 python manage.py runserver 0.0.0.0:8000 配置ALLOW_HOST
- 如何查看MySQL执行计划
在介绍怎么查看MySQL执行计划前,我们先来看个后面会提到的名词解释: 覆盖索引: MySQL可以利用索引返回select列表中的字段,而不必根据索引再次读取数据文件 包含所有满足查询需要的数据的索引 ...
- (转) Active Record
ActiveRecord是什么:1. 每一个数据库表对应创建一个类.类的每一个对象实例对应于数据库中表的一行记录; 通常表的每个字段在类中都有相应的Field;2. ActiveRecord同时负责把 ...