Se publicó una pregunta muy parecida a esta en Unix.Stackexchange AQUÍGiles
tiene una bastante completa | respuesta genial para las formas que describe.
# 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*
Aunque hice algunas comprobaciones y esto no era muy fiable excepto en SUSE.
# zcat /proc/config.gz | grep -i kernel CONFIG_SUSE_KERNEL=y # CONFIG_KERNEL_DESKTOP is not set CONFIG_LOCK_KERNEL=y
Liberar archivos en /etc
(de 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
- Debian antiguo--->/etc/debian_release, /etc/debian_version
- Nuevo Debian--->/etc/os-release
- Mandrake--->/etc/mandrake-release
- Perro amarillo-->/etc/yellowdog-release
- Sun JDS--->/etc/sun-release
- Solaris/Sparc--->/etc/release
- Gentoo--->/etc/gentoo-release
También hay un script bash en el enlace de Unix.com que alguien escribió para automatizar la verificación.
Averiguar qué administrador de paquetes tiene es una buena pista.
rpm
yum
apt-get
zypper
+muchos más
Aunque esto no es infalible, ya que el vendedor podría usar lo que quiera. Realmente te da un punto de partida.
# 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
más o menos la misma información que cat /proc/version
&uname
Querrás usar:
$ cat /etc/*-release
Obtendrá una respuesta similar a esta:
$ cat /etc/*-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=11.10
DISTRIB_CODENAME=oneiric
DISTRIB_DESCRIPTION="Ubuntu 11.10"
Como primera suposición, prueba lsb_release -a
. P.ej. en un sistema Arch Linux da
Versión LSB:n/a
ID de distribuidor:archlinux
Descripción:Arch Linux
Lanzamiento:rodando
Nombre en clave:n/a
Sin embargo, esto podría fallar, entonces tendrás que buscar /etc
(lo más probable es que esté dentro de un archivo cuyo nombre termina con -release
). También cat /etc/issue
podría ayudar.