What is the Linux command to check the server OS and its version?
I am connected to the server using shell.
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. It only takes a minute to sign up.
Sign up to join this communityIf you want kernel version information, use uname(1). For example:
$ uname -a
Linux localhost 3.11.0-3-generic #8-Ubuntu SMP Fri Aug 23 16:49:15 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
If you want distribution information, it will vary depending on your distribution and whether your system supports the Linux Standard Base. Some ways to check, and some example output, are immediately below.
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu Saucy Salamander (development branch)
Release: 13.10
Codename: saucy
$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=13.10
DISTRIB_CODENAME=saucy
DISTRIB_DESCRIPTION="Ubuntu Saucy Salamander (development branch)"
$ cat /etc/issue.net
Ubuntu Saucy Salamander (development branch)
$ cat /etc/debian_version
wheezy/sid
GNU/Linux
, which is not what the OP is likely asking for.
Aug 29, 2013 at 6:17
lsb_release -a
did the trick. Thanks.
You can execute cat /etc/redhat-release
to check the Red Hat Linux (RH) version if you use an RH-based OS.
Another solution that may work on any linux distributions is lsb_release -a
.
And the uname -a
command shows the kernel version and other things.
Also cat /etc/issue.net
shows your OS version... This file shows in the telnet command when you want to connect to the server. For security reasons, it is better to delete the version and os name in this file.
If it is a debian based system, you could do
cat /etc/*_version
or for a Red Hat or CentOS based system, you could try (this is working on Red Hat Enterprise Linux-7):
cat /etc/*-release
cat /etc/*-release
- works for me. I have /etc/alpine-release
and /etc/os-release
.