GNU/Linux
Rilevamento del nome e della versione della distribuzione di Linux
Ricerca…
Sintassi
uname - per stampare informazioni sul tuo sistema operativo.
uname [OPTION]
Rileva la distribuzione basata su Debian in cui stai lavorando
Basta eseguire lsb_release -a
.
Su Debian:
$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux testing (stretch)
Release: testing
Codename: stretch
Su Ubuntu:
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.4 LTS
Release: 14.04
Codename: trusty
Nel caso in cui tu non abbia installato lsb_release
potresti voler provare a indovinare, per esempio, c'è un file /etc/issue
che spesso contiene il nome della distribuzione. Ad esempio, su ubuntu:
$ cat /etc/issue
Ubuntu 12.04.5 LTS \n \l
Non utilizzare il file /etc/debian_version
perché il suo contenuto non corrisponde al nome della distribuzione!
Si noti che questo funzionerà anche su distribuzioni di famiglie non Debian come Fedora, RHEL o openSUSE - ma che lsb_release
potrebbe non essere installato.
Rileva la distribuzione RHEL / CentOS / Fedora in cui stai lavorando
Guarda il contenuto di /etc/redhat-release
cat /etc/redhat-release
Ecco l'output di una macchina Fedora 24: Fedora release 24 (Twenty Four)
Come menzionato nella risposta basata su Debian, puoi anche usare il comando lsb_release -a
, che emette questo da una macchina Fedora 24:
LSB Version: :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch
Distributor ID: Fedora
Description: Fedora release 24 (Twenty Four)
Release: 24
Codename: TwentyFour
Rileva la distribuzione basata su systemd che stai utilizzando
Questo metodo funziona sulle versioni moderne di Arch, CentOS, CoreOS, Debian, Fedora, Mageia, openSUSE, Red Hat Enterprise Linux, SUSE Linux Enterprise Server, Ubuntu e altri. Questa ampia applicabilità lo rende ideale come primo approccio, con ripiego di altri metodi se è necessario identificare anche i sistemi più vecchi.
Guarda /etc/os-release
. In particolare, guarda le variabili NAME
, VERSION
, ID
, VERSION_ID
e PRETTY_NAME
.
Su Fedora, questo file potrebbe avere il seguente aspetto:
NAME=Fedora
VERSION="24 (Workstation Edition)"
ID=fedora
VERSION_ID=24
PRETTY_NAME="Fedora 24 (Workstation Edition)"
ANSI_COLOR="0;34"
CPE_NAME="cpe:/o:fedoraproject:fedora:24"
HOME_URL="https://fedoraproject.org/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Fedora"
REDHAT_BUGZILLA_PRODUCT_VERSION=24
REDHAT_SUPPORT_PRODUCT="Fedora"
REDHAT_SUPPORT_PRODUCT_VERSION=24
PRIVACY_POLICY_URL=https://fedoraproject.org/wiki/Legal:PrivacyPolicy
VARIANT="Workstation Edition"
VARIANT_ID=workstation
Su CentOS, questo file potrebbe assomigliare a questo:
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
Questo file è documentato sul sito web freedesktop ; in linea di principio, non è specifico per il sistema, ma esisterà su tutte le distribuzioni basate su systemd.
Dalla shell bash, si può trovare il /etc/os-release
e quindi usare direttamente le varie variabili, come questa:
$ ( source /etc/os-release && echo "$PRETTY_NAME" )
Fedora 24 (Workstation Edition)
Uname: stampa informazioni sul sistema attuale
Uname è il nome breve per il nome u nix. Basta digitare uname
in console per ottenere informazioni sul tuo sistema operativo.
uname [OPTION]
Se non viene specificata OPTION , uname
assume l'opzione -s
.
-a
o --all
- Stampa tutte le informazioni, omettendo -p
e -i
se l'informazione è sconosciuta.
Esempio:
> uname -a
SunOS hope 5.7 Generic_106541-08 sun4m sparc SUNW,SPARCstation-10
Tutte le opzioni:
-s , --kernel-name | Stampa il nome del kernel. |
-n , --nomename | Stampa il nome host del nodo di rete. |
-r , --kernel-release | Stampa la versione del kernel. |
-v , --kernel-version | Stampa la versione del kernel. |
-m, --machine | Stampa il nome dell'hardware della macchina. |
-p , --processore | Stampa il tipo di processore o " sconosciuto ". |
-i , --hardware-platform | Stampa la piattaforma hardware, o " sconosciuto ". |
-o , --operating-system | Stampa il sistema operativo. |
--Aiuto | Mostra un messaggio di aiuto ed esce. |
--versione | Visualizza le informazioni sulla versione e esci. |
Rileva le informazioni di base sulla tua distribuzione
basta eseguire uname -a
.
Sull'arco:
$ uname -a
Linux nokia 4.6.4-1-ARCH #1 SMP PREEMPT Mon Jul 11 19:12:32 CEST 2016 x86_64 GNU/Linuxenter code here
trova il tuo nome di linux os (sia debian che rpm) e il numero di rilascio
La maggior parte delle distribuzioni Linux memorizza le informazioni sulla sua versione nel file / etc / lsb-release (debian) o / etc / redhat-release (RPM based). L'utilizzo di un comando generico sotto dovrebbe farti passare la maggior parte delle derivate Debian e RPM come Linux Mint e Cent-Os.
Esempio su macchina Ubuntu:
rilascio cat / etc / *
DISTRIB_ID = Ubuntu DISTRIB_RELEASE = 14.04 DISTRIB_CODENAME = trusty DISTRIB_DESCRIPTION = "Ubuntu 14.04 LTS"
usando GNU coreutils
Quindi i coreutils GNU dovrebbero essere disponibili su tutti i sistemi basati su Linux (correggimi se ho torto qui).
Se non sai quale sistema stai usando potresti non essere in grado di saltare direttamente a uno degli esempi sopra, quindi questo potrebbe essere il tuo primo punto di riferimento.
`$ uname -a
Sul mio sistema questo mi dà il seguente ...
`Linux Scibearspace 3.16.0-4-amd64 # 1 SMP Debian 3.16.7-ckt25-2 + deb8u3 (2016-07-02) x86_64 GNU / Linux
Qui puoi vedere quanto segue:
Scibearspace: il nome del mio pc
- Scibearspace: il nome del mio pc
- 3.16.0-4-amd64: il kernel e l'architettura
- SMP Debian 3.16.7-CKT25-2 + deb8u3: mi dice che sto eseguendo debian con il kernel 3.16
- Finalmente l'ultima parte che sto eseguendo debian 8 (aggiornamento 3).
Vorrei dare il benvenuto a tutti gli altri per aggiungere risultati ai sistemi RHEL e SuSe.