Имеется сломанный модуль ядра, из-за которого я даже не могу загрузить ОС, поэтому не могу удалить или исправить ее. Можно ли пропустить этот модуль при загрузке, используя параметры ядра или что-то еще?
12
Имеется сломанный модуль ядра, из-за которого я даже не могу загрузить ОС, поэтому не могу удалить или исправить ее. Можно ли пропустить этот модуль при загрузке, используя параметры ядра или что-то еще?
Ответы:
Добавление в черный список модуля, как упомянуто в предыдущем ответе, является лучшим способом полностью избежать модуля ядра. Помимо черного списка, нет общего способа отключить модуль.
Некоторые дистрибутивы Linux предоставляют параметры загрузки ядра для таких вещей.
load_modules=off
силы Udev пропустить автозагрузку. Это позволит вам загружаться без загрузки модулей, помещать в черный список модуль, вызывающий проблемы, и нормально перезагружаться без проблемной загрузки модулей.Для получения дополнительной информации см. Документацию параметров ядра . Есть параметры для отключения определенных подсистем. Например:
nousb
отключает поддержку ядра USBcgroup_disable=[name]
отключает определенный контроллер; однако «память» является единственным примером, специально поддерживаемымlibata.noacpi
отключает использование ACPI в libata (контроллеры SATA); это пример передачи параметра модуля через ядроисточник
Отключение специальных модулей является возможным из загрузчика, но выглядит как-дистрибутив зависит на самом деле.
С одной стороны, в документации по параметрам ядра Linux по состоянию на август 2016 года говорится:
С другой стороны, опция, которая работала для меня с openSUSE 42.1 (Linux 4.1.31), описана в вики модулей Arch Kernel :
(Спасибо @gertvdijk в unix.SE за указание на это.)
Также стоит упомянуть следующий метод :
Я понятия не имею, откуда они это взяли, но точно не помешает попробовать любой другой метод, если ничего не получится.
источник
Вы можете добавить его в /etc/modprobe.d/blacklist или в черный список modulename.
источник