5.11 In this example, the version shown is Oracle Solaris 11 (5.11). If necessary, refer to your operating system documentation for information about upgrading the operating system. I know uname -a or /proc/version Is any other command to know the Linux version???? When we telnet to any of the Linux server, the version shows very clearly like Red Hat Enterprise Linux ES release 3 (Taroon. (1 Reply) Discussion started by: bachegowda.
Is there a way to determine what version (distribution & kernel version, I suppose) of Linux is running (from the command-line), that works on any Linux system?
Breakthrough9 Answers
The kernel is universally detected with uname
:
There really isn't a cross-distribution way to determine what distribution and version you're on. There have been attempts to make this consistent, but ultimately it varies, unfortunately. LSB tools provide this information, but ironically aren't installed by default everywhere. Example on an Ubuntu 9.04 system with the lsb-release
package installed:
Otherwise, the closest widely-available method is checking /etc/something-release
files. These exist on most of the common platforms, and on their derivatives (i.e., Red Hat and CentOS).
Here are some examples.
Ubuntu has /etc/lsb-release
:
Unix Solaris Version Command
But Debian has /etc/debian_version
:
Fedora, Red Hat and CentOS have:
Gentoo:
I don't have a SUSE system available at the moment, but I believe it is /etc/SuSE-release
.
Slackware has /etc/slackware-release
and/or /etc/slackware-version
.
Mandriva has /etc/mandriva-release
.
For most of the popular distributions then,
will most often work. Stripped down and barebones 'server' installations might not have the 'release' package for the distribution installed.
Additionally, two 3rd party programs you can use to automatically get this information are Ohai and Facter.
Note that many distributions have this kind of information in /etc/issue
or /etc/motd
, but some security policies and best practices indicate that these files should contain access notification banners.
Related:How to find out version of software package installed on the node?,puppet.
You could also try:
It usually (not always, though) will tell you what distribution you are using. /etc/issue
is the file used for the login screen.
Get Solaris Version Command Line
at a minimum for Ubuntu, Fedora and OpenSUSE.
Does not work for OS X at least until 10.9 (Mavericks). Use sw_vers instead.
OpenSUSE had cat /etc/SuSE-release up until 13.1 but is deprecated in favour of os-release.
Redhat 6.1 has cat /etc/redhat-release
cat /proc/version
found me Red Hat on a shared VPS.
Kernel: uname -r
Distro: lsb_release -a
These will run on most Linux systems
This issue can also be solved using Python with the platform
module:
Using platform()
function:
The above command returns a single string identifying the underlying platform with as much useful information as possible.
Or using uname()
function:
The above command returns a namedtuple()
containing six attributes: system
, node
, release
, version
, machine
, and processor
.
Or using dist()
function:
The last command tries to determine the name of the Linux OS distribution name, but it is deprecated since Python 3.5 and will be removed in Python 3.8.
protected by BinaryMisfitDec 20 '10 at 14:27
Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).
Would you like to answer one of these unanswered questions instead?