linux挂载nfs文件系统的简单介绍(linux挂载nfs命令)

linux挂载nfs文件系统的简单介绍(linux挂载nfs命令)

浏览次数:
信息来源: 用户投稿
更新日期: 2025-08-28 14:18:30
文章简介

1、怎么能让linux配置域名访问本地项目实现文件共享 2、Linux搭建NFS服务器 3、2022-05-15–Linux挂载报错:mount.nfs:Protocolnotsupported

2025阿里云双十一服务器活动

1、怎么能让linux配置域名访问本地项目实现文件共享

  • 2、Linux搭建NFS服务器

  • 3、2022-05-15–Linux挂载报错:mount.nfs:Protocolnotsupported

  • 4、linux设好fstab要开机自动挂载其他服务器上的nfs共享,为什么没有自动挂载?

  • 5、linux里怎么取消nfs共享

  • 怎么能让linux配置域名访问本地项目实现文件共享

    NFS是NetworkFileSystem的缩写,即网络文件系统。一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布。功能是通过网络让不同的机器、不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据,是在类Unix系统间实现磁盘文件共享的一种方法。

    NFS的基本原则是“容许不同的客户端及服务端通过一组RPC分享相同的文件系统”,它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享。

    NFS在文件传送或信息传送过程中依赖于RPC协议。RPC,远程过程调用(RemoteProcedureCall)是能使客户端执行其他系统中程序的一种机制。NFS本身是没有提供信息传输的协议和功能的,但NFS却能让我们通过网络进行资料的分享,这是因为NFS使用了一些其它的传输协议。而这些传输协议用到这个RPC功能的。可以说NFS本身就是使用RPC的一个程序。或者说NFS也是一个RPCSERVER。所以只要用到NFS的地方都要启动RPC服务,不论是NFSSERVER或者NFSCLIENT。这样SERVER和CLIENT才能通过RPC来实现PROGRAMPORT的对应。可以这么理解RPC和NFS的关系:NFS是一个文件系统,而RPC是负责负责信息的传输。

    系统平台:CentOSrelease5.6(Final)

    NFSServerIP:192.168.1.108

    防火墙已关闭/iptables:Firewallisnotrunning.

    NFS的安装是非常简单的,只需要两个软件包即可,而且在通常情况下,是作为系统的默认包安装的。

    nfs-utils-*:包括基本的NFS命令与监控程序

    portmap-*:支持安全NFSRPC服务的连接

    系统默认已安装了nfs-utilsportmap两个软件包。

    2、如果当前系统中没有安装NFS所需的软件包,需要手工进行安装。nfs-utils和portmap两个包的安装文件在系统光盘中都会有。

    rpm-ivhportmap-4.0-65.2.2.1.i386.rpm

    chkconfig–level35portmapon

    1、将NFSServer的/home/david/共享给192.168.1.0/24网段,权限读写。

    /home/david192.168.1.0/24(rw)

    3、服务器端使用showmount命令查询NFS的共享状态

    showmount-a//显示已经与客户端连接上的目录信息

    4、客户端使用showmount命令查询NFS的共享状态

    5、客户端挂载NFS服务器中的共享目录

    mount192.168.1.108:/home/david//tmp/david/

    查看文件是否和服务器端一致。

    6、NFS的共享权限和访问控制

    现在我们在/tmp/david/里面建立一个文件,看看权限是什么

    这里出现Permissiondenied,是因为NFS服务器端共享的目录本身的写权限没有开放给其他用户,在服务器端打开该权限。

    再次在客户端/tmp/david/里面建立一个文件

    我用root用户建立的文件,变成了nfsnobody用户。

    NFS有很多默认的参数,打开/var/lib/nfs/etab查看分享出来的/home/david/完整权限设定值。

    默认就有sync,wdelay,hide等等,no_root_squash是让root保持权限,root_squash是把root映射成nobody,no_all_squash不让所有用户保持在挂载目录中的权限。所以,root建立的文件所有者是nfsnobody。

    下面我们使用普通用户挂载、写入文件测试。

    普通用户写入文件时就是自己的名字,这也就保证了服务器的安全性。

    1.客户端连接时候,对普通用户的检查

    a.如果明确设定了普通用户被压缩的身份,那么此时客户端用户的身份转换为指定用户;

    b.如果NFSserver上面有同名用户,那么此时客户端登录账户的身份转换为NFSserver上面的同名用户;

    c.如果没有明确指定,也没有同名用户,那么此时用户身份被压缩成nfsnobody;

    2.客户端连接的时候,对root的检查

    a.如果设置no_root_squash,那么此时root用户的身份被压缩为NFSserver上面的root;

    b.如果设置了all_squash、anonuid、anongid,此时root身份被压缩为指定用户;

    c.如果没有明确指定,此时root用户被压缩为nfsnobody;

    d.如果同时指定no_root_squash与all_squash用户将被压缩为nfsnobody,如果设置了anonuid、anongid将被压缩到所指定的用户与组;

    7、卸载已挂载的NFS共享目录

    八、启动自动挂载nfs文件系统

    server:/remote/export/local/directorynfsoptions00

    查看/home/david有没有自动挂载。

    linux挂载nfs文件系统的简单介绍,linux挂载nfs命令

    -a全部挂载或卸载/etc/exports中的内容

    -r重新读取/etc/exports中的信息,并同步更新/etc/exports、/var/lib/nfs/xtab

    -u卸载单一目录(和-a一起使用为卸载所有/etc/exports文件中的目录)

    -v在export的时候,将详细的信息输出到屏幕上。

    exportfs-rv重新共享所有目录并输出详细信息

    查看NFS的运行状态,对于调整NFS的运行有很大帮助。

    查看rpc执行信息,可以用于检测rpc运行情况的工具,利用rpcinfo-p可以查看出RPC开启的端口所提供的程序有哪些。

    -a显示已经于客户端连接上的目录信息

    -eIP或者hostname显示此IP地址分享出来的目录

    可以查看出nfs服务开启的端口,其中nfs开启的是2049,portmap开启的是111,其余则是rpc开启的。

    最后注意两点,虽然通过权限设置可以让普通用户访问,但是挂载的时候默认情况下只有root可以去挂载,普通用户可以执行sudo。

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

    System的简写,即网络文件系统.

    网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS.

    NFS允许一个系统在网络上与它人共享目录和文件。通过使用NFS,用户和程序可以象访问本地文件一样访问远端系统上的文件。

    1.本地工作站使用更少的磁盘空间,因为通常的数据可以存放在一台机器上而且可以通过网络访问到。

    2.用户不必在每个网络上机器里头都有一个home目录。Home目录

    可以被放在NFS服务器上并且在网络上处处可用。

    之类的存储设备可以在网络上面被别的机器使用。这可以减少整个网络上的可移动介质设备的数量。

    NFS至少有两个主要部分:一台服务器和一台(或者更多)客户机。客户机远程访问存放在服务器上的数据。为了正常工作,一些进程需要被配置并运行。

    192.168.0.0/255.255.255.0(rw,sync)

    共享的IP及掩码或者域名(权限,同步更新)

    然后关闭防火墙以及更改Selinux关于NIS的选项

    编辑fstab文件,实现开机自动挂载

    然后关闭防火墙以及更改Selinux关于NIS的选项

    2022-05-15–Linux挂载报错:mount.nfs:Protocolnotsupported

    遇到这个问题首先百度,百度得到的答案无非两个:

    1.内核不支持NFS,需要配置内核支持.

    2.busybox的mount需要支持NFS.

    其实还有一个原因是网络不稳定,或网络配置有问题,

    [root@software~]#mount-tnfs-oro192.168.30.9:/vx/software??/share/software

    报错:mount.nfs:Protocolnotsupported

    UUID=02666766-9664-46e4-86d6-6666666666

    NETMASK=”255.255.255.0″

    ONBOOT=no配置错误。改成yes完美解决。

    linux设好fstab要开机自动挂载其他服务器上的nfs共享,为什么没有自动挂载?

    看看开机的时候报什么错吧。

    另外注意portmap、netfs服务要设成开机启动。

    我遇到过一次,开机时netfs报错mount失败,英文报错,大概意思是

    当然开机后网络没问题。开机后输入mount

    挂全部fstab内容也没问题,要挂的都挂上了。所以主要原因应该是启动时网络没准备好,就开始试图挂载nfs共享,所以无法自动挂载。

    可以这样,设个开机启动。命令为mount

    ,挂载fstab内容,但是为了等网络准备好再挂载免得失败,mount前加条命令

    也可以改下netfs的开机启动文件,在monut前加一行睡眠命令,让netfs先等一会再继续执行挂载网络文件系统的行为。

    使用挂载的卷时,umount命令将无法分离共享,要找出正在访问NFS共享的进程,请使用fuser命令:

    找到进程后,可以使用kill命令停止它们并卸载NFS共享。

    如果你仍然无法卸载共享,请使用-l(–lazy)选项,该选项允许你在繁忙的文件系统不再忙时立即卸载它:

    如果远程NFS系统无法访问,请使用-f(–force)选项强制卸载:

    umount-fMOUNT_POINT??命令使用介绍看下图查找

    【linux挂载nfs文件系统】的内容来源于互联网,如引用不当,请联系我们修改。

    linux挂载nfs文件系统的简单介绍,linux挂载nfs命令

    标签:
    protonmail(protonmail注册验证邮箱)
    « 上一篇
    返回列表
    下一篇 »

    如本文对您有帮助,就请抽根烟吧!