Apa itu panik kernel?


52

Saya baru saja menyelesaikan kursus OS. Saya sering mendengar ungkapan " kernel panic " . Bisakah Anda jelaskan?

  1. Apa itu panik kernel?
  2. Mengapa ini terjadi?
  3. Bagaimana saya bisa mengetahui bahwa panik kernel terjadi?
  4. Apa efeknya pada sistem?
  5. Apakah itu hanya terjadi di Linux?
  6. Bagaimana saya bisa mencegahnya?

Panic kernel adalah bagian dari pesan kesalahan pada mac. jika dikatakan "panik kita tergantung di sini" (duga adalah bahwa itu mungkin bagian dari unix.)
Alvar

21
Jika Anda melakukan kursus OS, mengapa Anda tidak meminta dosen Anda untuk menjelaskan terminologi yang mereka gunakan? Anda akan mendapat lebih banyak dari studi Anda.
TRiG

Jawaban:


56

1 Pertanyaan pada satu waktu per FAQ

  1. Apa itu panik kernel?
    Ketika kernel tidak dapat memuat dengan benar atau "panik" dan gagal untuk boot dengan benar atau crash (lihat edit kredit di bagian bawah).

  2. Mengapa ini terjadi?
    Pembaruan tertutup, perangkat keras yang gagal, perangkat keras yang tidak didukung, drive atau partisi yang gagal atau hilang (lihat edit kredit di bagian bawah)

  3. Bagaimana saya bisa mengerti kepanikan kernel terjadi?
    Tonton permintaan boot (matikan parameter kernel sunyi) ATAU mesin Anda gagal melakukan booting

  4. Apa efeknya pada sistem?
    Gagal mem-boot atau kerusakan sistem

  5. Apakah itu hanya terjadi di Linux?
    Tidak, semua sistem operasi mirip-unix dapat memiliki panik kernel. Ini setara dengan Windows Blue Screen of Death

  6. Bagaimana saya bisa mencegahnya?
    Ini biasanya tidak terjadi. Uji pembaruan dan pecahkan masalah. Gunakan stabil bukan cabang pengembangan.

Catatan tambahan: Kernel panik dan kegagalan / shutdown sistem dapat secara langsung bertanggung jawab untuk melindungi komputer Anda dari kerusakan fisik. Contohnya termasuk berhenti sebelum terlalu panas atau kerusakan disk. Lihat edit kredit di bagian bawah untuk kutipan langsung.

suntingan

Per B. Roland Disk atau volume yang hilang atau rusak dapat menyebabkan hal ini juga.
(Poin bagus dan saya mengabaikannya)

Panic Kernel Per Kees juga dapat terjadi saat menjalankan.
Catatan: Dapat terjadi ketika suatu fungsi gagal dengan anggun di dalam kernel, tetapi paling sering terjadi selama pemuatan modul atau kernel (yang biasanya saat boot). Saya pikir saya menyentuhnya di "saat boot atau sistem crash", tetapi saya melihat bagaimana jawaban saya untuk (1) menyatakan itu hanya terjadi saat boot.

Per kutipan langsung rafalcieslak - 'Ada satu hal yang sangat penting yang harus ditambahkan: Poin utama dalam seluruh kernel panik adalah melindungi komputer Anda. Kernel membeku tidak hanya karena gagal melakukan sesuatu, tetapi juga untuk mencegah komputer Anda dari overheating, kerusakan hard drive, dan masalah perangkat keras lainnya, yang mungkin terjadi, jika beberapa perintah yang salah dijalankan, dari sebuah modul (untuk contoh modul yang bertanggung jawab untuk mengendalikan kipas) gagal memuat, dll. Inilah sebabnya mengapa kernel lebih memilih untuk membekukan, daripada untuk mengatasi masalah. '


3
Tambah ke q # 2: file boot yang hilang (mis. Ketika volume LVM hilang) ...
antivirtel

@B. Roland Ditambahkan dan dikreditkan
RobotHumans

bagus, terima kasih - saya menulisnya, karena pernah terjadi dengan saya ... (Saya tidak sengaja memformat volume dalam LVM ...)
antivirtel

8
Jawaban ini tidak benar. Panic kernel tidak terbatas hanya pada kegagalan boot. Jawaban JanC lebih tepat ("kernel mendeteksi kesalahan yang tidak bisa dipulihkan"). Ketidakmampuan untuk boot hanyalah salah satu dari banyak kondisi.
Kees Cook

2
Ada satu hal yang sangat penting yang harus ditambahkan: Poin utama di seluruh kernel panik adalah untuk melindungi komputer Anda. Kernel membeku tidak hanya karena gagal melakukan sesuatu, tetapi juga untuk mencegah komputer Anda dari overheating, kerusakan hard drive, dan masalah perangkat keras lainnya, yang mungkin terjadi, jika beberapa perintah yang salah dijalankan, dari sebuah modul (untuk misalnya modul yang bertanggung jawab untuk mengendalikan kipas) gagal memuat, dll. Inilah sebabnya mengapa kernel lebih memilih untuk membekukan, daripada untuk mengatasi masalah.
Rafał Cieślak

