簡體   English   中英

從java確定linux版本

[英]Determine linux version from java

我想知道是否有辦法確定我在JVM中運行的Linux版本(即區分RHEL4,RHEL5)。 我只是在尋找一種區分操作系統及其版本的一致方法。

JVM為您提供有關操作系統的一些基本信息

System.getProperty()

"os.name" // OS name
"os.arch" // OS architecture
"os.version" // OS version

據我所知,它不提供分發特定信息。 至少對於debian發行版,這些信息存儲在一個名為的文件中

在/ etc /問題

因此,它可能有助於讀取不同發行版存儲此信息的任何文件。

我不相信你可以看到任何系統屬性會給你這些信息。 如何執行cat /proc/version並解析輸出。

您正在運行哪個版本的發行版或哪個版本的內核? 我知道Red Hat曾經將他們的版本號保存在名為/ etc / redhat-release的文件中。 我不確定其他的發行版。 您可以通過對“uname -r”進行系統調用來獲取內核版本

/prov/version是一個好的開始。 /etc/issue也可能有幫助。

如果System.getProperty(x)其中x是“os.name”,“os.arch”,“os.version”對你不起作用,那么你可能不得不求助於按照建議運行本機進程(cat / proc / version,或lsb_release等)

你也可以看看lsb_release

lsb_release -a

會給你這樣的東西:

cyril@merlin:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 8.10
Release:    8.10
Codename:   intrepid

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM