当前位置:  操作系统/服务器>linux

linux NFS 学习笔记

    来源: 互联网  发布时间:2014-08-25

    本文导语:  NFS,是Network File System的简写,即网络文件系统。网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS. NFS允许一个系统在网络上与他人共享目录和文件。通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上...

NFS,是Network File System的简写,即网络文件系统。网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS. NFS允许一个系统在网络上与他人共享目录和文件。通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件。

NFS基于 RPC协议,NFS本身只是起到共享的作用而和客户端进行连接和数据传输则是RPC协议的功能

NFS主要通过两个daemon 来进行控制:
1.rpc.nfsd  ------- 它用来控制客户端是否可以连接到,NFS server
2.rpc.mountd----它用来控制客户端连接后是否有权限对文件进行操作,主要是依据/etc/exports文件的设置

启用NFS需要启用portmap 和nfs-utils
1.portmap主要用来控制客户端连接时请求的端口
2.nfs-utils 是rpc.nfsd、rpc.mountd 的执行文件

/etc/exports                           NFS服务的主要配置文件
/usr/sbin/exportfs                     NFS服务的管理命令
/usr/sbin/showmount                    客户端的查看命令
/var/lib/nfs/xtab                      记录曾经登录过的客户信息

/etc/exports文件设置格式
【分享的目录】 ip或者主机(参数1.参数2) ip或者主机(参数3,参数4)
参数主要有以下几个
rw:读写
ro:只读
no_root_squash:客户端登陆者如果为root,则登录共享目录后具有root权限
root_squash:root登录后身份被压缩为nfsnobody(默认情况下)
all_squash:所有用户登录后身份被压缩为nfsnobody(默认下)
anonuid:如不想让用户登录后被压缩为nfsnobody用户可以更改此项
anongid:同上(这个是组)
sync:数据同步写入硬盘
async:数据先存储到内存

关于权限的分析

1.客户端连接时候,对普通用户的检查,NO.1如果明确设定了普通用户被压缩的身份,那么此时客户端用户的身份转换为指定用户,NO.2如果NFS server上面有同名用户,那么此时客户端登录账户的身份转换为NFS server上面的同名用户,NO.3如果没有明确指定,也没有同名用户,那么此时 用户身份被压缩成nfsnobody
2.客户端连接的时候,对root的检查,NO.1如果设置no_root_squash,那么此时root用户的身份被压缩为NFS server上面的root,NO.2如果设置了all_squash、anonuid、anongid,此时root 身份被压缩为指定用户,NO.3如果没有明确指定,此时root用户被压缩为nfsnobody,NO.4如果同时指定no_root_squash与all_squash 用户将被压缩为 nfsnobody,如果设置了anonuid、anongid将被压缩到所指定的用户与组

启动服务
service portmap start or /etc/rc.d/init.d/portmap start
service nfs start   or   /etc/rc.d/init.d/nfs start

exportfs 命令用法
-a 全部挂载或卸载
-r 重新读取/etc/exports 中的信息 ,并同步更新/etc/exports、/var/lib/nfs/xtab
-u 卸载单一目录(和-a一起使用为卸载所有/etc/exports文件中的目录)
-v 在屏幕输出详细信息

showmount 命令用法
-a  显示已经于客户端连接上的目录信息
-e  IP或者hostname 显示此IP地址分享出来的目录

利用netstat可以查看出nfs服务开启了很多端口其中nfs开启的是2049 portmap 开启的是 111,其余则是rpc开启的
利用rpcinfo -p 可以查看出RPC开启的端口所提供的程序有哪些
使用mount -t nfs ip(hostname):共享目录  挂载点 方式,可以完成挂载
最后注意两点,虽然通过权限设置可以让普通用户访问,但是挂载的时候只默认情况下只有root可以去挂载(普通用户可以执行sudo)

NFS server 关机的时候一点要确保NFS服务关闭,没有客户端处于连接状态!!通过showmount -a 可以查看,如果有的话用kill killall pkill 来结束,(-9 强制结束)


    
 
 

您可能感兴趣的文章:

  • 请问各位大虾:笔记本安装Linux的多吗?还有,笔记本对Linux的支持好吗?
  • IBM笔记本安装linux问题
  • 笔记本安装redhat linux9错误问题
  • 笔记本安装linux8.0图形模式,启动后屏幕变成花屏?什么缘故?
  • 笔记本安装LINUX问题
  • 用笔记本装linux9没问题吧?另外,
  • 请问关于笔记本装LINUX注意问题(在线等待)
  • 关于LINUX的几个问题? 笔记本安装LINUX
  • 请教一个笔记本上装linux的显示器问题
  • 如何在惠普540笔记本电脑上装xp和linux双系统?
  • 能在笔记本上安装XP和Linux双启动吗?删除Linux时如何保证XP仍能正常启动?
  • 我的笔记本为什么装不上linux??谢谢
  • 大送分,寻求解决方案,在没有内置光驱的笔记本装LINUX,....
  • 386笔记本怎么装linux?
  • 在笔记本上装不上LINUX???
  • federa linux 怎么调节笔记本显示亮度
  • 清华同 方超锐v4000d笔记本 装linux需要注意什么?
  • 我的笔记本只能接usb的鼠标,请问那个linux可以支持
  • Linux 下 Oracle 命令学习笔记
  • 想买台笔记本做开发(linux和freebsd系统下的),推荐一下?
  • 我想学习linux桌面编程,那么有没有必要学习linux的内核以及内核的相关编程呢?
  • 我想问一个大家,我现在刚学习LINUX,我想问一下在LINUX学习哪些知识有前途???
  • 新手提问:学习c++同时也想学习unix和linux
  • 学习linux网络编程需要学习些内核知识吗?
  • 想找共同学习Linux的新手,一起学习,共同成长
  • 我想学习linux,请问哪个linux版本适合新手学习,哪里有相关资料下载,谢谢了
  • 你们学习Linux是学习什么的?
  • 我想学习Unix,请高手给个下载网址,用linux来学习Unix差别大吗?
  • 我想学习LINUX,在哪里下手学习,我现在要看什么样的教材?
  • 我是学习web开发的,主要是java开发SSH开发框架和ajax等。我想知道有没有必要学习一下linux相关知识。
  • 找几位刚刚入手学习Linux kernel的人共同学习(0.11 赵炯)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • mount命令(linux操作系统)挂载卸载文件系统(cifs,光驱,nfs等)方法介绍
  • 请问大家如何下载linux nfs的包--小妹
  • Linux下NFS服务配置详解
  • linux下nfs 问题!
  • 开发板NFS看不到linux下的目录
  • 求高手解决国嵌视频中课程1-Linux系统管理,NFS网络配置问题?
  • win2k中用vmware装Linux过程中,NFS设置怎么弄呀?
  • Linux nfs mount RPC :timeout
  • linux系统设置nfs服务器配置的问题?
  • linux下的NFS问题,求教。
  • linux nfs无法mount
  • nfs根文件系统启动Linux问题
  • 开发板Linux用NFS挂载虚拟机文件夹
  • linux嵌入式开发,目标板启动时nfs文件系统mount不成功,急急急,郁闷,谁知道啊
  • 如何判断linux下NFS服务是否启动??
  • linux系统之间通过nfs网络文件系统挂载设置方法
  • linux NFS安装配置及常见问题、/etc/exports配置文件、showmount命令
  • linux 挂载nfs出现问题
  • linux c/c++ IP字符串转换成可比较大小的数字
  • 在win分区上安装linux和独立分区安装linux有什么区别?可以同时安装吗?(两个linux系统)
  • linux哪个版本好?linux操作系统版本详细介绍及选择方案推荐
  • 在虚拟机上安装的linux上,能像真的linux系统一样开发linux程序么?
  • secureCRT下Linux终端汉字乱码解决方法
  • 我重装window后,把linux的引导区覆盖了,进不了linux怎么办?急啊,望热心的人帮助 (现在有linux的盘)
  • Linux c字符串中不可打印字符转换成16进制
  • 安装vmware软件,不用再安装linux系统,就可以模拟linux系统了,然后可以在其上学习一下LINUX下的基本操作 了?
  • Linux常用命令介绍:更改所属用户群组或档案属性
  • 红旗Linux主机可以通过127.0.0.1访问,但如何是连网的Win2000机器通过Linux的IP去访问Linux
  • linux命令大全详细分类介绍及常用linux命令文档手册下载
  • 我重装window后,把linux的引导区覆盖了,进不了linux怎么办?急啊,望热心的人帮助 (现在没有linux的盘,只有DOS启动盘)
  • Linux Kernel 'sctp_v6_xmit()'函数信息泄露漏洞


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3