Newsgroup: it.comp.os.linux.sys
Titolo: script bash per identificare distro e versione

Se non sbaglio avevo letto di uno script (bash o che so io) per 
identificare la distribuzione e relativa versione su cui viene fatto 
girare. Mi servirebbe per l'installer di un software che deve linkare 
librerie diverse in funzione della distribuzione.
Vorrei evitare di reinventare la ruota se esiste qualcosa di già fatto e 
collaudato. Qualcuno lo conosce?

Cristian "sengo" Mammoli wrote:

Probabilmente la soluzione più affidabile è utilizzare lsb_release che 
fa parte del pacchetto lsb.
# lsb_release -i
Distributor ID: SUSE LINUX
Il problema è che potrebbe non essere installato...
Per un controllo incrociato, potresti guardare anche in /etc; molte 
(tutte ?!?) hanno un file tipo $DISTRO-release
# cat /etc/SuSE-release
openSUSE 11.1 (i586)
VERSION = 11.1
Ciao.
 
-- 
*** Linux user # 198661 ---_ ICQ 33500725 ***
    ***  Home  
http://www.kailed.net
  ***
        ***  Powered by openSUSE  ***

 (tutte ?!?) hanno un file tipo $DISTRO-release
Oltre a questo si possono verificare anche i file /etc/issue e /etc/motd.
-- 
Flavio Visentin
Scientists have finally discovered what's wrong with the female brain:
On the left side, there is nothing right, and on the right side, there
is nothing left.

> # cat /etc/SuSE-release
la slackware ha (almeno la 12.2 da cui scrivo):
/etc/slackware-version

 
etc/issue e' un file definito anche nel Filesystem Hierarchy Standard
The following files, or symbolic link to files, must be in /etch if the 
corresponding subsystem is installed
[...]
issue - pre login message and identification file (optional)
[...]
quindi e' probabile che ci sia in tutte le distribuzioni serie.

 /etc/slackware-version
Le Redhat/Fedora hanno /etc/redhat-release


Io farei un bel cat /proc/version .
-- 
Massimo Bacilieri AKA Crononauta

 
Linux version 2.6.25.1 (root@robyt) (gcc version 4.2.4) #3 SMP PREEMPT Mon 
Nov 10 18:09:46 CET 2008
la distro da dove la vedi?
-- 
Roberto Tagliaferri-Linux user #30785 <-> r.tagliaferri@(forse)
tosnet.it
Horngren's Observation:
	Among economists, the real world is often a special case.

 la distro da dove la vedi?
Curioso, la mia risponde con:
Linux version 2.6.8-2-386 (
ho...@tabatha.lab.ultramonkey.org
) (gcc
version 3.3.5 (Debian 1:3.3.5-12)) #1 Thu May 19 17:40:50 JST 2005




È la versione di GCC. Controlla le parentesi ;)
Roberto ha gcc versione "4.2.4", tu hai gcc versione "3.3.5 (Debian
1:3.3.5-12)" :)
Ciao,
David
-- 
 . ''`.  Debian maintainer | 
http://wiki.debian.org/DavidPaleino
 : :'  : Linuxer #334216 --|-- 
http://www.hanskalabs.net/
 `. `'`  GPG: 1392B174 ----|---- 
http://snipr.com/qa_page
   `-   2BAB C625 4E66 E7B8 450A C3E1 E6AA 9017 1392 B174

 È la versione di GCC. Controlla le parentesi ;)
Mannaggia zoppa, ho beccato come un pollo! :-/


 file tipo $DISTRO-release
In Mandriva esiste un link logico di /etc/release in 
/etc/mandriva-release. Non so se sia lo stesso per altre distribuzioni
# cat /etc/release
Mandriva Linux release 2008.1 (Official) for i586
Ciao, Mauro

 ha scritto:

Uhm... no, le Fedora che ho sottomano in questo momento non hanno 
/etc/release.
Idem per le vecchie RedHat (non so per le Enterprise ma ne dubito).
Solo /etc/redhat-release

On 15 feb, 15:36, "Cristian \"sengo\" Mammoli"

Guarda che nel mondo dello sviluppo web questo equivale a controllare
la versione del browser (sensibile a cambiamenti anche dovuti
all'utente) invece di controllare che ci sia effettivamente l'oggetto
o il metodo che vuoi. Non dico di essere nel giusto, ma non sarebbe
più semplice controllare che ci sia una libreria che vuoi, e se la
trovi, assumi 'ok, allora posso usare questo...' oppure se non la
trovi, cercare un'altra, e così via?
--
Saludos
Adriano