Bagaimana cara mengetahui Distribusi Linux yang saya gunakan?

53

Bagaimana cara mengetahui Distribusi Linux yang saya gunakan?

uname -a memberi

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

Bagaimana saya tahu ini Ubuntu / Debian / Fedora atau Redhat?

Saya menggunakan /etc/init.d/serviced restartuntuk memulai kembali serevices, sepertinya itu bukan keluarga 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][~]$
Mithun Sreedharan
sumber
Jika Anda ingin informasi pribadi / rahasia tertentu dihapus, saya pikir Anda dapat menandai pertanyaan Anda untuk mendapatkan perhatian moderator. Karena kita masih bisa membacanya sekarang ...
Tamara Wijsman
@ Tom Wijsman hanya ingin tidak menampilkan teks itu di halaman pertanyaan, saya tahu itu akan ada dalam sejarah :-)
Mithun Sreedharan

Jawaban:

31
  • Dalam Debian: /etc/debian_version

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

  • Di Redhat: cat /etc/redhat-release

  • Di Fedora: cat /etc/fedora-release

Ulat
sumber
2
Dia mencoba semuanya, melihat kode sumbernya.
guerda
2
+1, "lsb_release -a" bekerja untuk saya di Red Hat.
Aaron
3
lsb_release -abekerja di Debian (memeras), juga.
acme
1
lsb_release -ajuga bekerja di Gentoo
Sergei
lsb_release -aberfungsi juga di Ubuntu dan Mint.
wranvaud
19

Tetap sederhana!

cat /etc/*release
Travis van der Font
sumber
15

Anda dapat mencoba artikel ini dari Novell .

Jika Anda adalah pemilik sistem, maka Anda tahu Linux mana yang diinstal dan dijalankan. Artikel ini akan membantu Anda memahami cara menentukan distribusi Linux mana yang diinstal. Anda dapat memasukkan ini ke dalam aplikasi Anda untuk mendeteksi distro Linux.

Marcin Gil
sumber
Saya sudah mencoba $ cat / etc / * release cat: / etc / * release: Tidak ada file atau direktori tersebut Menjalankan skrip yang ditampilkan memberikan hasil yang simalr ke uname -a perintah 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 Fri 14 Agt 15 15:48:17 MDT 2009 i686 i686 i386 GNU / Linux
Mithun Sreedharan
6
cat /etc/*releasetampaknya bekerja untuk beberapa distro utama. Saya memverifikasi dengan Ubuntu, Mint, Red Hat, dan Gentoo.
Nobar
Debian tidak mengenali ini
Milad Naseri
Solusi Novell bekerja, akhirnya pada RedHat 5.3 saya. Saya sudah mengintegrasikannya di lib shell gratis saya: github.com/Offirmo/offirmo-shell-lib
Offirmo
@nobar: Ini juga berfungsi dengan distribusi SUSE: /etc/SuSE-release pastebin.com/dL5gVLQe
bwDraco
3

Coba salah satu dari ini:

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

gcc --version
Zab
sumber
1
Bisakah saya bertanya mengapa Anda menolak menggunakan markup untuk kode? Silakan indentasi kode dengan empat spasi, yang membuatnya lebih mudah dibaca dan dibedakan. Terima kasih.
slhck
2

Semua sistem yang sesuai dengan akan memiliki /etc/os-releaseyang seharusnya memberi Anda informasi terkait dengan distribusi, dll

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/"
Yogesh
sumber
1

Hmm, mungkin distro lain - akhiran .EL tampaknya digunakan oleh centos, tapi itu redhat dervative. Saya juga bertanya-tanya apa sistem manajemen paket Anda? Mungkin membantu untuk memeriksa repo yang Anda gunakan - karena ini biasanya disediakan oleh vendor, dan khusus untuk distro

Journeyman Geek
sumber
0

Berdasarkan versi kernel saya akan mengatakan itu WBEL 4 . Mereka dikenal sedikit ketinggalan dengan pembaruan mereka, jadi mungkin yang terbaik adalah bermigrasi ke CentOS sesuka Anda.

Ignacio Vazquez-Abrams
sumber
0

Hanya memasukkan hasilnya ke var dan dalam huruf kecil

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

Pembaruan di sini, sekarang memungkinkan untuk digunakan lsb_release -ds, sehingga Anda dapat menggunakannya seperti linuxDistro=$(lsb_release -ds)tanpa penguraian tambahan.

3manuek
sumber