Come sapere quale distribuzione Linux sto usando?


53

Come sapere quale distribuzione Linux sto usando?

uname -a

Linux xxxxxx.net 2.6.9-42.0.3.EL.wh1smp #1 SMP Fri Aug 14 15:48:17 MDT 2009 i686 i686 i386 GNU/Linux

Come faccio a sapere che si tratta di Ubuntu / Debian / Fedora o Redhat?

Lo utilizzo /etc/init.d/serviced restartper riavviare serevices, sembra che non sia la famiglia Redhat

[itf][~]$ cat /etc/issue
cat: /etc/issue: No such file or directory
[itf][~]$ cat /etc/issue.net
cat: /etc/issue.net: No such file or directory
[itf][~]$ lsb_release -a
-sh: lsb_release: command not found
[itf][~]$ cat /etc/*-release
cat: /etc/*-release: No such file or directory
[itf][~]$ cat /etc/*-version
cat: /etc/*-version: No such file or directory
[itf][~]$ cat /etc/*release
cat: /etc/*release: No such file or directory
[itf][~]$ cat /etc/*_release
cat: /etc/*_release: No such file or directory
[itf][~]$ cat /etc/*version
cat: /etc/*version: No such file or directory
[itf][~]$

Se desideri che determinate informazioni personali / riservate vengano rimosse, penso che puoi contrassegnare la tua domanda per l'attenzione del moderatore. Perché possiamo ancora leggerlo ora ...
Tamara Wijsman

@Tom Wijsman vuole solo non mostrare quel testo nella pagina delle domande, so che ci sarà nella storia :-)
Mithun Sreedharan

Risposte:


31
  • In Debian: /etc/debian_version

  • In Ubuntu: lsb_release -a or /etc/debian_version

  • In Redhat: cat /etc/redhat-release

  • In Fedora: cat /etc/fedora-release


2
Li ha provati tutti, vedere il suo codice sorgente.
guerda,

2
+1, "lsb_release -a" ha funzionato per me su Red Hat.
Aaron,

3
lsb_release -aha lavorato anche in Debian (spremere).
acme

1
lsb_release -afunziona anche in Gentoo
Sergei

lsb_release -afunziona anche in Ubuntu e Mint.
wranvaud,


15

Potresti provare questo articolo di Novell .

Se sei il proprietario del sistema, allora sai quale Linux è installato e in esecuzione. Questo articolo ti aiuterà a capire come determinare quale distribuzione Linux è installata. Puoi incorporarlo nella tua applicazione per rilevare la distribuzione Linux.


Ho già provato $ cat / etc / * release cat: / etc / * release: nessun file o directory simile L'esecuzione dello script mensionato dà un risultato simile a uname -a comando Linux 2.6.9-42.0.3.EL.wh1smp (2.6 .9-42.0.3.EL.wh1smp i686) $ uname -a Linux qsquare.net 2.6.9-42.0.3.EL.wh1smp # 1 SMP ven 14 ago 15: 15:48:17 MDT 2009 i686 i686 i386 GNU / Linux
Mithun Sreedharan,

6
cat /etc/*releasesembra funzionare per alcune delle distro tradizionali. Ho verificato con Ubuntu, Mint, Red Hat e Gentoo.
nobar

Debian non lo riconosce
Milad Naseri il

La soluzione Novell funziona, finalmente sul mio RedHat 5.3. L'ho integrato nella mia lib shell gratuita: github.com/Offirmo/offirmo-shell-lib
Offirmo

@nobar: funziona anche con le distribuzioni SUSE: /etc/SuSE-release pastebin.com/dL5gVLQe
bwDraco

3

Prova uno di questi:

ls -ld /etc/\*release\*  /etc/\*version\*

gcc --version

1
Posso chiederti perché ti stai rifiutando di utilizzare il markup per il codice? Indenta il rientro del codice di quattro spazi, il che semplifica molto la lettura e la distinzione. Grazie.
slhck

3

Tutti sistemi conformi avranno /etc/os-releaseche dovrebbe dare informazioni relative alla distribuzione ecc

NAME=Fedora
VERSION="17 (Beefy Miracle)"
ID=fedora
VERSION_ID=17
PRETTY_NAME="Fedora 17 (Beefy Miracle)"
ANSI_COLOR="0;34"
CPE_NAME="cpe:/o:fedoraproject:fedora:17"
HOME_URL="https://fedoraproject.org/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"


1

Hmm, forse è un'altra distro: il suffisso .EL sembra essere usato da centos, ma è un dervativo redhat. Mi chiedo anche qual è il tuo sistema di gestione dei pacchetti? Potrebbe essere utile verificare i repository utilizzati, poiché questi sono generalmente forniti dal fornitore e specifici per la distribuzione




0

In base alla versione del kernel direi che è WBEL 4 . È noto che sono in ritardo con i loro aggiornamenti, quindi probabilmente sarebbe meglio migrare su CentOS a proprio piacimento.


0

Mettendo il risultato in un var e in minuscolo

OS=`awk -F= '/DISTRIB_ID/ {print tolower($2)}' /etc/lsb-release`

0

Un aggiornamento qui, ora è possibile utilizzarlo lsb_release -ds, quindi puoi usarlo come linuxDistro=$(lsb_release -ds)senza ulteriori analisi.


0

I programmi di utilità neofetched screenfetchentrambi visualizzano il nome e la versione della tua distribuzione - e includono alcune belle opere d'arte ASCII. Tuttavia, potrebbero non essere installati per impostazione predefinita.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.