【背景】
拿到一个Linux的服务器。
想要搞清楚,是哪个发行版,比如CentOS,Ubuntu等等。
以便于后续使用yum还是apt-get去install软件,以及做不同的配置。
【折腾过程】
1.通过uname,看不到想要的,只看到Linux:
[[email protected] /]# uname -a Linux bogon 2.6.32-504.el6.x86_64 #1 SMP Wed Oct 15 04:27:16 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
2.搜:
how check which linux distribution
参考:
HowTo: Find Out My Linux Distribution Name and Version
去试试:
[[email protected] ~]# cat /etc/*-release CentOS release 6.6 (Final) LSB_VERSION=base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch CentOS release 6.6 (Final) CentOS release 6.6 (Final)
很明显可以看出来,是CentOS。
3.再去试试:
[[email protected] ~]# lsb_release -a LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch Distributor ID: CentOS Description: CentOS release 6.6 (Final) Release: 6.6 Codename: Final
4.以及:
[[email protected] ~]# cat /proc/version Linux version 2.6.32-504.el6.x86_64 ([email protected]) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC) ) #1 SMP Wed Oct 15 04:27:16 UTC 2014
【总结】
Linux中,通过:
cat /etc/*-release
或:
lsb_release -a
或:
cat /proc/version
即可看出是哪个Linux的发行版。
其中最推荐的是用:
lsb_release –a
【后记 2015-09-09】
1.后来在一个Linux系统,其实自己已经知道不是CentOS就是Ubuntu,但是想要确认到底是哪个系统。
结果去参考上述的办法,竟然:
没有lsb
[email protected]:~$ lsb_release -a -bash: lsb_release: command not found [email protected]:~$ yum search lsb Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirrors.linode.com * epel: mirror.smartmedia.net.id * extras: mirrors.linode.com * updates: mirrors.linode.com ================================================================ N/S matched: lsb ================================================================= redhat-lsb-core.i686 : LSB Core module support redhat-lsb-core.x86_64 : LSB Core module support redhat-lsb-cxx.i686 : LSB CXX module support redhat-lsb-cxx.x86_64 : LSB CXX module support redhat-lsb-desktop.i686 : LSB Desktop module support redhat-lsb-desktop.x86_64 : LSB Desktop module support redhat-lsb-languages.i686 : LSB Languages module support redhat-lsb-languages.x86_64 : LSB Languages module support redhat-lsb-printing.i686 : LSB Printing module support redhat-lsb-printing.x86_64 : LSB Printing module support redhat-lsb-submod-multimedia.i686 : LSB Multimedia submodule support redhat-lsb-submod-multimedia.x86_64 : LSB Multimedia submodule support redhat-lsb-submod-security.i686 : LSB Security submodule support redhat-lsb-submod-security.x86_64 : LSB Security submodule support redhat-lsb-supplemental.x86_64 : LSB supplemental dependencies required by LSB certification tests redhat-lsb-trialuse.i686 : LSB Trialuse module support redhat-lsb-trialuse.x86_64 : LSB Trialuse module support redhat-lsb.i686 : Implementation of Linux Standard Base specification redhat-lsb.x86_64 : Implementation of Linux Standard Base specification Name and summary matches only, use "search all" for everything.
2.然后 cat /proc/version也没用:
[email protected]:~$ cat /proc/version Linux version 4.1.5-x86_64-linode61 ([email protected]) (gcc version 4.7.2 (Debian 4.7.2-5) ) #7 SMP Mon Aug 24 13:46:31 EDT 2015
3.最后还是去参考:
HowTo: Find Out My Linux Distribution Name and Version
去试了试:
[email protected]:~$ cat /etc/*-release CentOS Linux release 7.1.1503 (Core) NAME="CentOS Linux" VERSION="7 (Core)" ID="centos" ID_LIKE="rhel fedora" VERSION_ID="7" PRETTY_NAME="CentOS Linux 7 (Core)" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:centos:centos:7" HOME_URL="https://www.centos.org/" BUG_REPORT_URL="https://bugs.centos.org/" CENTOS_MANTISBT_PROJECT="CentOS-7" CENTOS_MANTISBT_PROJECT_VERSION="7" REDHAT_SUPPORT_PRODUCT="centos" REDHAT_SUPPORT_PRODUCT_VERSION="7" CentOS Linux release 7.1.1503 (Core) CentOS Linux release 7.1.1503 (Core) [email protected]:~$
所以,新的结论是:
如果:
像此处的CentOS 7中没有lsb_release
并且cat /proc/version没有输出对应的系统的类型和版本
那么:
可以去用:
cat /etc/*-release
即可看到输出中的信息中有
CentOS Linux release 7.1.1503
可以看出是CentOS,版本是7.1.1503