What command should I run in order to find out what distro a Linux server is running?
7 Answers
On most modern distributions, you can query the Linux Standard Base system with
lsb_release -d
Sample output:
Description: Debian GNU/Linux 5.0.2 (lenny)
Description: Ubuntu 9.04
-
3LSB toolset seems to always be available in modern distributions, but rarely installed by default...– freiheitCommented Aug 23, 2009 at 15:25
-
3@freiheit - I think that says all you need to know about LSB really :-)– ZancheyCommented Aug 24, 2009 at 4:12
-
-
@crk The command is likely available on all major distros but, as commented on earlier, may not be installed by default for a given distribution under common package selections.– doneal24Commented Dec 25, 2023 at 20:13
I answered a similar question on SuperUser.
For most of the popular distributions then,
cat /etc/*{release,version}
For distribution name...
cat /etc/issue
For platform...
uname -a
-
1/etc/issue is commonly replaced with a banner about authorized access as best practice in a lot of security guides, and common practice in many organizations. Commented Aug 23, 2009 at 21:52
-
1
-
The most reliable for figuring out which linux distribution:
ls -ld /etc/*release* /etc/*version*
Then cat whatever files look interesting from that.
But you probably (as mentioned in another comment already) always want to run uname -a
first, in case it isn't even a linux distribution.
There is a routine in VBoxSysInfo.sh, that is part of VirtualBox that can be a good starting point.
However, I'd rather ask the sysadmin about this. Apart from the distribution, particular servers can have specific settings and it is frustrating to discover those right after breaking them (not to mention pissing off the sysadmin, that'll became hostile to you for being a smartass and breaking his server). I tend to treat all sysadmins as friends/teammates, there is plenty of other people to fight with: users, management etc :-)
You can also run nmap -A
to let it guess the OS and version installed on a remote host
cat /etc/system-release
for more detailed output
cat /etc/os-release
-
-
For OEL 8, these files are provided by the
oraclelinux-release
package, which is not a required package. Other REL-type systems likely have similarly-named packages that are also not required.– doneal24Commented Dec 25, 2023 at 20:16