nfs 的安装与使用
来源:互联网 发布:淘宝商城墙纸 编辑:程序博客网 时间:2024/06/04 19:34
一、 NFS简介
NFS是
的一种网
是UNIX系统中进行磁盘文件共享的方法。
在NFS
通过
实际上就跟普通的mount一样,平常的文件系统的mount,我们是将某个盘格式
化为文件系统后,挂载到某个目录,这样我们就可以在这个目录下读写文件,也就
是在对应的磁盘上读写。 nfs文件系统的使用就是将远程服务器机器上某个目录,
挂载到本地的某个目录,这样在访问本地该目录的时候,实际上就是在远程的那个
目录上进行对应的操作。
NFS 的基本原则是“容许不同的客户端及服务端通过一组RPC分享相同的文件系统”,它是独立
于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享。
NFS在文件传送或信息传送过程中依赖于RPC协议。RPC,远程过程调用 (Remote Procedure Call)
是能使客户端执行其他系统中程序的一种机制。NFS本身是没有提供信息传输的协议和功能的,但
NFS却能让我们通过网络进行资料的分享,这是因为NFS使用了一些其它的传输协议。而这些传输协
议用到这个RPC功能的。可以说NFS本身就是使用RPC的一个程序。或者说NFS也是一个RPC SERVER。
所以只要用到NFS的地方都要启动RPC服务,不论是NFS SERVER或者NFS CLIENT。这样SERVER和CLIENT
才能通过RPC来实现PROGRAM PORT的对应。可以这么理解RPC和NFS的关系:NFS是一个文件系统,而
RPC是负责负责信息的传输。
二、 NFS准备和配置工作
1.服务器和客户端我们都采用linux(fedora --f20),为了正常使用NFS,我们需要在服务器和客户端
安装NFS(在网上一些文章上说要安装portmap,新的发布版本上已经不需要了)
sudo yum install nfs-utils
( 这里可以通过yum list|grep nfs* 来查看软件包里面是否有nfs相关的包)
安装完之后,可以是rpm -qa|grep nfs进行查看
2. 设置配置文件,在/etc/exports中添加:
<输出目录> [客户端1 选项(访问权限,用户映射,其他)] [客户端2 选项(访问权限,用户映射,其他)]
/tmp/nfs_test *(rw,no_root_squash,insecure)
(要先设置配置文件,再启动nfs服务,否则提示/
3. 启动nfs服务
systemctl enable nfs-server.service
systemctl start nfs-server.service
4.查看:
exportfs
showmount -e
showmount -a
5. 在客户端mount 服务器端设置 共享目录,mount到本地目录上
mount -t nfs 9.151.141.111:/tmp/nfs_test /mnt
然后可以在/mnt目录里写文件,建目录,copy文件等等,实际上都是在
服务器端/tmp/nfs_test里面进行的。
也可以将两台机器上的文件相互copy...做备份也方便。
unmount /mnt即可。
(当mount时候提示资源忙 ,可以使用fuser:
fuser通常被用在诊断系统的“resource busy”问题,通常是在你希望umount指定的挂载点得
时候遇到。 如果你希望kill所有正在使用某一指定的file, file system or sockets的进程的时候,
你可以使用-k 选项。
格式为: $ fuser -m -v (nfs挂载点) 回车执行后得到的结果依次是:用户 进程号 权限 命令
此命令可以查看到访问此设备的所有进程,停止进程后umount.
如果添加参数 -k则可以一次性将所有当前访问nfs共享盘阵的进程停止 也可以加-i 打开交互
显示,以便用户确认
#fuser -v -m 挂载点 即可查处 用户 PID等,KILL掉该进程后再umount.
#umount -l 挂载点 选项 –l 并不是马上umount,而是在该目录空闲后再umount.
还可以先用命令 ps aux 来查看占用设备的程序PID,然后用命令kill来杀死占用设备的进程,这样
就umount的NFS服务安全非常放心了.
三、misc
在启动nfs服务的时候,使用了/etc/init.d/*** start 和service nfs star 都失败了,
[root@localhost admin]# service nfs start
Redirecting to /bin/systemctl start nfs.service
Failed to issue method call: Unit nfs.service failed to load: No such file or
directory. See system logs and 'systemctl status nfs.service' for details.
[root@localhost admin]# systemctl status nfs.service
nfs.service
Loaded: error (Reason: No such file or directory)
Active: inactive (dead)
因为系统启动和管理服务已经变为最新的systemd了,要通过
systemctl start ***.service
的方式启动程序, (通过 systemctl enable ***.service 开机自启动)
查找 ***.service的具体名字,在/lib/systemd/system/ 目录下的脚本,
nfs-utils 的是 nfs-server.service。
systemctl start nfs-server.service
journalctl -xn 可以看具体出错细节。
Jun 23 19:42:41 local-bj systemd[1]: Starting NFS server and services...
Jun 23 19:42:41 local-bj rpc.nfsd[30236]: rpc.nfsd: writing fd to kernel failed: errno 111 (Connection refused)
Jun 23 19:42:41 local-bj rpc.nfsd[30236]: rpc.nfsd: unable to set any sockets for nfsd
Jun 23 19:42:41 local-bj systemd[1]: nfs-server.service: main process exited, code=exited, status=1/FAILURE
Jun 23 19:42:41 local-bj systemd[1]: Failed to start NFS server and services.
Jun 23 19:42:41 local-bj systemd[1]: Unit nfs-server.service entered failed state.
前面介绍了nfs是依赖rpc协议的,所以要启动rpc服务。
[root@local-bj nfs2]$ /bin/systemctl restart rpcbind.service
[root@local-bj nfs2]$ /bin/systemctl restart nfs-server.service
四、参考:
http://www.cnblogs.com/mchina/archive/2013/01/03/2840040.html
https://www.ibm.com/developerworks/community/blogs/IBMzOS/entry/20130907?lang=zh
- nfs 的安装与使用
- NFS安装与使用
- NFS安装与使用
- NFS的安装、配置与使用
- NFS服务器安装与使用
- NFS在ubuntu上的安装与使用
- Ubuntu 16.04系统上NFS的安装与使用
- NFS的安装与设置
- nfs的安装与配置
- nfs的安装与配置
- NFS使用详解之一.安装与设置
- Ubuntu tftp nfs 的安装与配置
- nfs服务的安装与启动
- NFS服务器的安装与配置
- Linux NFS服务器的安装与配置
- Linux NFS服务器的安装与配置
- NFS服务器的简介与安装
- Linux NFS服务器的安装与配置
- Python入门&题目的思考
- MongoDB 备份/还原
- vim使用
- HDU_1257 最少拦截系统 (dp)
- redo中的update
- nfs 的安装与使用
- JS获取屏幕,浏览器,页面高度及宽度
- 最大子数组-分治算法
- 行为型模式-职责链
- Ubuntu14.04LTS安装 Microsoft® ODBC Driver 11 for SQL Server® - RedHat Linux
- 数独问题
- 实时查看股票变化
- C#实现MD5加密
- bzoj3166: [Heoi2013]Alo