Removed files: I don't longer have interest on topic.
.. -*- coding: utf-8; -*-
================
Detect OS info
================
.. contents::
:local:
uname
=====
::
$ uname -a
Linux poly.tech-recipes.com 2.6.5-1.358 #1 Sat May 8 09:04:50 EDT 2004 i686 i686 i386
GNU/Linux
kernel name: Linux
hostname: poly.tech-recipes.com
kernel release: 2.6.5-1.358
kernel version: #1 Sat May 8 09:04:50 EDT 2004
Linux version files
===================
See for file ``/etc/<distroname>-version`` or ``/etc/<distroname>-release``::
$ cat determine-os.sh
#!/bin/sh
[ -e /etc/SuSE-release ] && echo This is a SuSE system.
[ -e /etc/redhat-release ] && echo This is a redhat system.
[ -e /etc/fedora-release ] && echo This is a fedora system.
[ -e /etc/debian-version ] && echo This is a debian system.
[ -e /etc/slackware-version ] && echo This is a slackware system.
See also list:
Novell SuSE
``/etc/SuSE-release``
Red Hat
``/etc/redhat-release``, ``/etc/redhat_version``
Fedora
``/etc/fedora-release``
Slackware
``/etc/slackware-release``, ``/etc/slackware-version``
Debian
``/etc/debian_release``, ``/etc/debian_version``,
Mandrake
``/etc/mandrake-release``
Yellow dog
``/etc/yellowdog-release``
Sun JDS
``/etc/sun-release``
Solaris/Sparc
``/etc/release``
Gentoo
``/etc/gentoo-release``
Kernel version info
===================
Commonly, distributions will leave tags in the kernel version string to identify
themselves. This can be found in the log files like ``/var/log/syslog`` or
``/var/log/messages``::
$ cat /etc/issue
or::
$ cat /proc/version
Even if you run a custom kernel, you might still get hints from the gcc version
like this one line from ``/var/log/syslog``::
Feb 20 05:54:07 sarge kernel: nf3 (root@sarge) (gcc version 3.4.4 20050314 (prerelease)
(Debian 3.4.3-13sarge1)) #1 PREEMPT Thu Nov 16 20:31:43 CET 2006
'lsb_release' command
=====================
::
$ sudo apt-get install lsb-release
$ lsb_release -s -i
Debian
$ lsb_release -s -c
squeeze
$ lsb_release -s -r
6.0