31

Sebuah kernel panik terjadi ketika kernel mendeteksi kesalahan dari yang tidak bisa sembuh. Sebuah fungsi yang dinamai panic()untuk menangani situasi ini (seringkali dengan membuang beberapa informasi debug dan / atau me-reboot sistem) pertama kali diperkenalkan di salah satu versi UNIX yang paling awal, jadi dari situlah nama tersebut berasal (dan masih disebut demikian di sebagian besar UNIX- seperti sistem operasi, termasuk Mac OS X).

Yang terkenal Blue Screen Of Death (secara resmi disebut kesalahan sistem Fatal , seperti dalam VMS / OpenVMS) di Microsoft NT kernel juga merupakan bentuk "kernel panik".

Kesalahan kernel linux dari mana kernel dapat (sebagian atau sementara) pulih disebut kernel oops (Anda mungkin melihat dmesgkadang-kadang di output).

Alasan kepanikan kernel dapat berupa bug di dalam kernel (misalnya pada driver yang merupakan bagian dari kernel) atau masalah perangkat keras atau perangkat lunak yang menyebabkan kondisi yang tidak terduga / tidak dapat diprediksi untuk kernel (misalnya ketika tidak mungkin untuk memulai initproces, atau terbunuh).

Untuk mengetahui apa yang menyebabkannya, Anda dapat melihat apakah ada yang dicetak pada layar atau ke konsol serial (jika Anda mengonfigurasinya). Jika sudah dikonfigurasikan untuk melakukannya, Anda juga dapat meminta sistem membuat kernel linux crash dump , yang menyimpan memori kernel ke disk jika panik, sehingga pengembang kernel dapat menganalisisnya (tentu saja, yang mengharuskannya untuk dapat menulis ke disk). Dalam beberapa kasus /var/log/messagesmungkin juga memiliki info yang berguna (misalnya dalam beberapa kasus pulih dari oops dapat menyebabkan kesalahan yang tidak dapat dipulihkan nanti). Ada beberapa info lebih rinci di sini .


1

Saya memiliki panik kernel pada sistem saya sekarang, Ubuntu 16.04. Komputer saya mengeluh boot disk penuh, jadi saya menjalankan 'apt autoremove'. Itu menghapus file yang saya pikir tidak perlu, dan hasilnya adalah panik kernel.

Jadi saya kira setiap tingkat pengeditan disk boot dapat menyebabkan kepanikan kernel. Jadi jangan main-main dengan itu jika Anda tidak memperhatikan apa yang Anda lakukan.


Ini tidak membantu menjawab pertanyaan OP. :(
Mike Williamson

1

@RobotHumans menjawab semua bagian pertanyaan Anda. Namun, saya ingin menguraikan penyebab Kernel Panic.

Pertama, ada 2 jenis Kernel Panic - Soft Kernel Panic (juga dikenal sebagai Ups) dan (Hard Kernel Panics, juga dikenal sebagai Aieee!).

Suatu sistem berjalan ke mode panik kernel keras ketika menemukan pengecualian yang tidak dapat ditangani. Panik kernel lunak relatif lebih mudah ditangani.

Penyebab Panik Kernel

Ada beberapa penyebab, tetapi yang paling umum tercantum di bawah ini:

  • RAM yang Rusak atau Tidak Kompatibel adalah penyebab paling umum dan sering dari Kernel Panic.
  • Ekstensi Kernel Usang, Tidak Kompatibel atau Terkorupsi
  • Driver Kernel Usang, Tidak Kompatibel atau Terkorupsi.
  • Korupsi hard disk atau masalah-masalah seperti bad sector atau korupsi direktori juga dapat menyebabkan panik kernel.
  • RAM atau ruang hard disk tidak mencukupi
  • Perangkat keras yang rusak, program yang ditulis dengan buruk atau kegagalan perangkat keras juga dapat menyebabkan Panic kernel.

Ini juga penting untuk dicatat bahwa hanya modul yang terletak di dalam ruang kernel yang dapat menyebabkan kepanikan kernel. lsmodperintah dapat dijalankan untuk mendapatkan daftar modul yang dimuat secara dinamis.

Untuk memecahkan masalah panik kernel, periksa / var / log / messages. Kadang-kadang semua informasi mungkin dicatat di sana sementara kadang-kadang tidak ada yang terkait dengan kernel panik mungkin dicatat di sana. Meskipun tidak dapat dihindari untuk mengalami panik kernel, tidak ada yang perlu dikhawatirkan.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.