Saya mencoba menemukan cara untuk menentukan nama dan versi distribusi Linux yang akan berfungsi pada sebagian besar (atau idealnya, semua) distribusi modern. aku tahu itu/etc/os-release
berisi info yang saya butuhkan pada distribusi yang saya coba (CentOS, Debian), tetapi seberapa amankah itu untuk bergantung pada keberadaannya? Perintah seperti uname -a
tidak benar-benar berisi info yang sama, dan lsb_release
tampaknya tidak ada pada mis CentOS minimal.
Apakah ada cara cepat untuk mencari tahu persis apa distro yang datang /etc/os-release
? Selain itu, /etc/os-release
dijamin berisi NAME
, VERSION
dan PRETTY_NAME
bidang?
linux
distributions
w128
sumber
sumber
Jawaban:
Setiap sistem yang menjalankan systemd harus memiliki
/etc/os-release
, yang ditentukan sebagai bagian dari systemd. Beberapa sistem tanpa systemd mungkin juga memilikinya ( misalnya Debian 8 di mana systemd adalah opsional tetapi/etc/os-release
diinstal dalam semua kasus).Menurut spesifikasi, semua bidang adalah opsional, dan beberapa memiliki standar ("Linux" untuk
NAME
danPRETTY_NAME
).Anda akan menemukan lebih banyak latar belakang dalam
/etc/os-release
pengumuman .sumber