如何确定在远程服务器上运行的Linux发行版?


12

我想知道远程服务器正在运行哪个Linux版本。我使用SSH连接到我的帐户,并使用以下命令:uname -a

我得到了:Linux just103.justhost.com 2.6.32-20130307.60.9.bh6.x86_64#1 SMP Thu Mar 7 Thu Mar 7 15:58:33 EST 2013 x86_64 x86_64 x86_64 GNU / Linux

但这并不能告诉我它是哪个版本的Linux。

有什么建议吗?谢谢,

扫罗

有一个文件lynx.cfg,所以我做了lynx.cfg头,它具有:

该文件的默认位置是/etc/lynx.cfg(Red Hat Linux,Fedora)

那么,这是否意味着该系统是Red Hat linux或Fedora?


1
这些天大多数系统都有lsb_release

您需要内核版本还是发行版名称?您已经获得了内核版本uname -a(请参见harald的答案)。
2013年

我想要发行名称。

1
相关超级用户问题,因为此问题是从Stack Overflow迁移而来的。
2013年

1
您尝试过社交方式吗?只需询问服务器所有者/管理员。
AnonymousLurker

Answers:


9

尝试这个...

$ cat /etc/*-release

/ etc目录中没有release *文件。

1
@SaulLugo是*-release,不是release*。举例来说,我跑Arch Linux的,所以我有arch-releaselsb-releaseos-release/etc/
ajp15243 2013年

[/ etc]#ls * -release / bin / ls:无法访问* -release:没有这样的文件或目录

扫罗,您是否cat /etc/issue按照我在对问题的评论中的指示进行了尝试?链接的堆栈溢出问题表明该命令可能在较旧的发行版中有效。
ajp15243

9

如果幸运的话,可以通过运行一些信息

lsb_release -a

不走运,我的系统中没有命令lsb_release。

4

“ 2.6.32-20130307.60.9.bh6.x86_64”建议使用CentOS或RedHat Linux。要找出它是哪个版本的CentOS(如果是CentOS),请使用:

猫/ etc / redhat-release

或更一般而言:

猫/ etc / * release

解决此问题的另一种方法是在/ etc中查找特定于发行版的配置文件,例如更新服务器和存储库。

这个:

猫/ etc / issue *

可能还会提供一些线索。

解决该问题的另一种方法是查找安装了哪个程序包管理器。试试这些:

apt-v
yum --version
pacman --version
出现-版本
pkgtool

如果找到它们,请使用它们搜索“ lsb-release”或类似名称的软件包,如果找到,请安装并尝试:

lsb_release -a



0

如果是debian检查

cat /etc/debian_version

或更一般地

cat /etc/*-release
cat /etc/*version

应该与大多数发行版匹配


0

如果您有yum可用的命令,则它是RedHat / CentOS / Oracle,然后检查您的yum存储库设置。

如果有,apt-get那么它与Debian有关,然后再次检查软件存储库,以确切地了解它是什么发行版。

如果您没有它们,请询问创建您的用户帐户的人;)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.