nfs连接

参考链接:https://blog.csdn.net/CSDN_duomaomao/article/details/77822883

服务器端

1.安装nfs

#执行以下命令安装NFS服务器,

#apt会自动安装nfs-common、rpcbind等13个软件包

sudo apt install nfs-kernel-server

2.编写配置文件

#编辑/etc/exports 文件:

sudo vi /etc/exports

 

#/etc/exports文件的内容如下:

/tmp *(rw,sync,no_subtree_check,no_root_squash)

/data *(rw,sync,no_subtree_check,no_root_squash)

/logs *(rw,sync,no_subtree_check,no_root_squash)

#*表示接受所有的网段访问

3.创建共享目录

4.将配置文件重新export一次(非常重要)

sudo exportfs -rv

5.重启服务

sudo service nfs-kernel-server restart

常用工具命令

#在安装NFS服务器时,已包含常用的命令行工具,无需额外安装。

#显示已经mount到本机nfs目录的客户端机器。

sudo showmount -e localhost

 

#将配置文件中的目录全部重新export一次!无需重启服务。

sudo exportfs -rv

 

#查看NFS的运行状态

sudo nfsstat

#查看rpc执行信息,可以用于检测rpc运行情况

sudo rpcinfo

 

#查看网络端口,NFS默认是使用111端口。

sudo netstat -tu -4

客户端

查看共享的目录:

挂载目录:

 

Windows下安装nfs server

1.下载haneWIN nfs

https://www.hanewin.net/nfs-e.htm

2.安装

3.修改共享文件夹

在C盘创建文件夹ftp,添加到exports file里,然后再在客户端挂载即可。

 

首先,你需要在你的 Maven 项目中添加以下依赖项: ```xml <dependency> <groupId>io.github.hunterstrategy</groupId> <artifactId>jnfs-git</artifactId> <version>1.2.0</version> </dependency> ``` 然后,你可以使用以下代码创建一个 NFS 连接池: ```java import io.github.hunterstrategy.jnfs.NfsPoolElement; import io.github.hunterstrategy.jnfs.NfsPoolManager; public class NfsPoolExample { public static void main(String[] args) throws Exception { String nfsServer = "192.168.0.100:/data/nfs"; // NFS 服务器地址和挂载点 int maxPoolSize = 10; // 连接池的最大大小 int minPoolSize = 1; // 连接池的最小大小 NfsPoolManager nfsPoolManager = new NfsPoolManager(); nfsPoolManager.setMaxPoolSize(maxPoolSize); nfsPoolManager.setMinPoolSize(minPoolSize); NfsPoolElement nfsPoolElement = new NfsPoolElement(nfsServer); nfsPoolElement.setPoolManager(nfsPoolManager); nfsPoolManager.addElement(nfsPoolElement); // 从连接池中获取一个 NFS 客户端实例 NFSClient nfsClient = (NFSClient) nfsPoolElement.getClient(); // 使用 NFS 客户端实例进行操作 NFSFile nfsFile = nfsClient.getFile("/test.txt"); System.out.println(nfsFile.readString()); // 将 NFS 客户端实例归还到连接池中 nfsPoolElement.release(nfsClient); // 关闭连接nfsPoolManager.close(); } } ``` 在上面的示例中,我们首先创建了一个 `NfsPoolManager` 对象,并设置了连接池的最大和最小大小。然后,我们创建了一个 `NfsPoolElement` 对象,并将其添加到连接池管理器中。接下来,我们从连接池中获取一个 `NFSClient` 实例,并使用它来读取 NFS 文件。最后,我们将 `NFSClient` 实例归还到连接池中,并关闭连接池。 值得注意的是,`io.github.hunterstrategy.jnfs` 包中的类和方法都是基于 NFSv3 协议实现的。如果你需要使用 NFSv4 协议,请查看 `io.github.hunterstrategy.jnfs4j` 包。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值