Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用PC名称在Lubuntu中永久挂载windows共享文件夹?_Java_Ubuntu_Windows 10_Samba_Cifs - Fatal编程技术网

Java 如何使用PC名称在Lubuntu中永久挂载windows共享文件夹?

Java 如何使用PC名称在Lubuntu中永久挂载windows共享文件夹?,java,ubuntu,windows-10,samba,cifs,Java,Ubuntu,Windows 10,Samba,Cifs,我在Lubuntu上使用一个java程序,它通过Wi-Fi局域网备份我的windows电脑。我需要访问他的windows共享文件夹,但使用PC-NAME,而不是IP地址。我该怎么做 我正在使用cifs utils来实现这一点,对于永久安装,它位于/etc/fstab: //PCName/ShareF /media/PCName/ShareF cifs credentials=/home/user/.myrcre 但我得到了这个错误: mount error: could not resolve

我在Lubuntu上使用一个java程序,它通过Wi-Fi局域网备份我的windows电脑。我需要访问他的windows共享文件夹,但使用PC-NAME,而不是IP地址。我该怎么做

我正在使用cifs utils来实现这一点,对于永久安装,它位于/etc/fstab

//PCName/ShareF /media/PCName/ShareF cifs credentials=/home/user/.myrcre
但我得到了这个错误:

mount error: could not resolve address for PCName: Unknown error
我需要通过windows PC的名称而不是ip地址访问它,因为我不想设置静态ip,因此ip地址有时会更改。我需要它永久挂载,无论服务器或客户端是否关闭

也许,这是另一种可能性,例如java代码可以从PCName获得IP地址,但我不知道为什么。我什么也找不到


谢谢你的回答

首先,Lubuntu需要知道谁是PCName,所以从终端ping它并验证:

ping PCName
如果可以将PCName解析为XXX.YYY.KKK.ZZZ,则可以挂载它

如果您无法解析名称,Lubuntu将无法装载未定义的网络资源,我想这是您的情况:

装载错误:无法解析PCName的地址

这是一个网络问题,不是真正的编程问题

网络中是否有域服务器或DNS服务器?

如果有,请在Lubuntu PC上将DNS服务器设置为该ip,然后再次尝试解析PCName。Lubuntu将能够解析请求服务器的PCName(DNS或DC)

您是否可以访问DHCP服务器(我想是在路由器上)?

如果有,您可以将PCName的MAC地址映射到特定的固定地址。您的Windows PC仍在DHCP中,但它始终接收相同的ip

在Lubuntu上,在/etc/hosts中添加一行,技巧就完成了

您不能应用这些解决方案吗?ARP扫描

如果您知道Windows PCName的mac地址,则可以在网络上进行ARP扫描

您将收到一个映射IP->MAC,这样您就可以从MAC获得IP。现在,您可以通过他的IP挂载您的PCName

如果防火墙、防病毒软件或IPS阻止arp扫描,此解决方案可能会失败


记住:您可以执行所有linux命令抛出
Runtime.exec
,阅读其他问题。如果您可以在Linux中执行此操作,那么您可以在Java中执行此操作

谢谢您的回答,但当我尝试此命令ping PCName时,输出:ping:PCName:名称解析暂时失败。我已将DNS添加到/etc/systemd/resolved.conf中并重新启动它,但仍然无法工作。我已经允许防火墙端口53 udp和tcp。仍然没有改变。我可以从不同的Windows设备ping我的PCName,但不能从我的Lubuntu:(DHCP路由器映射解决了我的问题。非常感谢。)