Suatu kali, saya menginstal beberapa patch kernel & ada yang salah pada server live di mana kami memiliki ratusan klien. Hanya satu kernel yang ada di sistem. Jadi, server sedang down untuk beberapa waktu, dan menggunakan live CD, kami mengaktifkan sistem & menjalankan & melakukan pekerjaan perbaikan lebih lanjut.
Sekarang pertanyaan saya: Apakah ide yang baik untuk memiliki 2 versi kernel, sehingga jika kernel rusak kita selalu dapat reboot dengan kernel lain yang tersedia? Tolong beritahu saya.
Juga, mungkinkah memiliki 2 versi dari kernel yang sama? Sehingga saya bisa memilih kernel lain ketika ada kernel yang rusak?
Edited:
My Server Details:
2.6.32-431.el6.x86_64
CentOS release 6.5 (Final)
Bagaimana saya dapat memiliki salinan yang sama dari kernel ini, sehingga ketika kernel saya rusak, saya dapat memulai kernel cadangan?
Jawaban:
Distribusi RedHat dan berbasis Debian menyimpan beberapa versi Kernel ketika Anda menginstal yang baru menggunakan
yum
atauapt-get
secara default. Itu dianggap praktik yang baik dan dilakukan persis untuk kasus yang Anda jelaskan: jika ada yang salah dengan kernel terbaru Anda selalu dapat reboot dan di GRUB memilih untuk boot menggunakan salah satu kernel sebelumnya.Dalam distro RedHat Anda mengontrol jumlah kernel untuk tetap
/etc/yum.conf
denganinstallonly_limit
pengaturan. Pada CentOS 7 baru saya, instal secara default ke 5.Juga jika pada RedHat Anda menginstal kernel baru dari paket RPM yang harus Anda gunakan
rpm -ivh
, tidakrpm -Uvh
: yang pertama akan membuat kernel yang lebih lama tetap di tempatnya sementara yang kemudian akan menggantinya.Debian menyimpan kernel lama tetapi tidak secara otomatis menghapusnya. Jika Anda perlu membebaskan partisi boot Anda, Anda harus menghapus kernel lama secara manual (jangan lupa untuk meninggalkan setidaknya satu dari kernel sebelumnya). Untuk mendaftar semua paket kernel-install dan kernel-header gunakan
dpkg -l | egrep "linux-(im|he)"
.Menjawab pertanyaan Anda - Juga, Apakah mungkin untuk memiliki 2 versi dari kernel yang sama? - Ya itu mungkin. Saya tidak dapat memeriksanya di CentOS 6.5 sekarang, tetapi pada CentOS 7 saya dapat menghasilkan hasil yang diinginkan hanya dengan menduplikasi file
/boot
direktori terkait kernel dan membangun kembali menu grub:sumber
Ya, itu mungkin dan saya akan mengatakan bahkan disarankan. Anda hanya perlu mengatur proses boot untuk menawarkan alternatif kepada Anda. Biasanya ini dilakukan dalam konfigurasi boot loader - biasanya Anda bisa menduplikasi entri yang ada dan mengubah nama file kernel image dan label entri menu boot.
Pada server produksi, ini biasanya bukan masalah, tetapi setiap kali Anda memutakhirkan kernel, ada baiknya memiliki hadiah cadangan. Beberapa distribusi Linux menawarkan rollback (biasanya didukung oleh kemampuan snapshotting sistem file) pada pembaruan paket untuk membuat proses semudah mungkin, tetapi bahkan dalam kasus-kasus itu saya akan cenderung membuat cadangan siap.
Adapun memiliki beberapa salinan dari kernel yang sama - bahkan itu masuk akal, tetapi seperti @goldilocks tunjukkan dalam komentar di bawah, jika kernel Anda rusak Anda harus berpikir tentang mengganti perangkat keras. Di sisi lain, meletakkan duplikat pada HDD fisik yang berbeda mungkin menghemat beberapa masalah. Namun perlu diingat, bahwa file gambar kernel hanya pernah digunakan saat boot.
sumber
bash
biner rusak,libc
rusak, dll. Semua yang akan membuat sistem tidak berguna. File-file ini seharusnya tidak menjadi "rusak". Jika ya, ganti perangkat keras Anda.