linux NFS简单配置

一、定义

 

     NFS(Network File System)即网络文件系统,可以实现多台计算机之间资源共享。该系统需要基于RPC服务(portmap)而使用,分为服务端和客户端。

 

二、相关服务说明

 

     nfsd:保证客户端能正常访问登录服务器;

     mountd:当NFS客户端向服务端共享同步文件时,需要mountd服务针对服务端配置的/etc/exports文件对客户端进行权限验证,只有验证通过完成后才允许其客户端进行文件共享。

     portmap:NFS服务器端与客户端之间通话是通过TCP/IP进行传输,该通话会使用随机端口方式进行通话,该端口的分配就交由portmap服务进行端口管理并提供给NFS客户端。服务端、客户端都依赖此服务。

 

三、服务端

 

    a)安装portmap服务

sudo apt-get install portmap

     

    b)安装服务端NFS软件

 

sudo apt-get install nfs-kernel-server

   

     c)配置 /etc/exports 文件

 

 

var/nfs 11.10.12.11(rw,sync,no_subtree_check) 11.10.12.12(rw,sync,no_subtree_check) 11.10.12.13(rw,sync,no_subtree_check)

 

 

    var/nfs:服务端地址共享文件存放地址

    11.10.12.11/12/13:NFS服务端/客户端IP地址,如果服务端也充当客户端使用,这里也需要为其赋权。

    rw:可读可写

    ro:只读

    sync:数据同步写入内存缓冲区与磁盘中,虽然这样做效率较低,但可以保证数据的一致性(适合于小文件传输)

    async:数据先暂时放于内存,而非直接写入硬盘,等到必要时才写入磁盘(适合于大文件传输)

    no_root_squash:使用nfs时,如果用户是root,不进行权限压缩,即root用户在nfs上创建的文件   属组和属主仍然是root(不安全,不建议使用)

    root_squash:使用nfs时,如果用户是root,则进行权限压缩,即把root用户在nfs上创建的文件   属组和属主修改为nfsnobody

    all_squash:所有的普通用户使用nfs都将使用权限压缩,即:将远程访问的所有普通用户及所属用户组都映射为匿名用户或者用户组(一般均为nfsnobody)

    no_all_squash:所有的普通用户使用nfs都不使用权限压缩,即:不将远程访问的所有普通用户及所属用户组都映射为匿名用户或者用户组(默认设置)

    anonuid=XXX:anon即anonymous(匿名者),前面关于*_squash提到的匿名用户的uid的设置值,通常为nobody或者nfsnobody,使用这个参数可以自行设定这个uid值,这个uid必须存在  于/etc/passwd

    anongid=XXX:将远程访问的所有用户组都映身为匿名用户组账户,并指定该匿名用户组账户为本地用户组账户(GID=XXX)

    insecure:允许客户端从大于1024的TCP/IP端口连NFS服务器

    secure:限制客户端只能从小于1024的TCP/IP端口连接NFS服务器(默认设置)

    wdelay:检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可提高效率(默认设置)

    no_wdelay:若有写操作则立即执行(应与sync配置)

    subtree_check:若输出目录是一个子目录,则NFSW:务器将检查其父目录的权限(默认设置)

    no_subtree_check:即使输出目录是一个子目录,NFS服务器也不检查其父目录的权限,这样做可提高效率

   

   d)启动portmap服务

 

sudo /etc/init.d/portmap restart

   

    e)启动NFS服务

 

 

sudo service nfs-kernel-server restart

   

    f)查看启动状态

 

      protmap服务:service protmap status

      nfs服务:service nfs-kernel-server status

 

四、客户端

 

    a)安装portmap服务

sudo apt-get install portmap

     

    b)安装客户端NFS软件

 

sudo apt-get install nfs-common

     

    c)启动portmap服务

 

sudo /etc/init.d/portmap restart

   

    d)启动NFS服务

 

 

sudo service nfs-kernel-server restart

     

    e)查看启动状态

 

      protmap服务:service protmap status

      nfs服务:service nfs-kernel-server status

     

    f)客户端共享路径挂载--手动挂载

 

sudo mount 11.10.12.11:/var/nfs /mnt/nfs/

    mount:挂载命令

 

    11.10.12.11:服务端IP地址

    /var/nfs:服务端地址共享文件存放地址

    /mnt/nfs/:客户端需共享地址

 

    g)客户端开机自动挂载--自动挂载

    将以下代码添加到/etc/fstab文件中

 

11.10.12.11://var/nfs /mnt/nfs/	nfs4	defaults	0 	0 

    retrans:当客户端加载NFS不成功时,重试次数,已经无法成功报错。默认缺省hard-mount一直尝试。

    其他参数可参照http://jianzong2000.iteye.com/blog/1631074

   

   h)查看是否挂载成功

 

   命令:df  -h

   查询结果如下所示:

 

Filesystem                   Size  Used Avail Use% Mounted on
....
11.10.12.11:/var/nfs         ...G  ..G  ...G  ..% /mnt/nfs

 

   此时在客户端/mnt/nfs目录下添加文件,就会同步到服务端及各个客户端。

 

 

技术选型 【后端】:Java 【框架】:springboot 【前端】:vue 【JDK版本】:JDK1.8 【服务器】:tomcat7+ 【数据库】:mysql 5.7+ 项目包含前后台完整源码。 项目都经过严格调试,确保可以运行! 具体项目介绍可查看博主文章或私聊获取 助力学习实践,提升编程技能,快来获取这份宝贵的资源吧! 在当今快速发展的信息技术领域,技术选型是决定一个项目成功与否的重要因素之一。基于以下的技术栈,我们为您带来了一份完善且经过实践验证的项目资源,让您在学习和提升编程技能的道路上事半功倍。以下是该项目的技术选型和其组件的详细介绍。 在后端技术方面,我们选择了Java作为编程语言。Java以其稳健性、跨平台性和丰富的库支持,在企业级应用中处于领导地位。项目采用了流行的Spring Boot框架,这个框架以简化Java企业级开发而闻名。Spring Boot提供了简洁的配置方式、内置的嵌入式服务器支持以及强大的生态系统,使开发者能够更高效地构建和部署应用。 前端技术方面,我们使用了Vue.js,这是一个用于构建用户界面的渐进式JavaScript框架。Vue以其易上手、灵活和性能出色而受到开发者的青睐,它的组件化开发思想也有助于提高代码的复用性和可维护性。 项目的编译和运行环境选择了JDK 1.8。尽管Java已经推出了更新的版本,但JDK 1.8依旧是一种成熟且稳定的选择,广泛应用于各类项目中,确保了兼容性和稳定性。 在服务器方面,本项目部署在Tomcat 7+之上。Tomcat是Apache软件基金会下的一个开源Servlet容器,也是应用最为广泛的Java Web服务器之一。其稳定性和可靠的性能表现为Java Web应用提供了坚实的支持。 数据库方面,我们采用了MySQL 5.7+。MySQL是一种高效、可靠且使用广泛的关系型数据库管理系统,5.7版本在性能和功能上都有显著的提升。 值得一提的是,该项目包含了前后台的完整源码,并经过严格调试,确保可以顺利运行。通过项目的学习和实践,您将能更好地掌握从后端到前端的完整开发流程,提升自己的编程技能。欢迎参考博主的详细文章或私信获取更多信息,利用这一宝贵资源来推进您的技术成长之路!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值