I can use uname and cat /proc/version but all I get is the kernel version.

How do I know whether I'm running RHEL4 or 5.5 or such?


You can find out in the file /etc/issue

cat /etc/issue

And also on redhat based systems, you can find out in /etc/redhat-release

cat /etc/redhat-release 
  • 4
    I should add that lsb_release -a can work for modern versions of Red Hat, Debian, and Ubuntu
    – PP.
    Jun 4 '13 at 15:23
  • There were no /etc/issue or /etc/redhat-release files on the redhat server I wanted to interrogate. Nov 1 '16 at 11:35

cat /etc/redhat-release will tell you.


/etc/redhat-release is the usual way, but be careful if you are working on an unfamiliar server. Administrators have been known to "tweak" redhat-release to permit certain software packages requiring Redhat Enterprise to install on similar distributions which are not officially supported by the vendor. For example, IBM's Lotus Domino package typically looks for RHEL before allowing the installer to run, but it can be installed on CentOS by "faking out" the string in /etc/redhat-release.


rpm -q --whatprovides /etc/redhat-release can also be used (and it works on both RedHat and CentOS). The version portion of the output should be the OS version.

e.g. An output of "redhat-release-5Server-" shows that the box is running RHEL 5.4 while "centos-release-5-5.el5.centos" indicates that the box is running CentOS 5.5.


cat /etc/redhat-release


$ cat /etc/centos-release CentOS Linux release 7.3.1611 (Core) $ cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core)

Not the answer you're looking for? Browse other questions tagged or ask your own question.