Saya mencoba membuat OS mendeteksi fungsi portabel dalam skrip bash,
Jadi saya hanya ingin tahu, file "/etc/issue"
itu umum untuk semua Linux Flavours?
login
etc
portability
Rahul Patil
sumber
sumber
/etc/*-release
file dengan beberapa info.uname
mungkin menawarkan beberapa informasi juga, tidak yakin seberapa akurat sidik jari itu. Jangan lupa bahwa siapa pun dapat memodifikasi hampir semua hal dalam instalasi Linux untuk mengaburkan info yang Anda inginkan, itu hanya akan menemukan hal-hal pada instalasi yang tidak dimodifikasi.yum
atauapt-get
kemudian akan menginstal paket berdasarkan ini.Jawaban:
Ya ini adalah file standar di seluruh distribusi. Ini standar pada kebanyakan distro, Fedora / CentOS / RHEL / Debian / Ubuntu dll.
Anda dapat membaca lebih lanjut tentang itu dengan
man issue
file yang terkait/etc/issue.net
. Anda dapat melihat halaman manual issue.net untuk lebih jelasnya dan bagaimana memasukkan makro ke dalam kedua file di sana.Anda juga dapat membaca lebih lanjut tentang itu di proyek Linux From Scratch , Menyesuaikan Logon Anda dengan / etc / issue .
sumber
Selain jawaban slm, perlu diingat bahwa siapa pun (dengan akses root) dapat mengedit konten
/etc/issue
. Beberapa organisasi dapat melakukannya untuk menghadirkan peringatan atau penolakan pra-login, dan yang lain mungkin menghapus semua identifikasi distribusi untuk alasan keamanan (tidak masalah seberapa efektif salah satu dari tindakan ini).Oleh karena itu, sementara / etc / issue mungkin ada hampir sepanjang waktu, konten belum tentu cocok untuk mendeteksi OS (seperti yang Anda katakan, atau lebih mungkin, distribusi Linux).
sumber
@ Jawaban EightBitTony benar. Juga tidak ada secara default pada fedora 23.
Jangan tidak mengandalkan untuk mengidentifikasi sistem acak. Saya akan menggunakan
/etc/system-release
atau/etc/os-release
tetapi tidak yakin seberapa universal itu.Membaca sedikit
/etc/os-release
disertai dengansystemd
jadi saya kira tidak akan bekerja dengan distro kuno (atau yang membencisystemd
). Tidak dapat menemukan info otoritatif tentang/etc/system-release
. Saya kira kita harus memeriksa banyak file jika kompatibilitas penting. Atau gunakan/etc/os-release
jika case edge tidak penting.sumber