Как занести в черный список модули ядра?

Переместите внешний диск вверх в порядке загрузки. Вот руководство по изменению порядка загрузки и его применению.

39
задан 18.04.2020, 01:06

4 ответа

Еще один способ занести модули в черный список по крайней мере в Ubuntu 16.04 LTS - добавить следующую строку в командную строку ядра:

modprobe.blacklist=MODULE_NAME

Лучше всего использовать систему / etc / modprobe, но это альтернатива, которая может быть использована в крайнем случае, отредактировав вашу командную строку GRUB при загрузке.

Это также можно сделать постоянным, отредактировав / etc / default / grub и добавив в переменную GRUB_CMDLINE_LINUX_DEFAULT. Например, в моем / etc / default / grub у меня есть:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash modprobe.blacklist=nouveau"

Затем я запускаю update-grub2, затем update-initramfs -u. После перезагрузки вы будете свободны от модуля, если после загрузки ничего не загружается.

Этот метод также работает в вариантах EL (RHEL, CentOS, SciLinux), но вам придется использовать методы этого дистрибутива для обновления grub и initrd.

(Примечание для тех, кто пытается занести в черный список nouveau: убедитесь, что не загружаете X, запустив systemctl set-default multi-user.target, иначе при запуске X он снова загрузит nouveau!)

0
ответ дан 18.04.2020, 01:07

Ни одно из этих решений не работало на 16.04 LTS для i915.ko.

(грязное) решение, которое я нашел, состояло в том, чтобы переименовать

/lib/modules/4.4.0-22-generic/kernel/drivers/gpu/drm/i915/i915.ko
/usr/lib/xorg/modules/drivers/modesetting_drv.so
/usr/lib/xorg/modules/drivers/intel_drv.so

К сожалению, внешний экран VGA больше не распознается: {

0
ответ дан 18.04.2020, 01:07
  • 1
    Все, в чем Вы нуждаетесь, sudo update-initramfs -u после изменения/etc/modeprobe.d/файлы – Rob Cooper 18.04.2020, 01:08

Примечание: внесение в черный список не будет работать для модулей, которые встроены в образ ядра (т.е. не загружаются через отдельный файл .ko. Единственный способ отключить такие модули через параметр ядра (если имеется) или перекомпиляцию ядра.

Просто откройте ваш файл /etc/modprobe.d/blacklist и добавьте имя_привода, используя следующий синтаксис:

blacklist driver-name

РЕДАКТИРОВАТЬ: В более поздних версиях с 12.10 (12.04?) Файл /etc/modprobe.d/blacklist.conf

Перезагрузите ваш компьютер и используйте команду lsmod для отображения состояния модулей в ядре Linux

Примечание : здесь driver-name - имя желаемого драйвера черного списка. Например, если вы хотите отключить драйвер карты NIC, вы можете найти имя драйвера ядра для вашей сетевой карты, используя команду lspci -v в терминале.
Например, мой вывод был:

........
........ 
6:00.0 Ethernet controller: Broadcom Corporation NetLink BCM5906M Fast Ethernet PCI Express (rev 02)
    Subsystem: Lenovo Device 3861
    Flags: bus master, fast devsel, latency 0, IRQ 46
    Memory at b8000000 (64-bit, non-prefetchable) [size=64K]
    Expansion ROM at  [disabled]
    Capabilities: 
    Kernel driver in use: tg3
    Kernel modules: tg3
........
........

Здесь я вижу, что драйвер - tg3. Поэтому вам нужно написать tg3 (или ваш драйвер) в место driver-name.

Много информации можно найти фунт здесь .

0
ответ дан 18.04.2020, 01:08
  • 1
    Лучше сохранить модули помещенными в черный список пользователем в отдельном файле для предотвращения конфликтов во время обновления (см. этот комментарий в serverfault). – Tim Matthews 18.04.2020, 01:08
  • 2
    в моем случае (Lubuntu 12.10), нет /etc/modprobe.d/blacklist файл. Существует /etc/modprobe.d/blacklist.conf файл – Erik Forbes 18.04.2020, 01:09

Вы также можете временно поместить их в черный список в командной строке grub (linux line) при загрузке с синтаксисом

module_to_blacklist.blacklist=yes
0
ответ дан 18.04.2020, 01:08
  • 1
    Каково различие между этим и modprobe.blacklist=module_to_blacklist? – Elzo Valugi 18.04.2020, 01:08
  • 2
    Какой длины этот " temporary"? до следующей начальной загрузки? – dancavallaro 18.04.2020, 01:09
  • 3
    или используйте параметр ядра modprobe.blacklist=module_to_blacklist (см. man modprobe для деталей), – Andrei Fierbinteanu 18.04.2020, 01:09
  • 4
    По-видимому, это не работает на i915: i915: unknown parameter 'blacklist' ignored. – pbreitenbach 18.04.2020, 01:10
  • 5
    Seth, это является временным для просто единственной начальной загрузки, если Вы отредактировали во время начальной загрузки. Если Вы редактируете использование/etc/grub.d/сценарии или/etc/default/grub, то это является постоянным. – 2 revs, 2 users 78% 18.04.2020, 01:10

Теги

Похожие вопросы