J'ai vu ce post sur toutes les différentes façons de savoir quelle distribution est installée, donc j'essaie d'écrire un script qui les essaie tous. Les commandes possibles incluent:
$ cat /etc/lsb-release
$ cat /etc/issue
$ dmesg | head -1
$ cat /proc/version
$ cat /etc/slackware-version
$ cat/etc/debian-verion
J'ai essayé d'écrire quelque chose comme ça (je parle normalement espagnol, donc c'est en espagnol):
function Nombre_SO()
{
DistroName="Linux"
if [ $DistroName = Linux ] ;
then
# Debian
debian=`cat /etc/debian_version | cut -d " " -f01 | tr '[:upper:]' '[:lower:]'`
if [ "$debian" = "debian" || "squeeze/sid" || "lenny" ];
then
DistroName="debian"
else
echo "Esto no es debian"
fi
# Slackware
slackware=`cat /etc/slackware-version | cut -d " " -f01` | tr '[:upper:]' '[:lower:]'`
if [ "$slackware" = "slackware" || "slackware-x86_64" ];
then
DistroName="slackware"
else
echo "Esto no es Slackware"
}
Quelqu'un peut-il m'aider à intégrer toutes les autres façons d'obtenir le nom d'une distribution?
C'est un peu une méthode "brute-force" pour accomplir des choses, mais c'est rapide et devrait, en utilisant bash, fonctionner sur la plupart des distributions
la source
Si vous n'avez pas peur des dépendances supplémentaires, vous pouvez utiliser Facter pour cela. Il donne des informations sur le nom et la version de la distribution même sans lsb_release installé.
la source