Ada modul kernel yang rusak, karena itu saya bahkan tidak bisa memuat OS, jadi saya tidak bisa menghapus atau memperbaikinya. Apakah mungkin untuk melewatkan modul ini saat boot, menggunakan parameter kernel atau sesuatu?
Ada modul kernel yang rusak, karena itu saya bahkan tidak bisa memuat OS, jadi saya tidak bisa menghapus atau memperbaikinya. Apakah mungkin untuk melewatkan modul ini saat boot, menggunakan parameter kernel atau sesuatu?
Jawaban:
Membuat daftar hitam modul seperti yang disebutkan dalam jawaban sebelumnya adalah cara terbaik untuk sepenuhnya menghindari modul kernel. Selain dari daftar hitam, tidak ada cara umum untuk menonaktifkan modul.
Beberapa distribusi Linux menyediakan parameter boot kernel untuk melakukan hal-hal seperti ini.
load_modules=off
memaksa udev untuk melewati pemuatan otomatis. Ini akan memungkinkan Anda untuk boot tanpa memuat modul, daftar hitam modul yang menyebabkan masalah, dan reboot normal tanpa memuat modul yang bermasalah.Untuk info lebih lanjut, lihat dokumentasi Parameter Kernel . Ada beberapa parameter untuk menonaktifkan subsistem tertentu. Sebagai contoh:
nousb
menonaktifkan dukungan USB kernelcgroup_disable=[name]
menonaktifkan pengontrol tertentu; namun, "memori" adalah satu-satunya contoh yang didukung secara khususlibata.noacpi
menonaktifkan penggunaan ACPI di libata (pengontrol SATA); ini adalah contoh melewatkan parameter modul melalui kernelMenonaktifkan modul tertentu adalah mungkin dari boot loader, tapi terlihat seperti distro-dependent memang.
Di satu sisi, dokumentasi Parameter Kernel Linux menyatakan, per Agustus 2016:
module_blacklist=
[KNL] Jangan memuat daftar modul yang dipisahkan koma. Berguna untuk debugging modul masalah.
Di sisi lain, opsi yang bekerja untuk saya dengan openSUSE 42.1 (Linux 4.1.31) dijelaskan dalam wiki modul Arch Kernel :
Anda juga dapat membuat daftar hitam modul dari bootloader. Cukup tambahkan
modprobe.blacklist=modname1,modname2,modname3
ke baris kernel bootloader Anda, seperti yang dijelaskan dalam parameter Kernel. Ketika Anda membuat daftar hitam lebih dari satu modul, perhatikan bahwa mereka dipisahkan oleh koma saja. Spasi atau apa pun mungkin bisa mematahkan sintaksis.
(Terima kasih kepada @gertvdijk di unix.SE karena telah menunjukkan ini.)
Juga layak disebutkan adalah metode berikut :
Agar modul-modul tertentu tidak dimuat oleh kernel menggunakan baris perintah grub, Anda perlu meneruskannya sebagai parameter ke baris kernel menggunakan sintaksis di bawah ini.
$module_name.blacklist=yes
Saya tidak tahu dari mana mereka mendapatkannya, tetapi pasti tidak ada salahnya untuk mencoba metode lain jika semuanya gagal.
Anda harus dapat menambahkannya ke /etc/modprobe.d/blacklist, atau blacklist 'modulename'