Jawaban:
Saya khawatir, tidak ada cara standar untuk memeriksanya. Setiap distribusi tampaknya memiliki caranya sendiri untuk mengumumkan versinya. Anda dapat mencoba cat /etc/*release
:, dapat bekerja pada beberapa sistem. Juga, /etc/issue
dapat berisi informasi distribusi.
lsb_release -a
harus bekerja pada sebagian besar distribusi.
lsb_release -i -s
berfungsi di sebagian besar sistem yang saya miliki hanya untuk mendapatkan ID vendor. Sayangnya lsb_release bukan bagian dari instalasi dasar pada sistem saya yang lebih kecil / tertanam, sehingga harus diuji terlebih dahulu.
lsb-release
paket, yang memang tidak default. Ketidakhadiran adalah indikator Debian yang kuat. :-)
lsb_release
tidak ada pada beberapa turunan RHEL6 baru, seperti Scientific Linux 6.1 atau Fedora Linux 16.
uname -o
Biner uname ditemukan di hampir setiap sistem linux dan flag -o melakukan yang terbaik untuk mengembalikan sistem operasi Anda. lsb_release juga berfungsi tetapi tidak cukup di mana-mana.
uname -o
, maka jika itu kembali hanya sebagai GNU / Linux, jalankan lsb_release -i -s
tampaknya bekerja di semua sistem saya.
Jika Anda menggunakan -a
bendera aktif uname
, itu seharusnya berfungsi sebagian besar waktu. Sebagai contoh, pada mesin Ubuntu saya saat ini uname -a
mencetak:
Linux clark-laptop 2.6.35-25-generic #43-Ubuntu SMP Thu Jan 6 22:25:21 UTC 2011 x86_64 GNU/Linux
cat /etc/*release
dan/etc/issue
memberi saya tepat info yang saya butuhkan.