如何通过 Java 获取远端服务器剩余磁盘大小?

2019-03-04 10:56:17 +08:00
 TomKate

如题。

5935 次点击
所在节点    Java
28 条回复
TomKate
2019-03-04 11:02:56 +08:00
目前了解了以下两种方式
1.远端运行一个 server 程序记录剩余磁盘大小。
2.通过 ftp 的方式。
各位前辈,还有没有其它最优解?
lazyfighter
2019-03-04 11:05:02 +08:00
每个机器都部署一个 agent 但我觉得 java 不适合 ,go 应该适合一点
hakim
2019-03-04 11:07:36 +08:00
使用 smis/snmp 协议即可
Mazexal
2019-03-04 11:15:19 +08:00
java 可以远程执行脚本命令, 然后直接得到结果的
TomKate
2019-03-04 11:17:17 +08:00
@hakim 搜了一下发现网上的资源很少,能详细的说下怎么通过 java 来实现吗?
TomKate
2019-03-04 11:19:20 +08:00
@Mazexal 远端是 windows server。。。
ForestV
2019-03-04 11:20:28 +08:00
jni 配合 sigar.jar 和相关的扩展包
flame90
2019-03-04 11:21:16 +08:00
sigar 了解一下
airfling
2019-03-04 11:26:02 +08:00
snmp,或者 sigar 都可以
TomKate
2019-03-04 11:29:26 +08:00
@airfling sigar 看了下都是获取本机的例子。可以通过 IP 来获取吗?远端不进行部署?
msg7086
2019-03-04 11:29:57 +08:00
远程 wmi ?
caryqy
2019-03-04 11:36:05 +08:00
反过来呢,远端主动向你上报磁盘信息
TomKate
2019-03-04 11:38:41 +08:00
可能是我描述的不够详细,主要是想通过 java 来实现获取远端文件服务器的磁盘剩余大小。也就是说获取网络位置的磁盘大小。
TomKate
2019-03-04 11:39:46 +08:00
不在远端进行任何部署
moximo
2019-03-04 12:12:59 +08:00
老哥,想都不用想那些骚操作,直接 java
的 ssh 客户端上去 echo 你想要的结果就行啦。
moonblog
2019-03-04 13:49:50 +08:00
@TomKate 远程不做任何部署,却想获取磁盘信息,兄弟我觉得你可以当黑客了
部署的话,agent+sigar 实现,我做过
yinqi025
2019-03-04 13:55:44 +08:00
我觉得楼主在飘~~~,服务端没有任何的宿主或者服务端的东西 是不可能有结果的
maokabc
2019-03-04 14:01:25 +08:00
直接用 jsch 库,sftp 支持 statvfs,只要开了 ssh
dark3212
2019-03-04 14:28:31 +08:00
服务器是 windows 的话有个思路,就是将远程磁盘共享出来,本地电脑挂载,然后 java 像访问本地磁盘那样访问挂载磁盘应该可以。
但是安全性堪忧,特别是广域网。
qk3z
2019-03-04 14:43:58 +08:00
snmp 搞定

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/540751

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX