Une question très proche de celle-ci a été postée sur Unix.Stackexchange ICIGiles
a un joli complet | réponse cool pour les manières qu'il décrit.
# cat /proc/version
Linux version 2.6.32-71.el6.x86_64 ([email protected]) (gcc version 4.4.4 20100726 (Red Hat 4.4.4-13) (GCC) ) #1 SMP Fri May 20 03:51:51 BST 2011
# uname -a Linux system1.doofus.local 2.6.32-71.el6.x86_64 #1 SMP Fri May 20 03:51:51 BST 2011 x86_64 x86_64 x86_64 GNU/Linux
# cat /etc/issue
CentOS Linux release 6.0 (Final)
Kernel \r on an \m
cat /proc/config.gz
cat /usr/src/linux/config.gz
cat /boot/config*
Bien que j'aie fait quelques vérifications et que ce n'était pas très fiable, sauf sur SUSE.
# zcat /proc/config.gz | grep -i kernel CONFIG_SUSE_KERNEL=y # CONFIG_KERNEL_DESKTOP is not set CONFIG_LOCK_KERNEL=y
Libérer les fichiers en /etc
(depuis Unix.com)
- Novell SuSE ---> /etc/SuSE-release
- Red Hat--->/etc/redhat-release, /etc/redhat_version
- Fedora-->/etc/fedora-release
- Slackware--->/etc/slackware-release, /etc/slackware-version
- Ancienne Debian --->/etc/debian_release, /etc/debian_version
- Nouvelle Debian --->/etc/os-release
- Mandrake--->/etc/mandrake-release
- Chien jaune-->/etc/yellowdog-release
- Sun JDS--->/etc/sun-release
- Solaris/Sparc--->/etc/release
- Gentoo--->/etc/gentoo-release
Il existe également un script bash sur le lien Unix.com que quelqu'un a écrit pour automatiser la vérification.
Déterminer quel gestionnaire de paquets vous avez est un bon indice.
rpm
yum
apt-get
zypper
+ bien d'autres
Bien que ce ne soit en aucun cas infaillible, le vendeur peut utiliser tout ce qu'il veut. Cela vous donne vraiment un point de départ.
# dmesg | less Linux version 2.6.32.12-0.7-default ([email protected]) (gcc version 4.3.4 [gcc-4_3-branch revision 152973] (SUSE Linux) ) #1 SMP 2010-05-20 11:14:20 +0200
à peu près les mêmes informations que cat /proc/version
&uname
Vous voudrez utiliser :
$ cat /etc/*-release
Vous obtiendrez une réponse semblable à celle-ci :
$ cat /etc/*-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=11.10
DISTRIB_CODENAME=oneiric
DISTRIB_DESCRIPTION="Ubuntu 11.10"
Comme première estimation, essayez lsb_release -a
. Par exemple. sur un système Arch Linux, cela donne
Version LSB :s/o
ID distributeur :archlinux
Descriptif :Arch Linux
Libération :roulement
Nom de code :n/a
Cependant, cela peut échouer, alors vous devrez fouiller /etc
(il se trouve très probablement dans un fichier dont le nom se termine par -release
). Aussi cat /etc/issue
pourrait aider.