Как к модулю ядра блочной загрузки только в отдельном пользователе загружаются, когда черный список перестал работать?

Вы наблюдаете комбинацию специфического поведения dd со специфическим поведением Linux /dev/random. Оба, между прочим, редко являются правильным инструментом для задания.

Linux /dev/random данные возвратов экономно. Это основано на предположении, что энтропия в генераторе псевдослучайного числа погашена на очень высокой скорости. Начиная со сбора новой энтропии является медленным, /dev/random обычно оставляет только несколько байтов за один раз.

dd старая, расшатанная программа, первоначально намеревался воздействовать на накопители на магнитной ленте. Когда Вы говорите этому читать один блок 1 КБ, это пытается считать один блок. Если чтение возвращает меньше чем 1 024 байта, жесткие, это - все, что Вы получаете. Так dd if=/dev/random bs=1K count=2 делает два read(2) вызовы. Так как это читает из /dev/random, два read вызовы обычно возвращают только несколько байтов в переменном числе в зависимости от доступной энтропии. См. также, Когда будет dd подходящий для копирования данных? (или, когда читаются () и запись () неравнодушный),

Если Вы не разрабатываете установщик ОС или клон, Вы никогда не должны использовать /dev/random в соответствии с Linux, всегда /dev/urandom. urandom страница справочника является несколько вводящей в заблуждение; /dev/urandom на самом деле подходит для криптографии, даже для генерации долговечных ключей. Единственное ограничение с /dev/urandom это, это должно быть предоставлено достаточной энтропией; дистрибутивы Linux обычно сохраняют энтропию между перезагрузками, таким образом, единственное время, у Вас не могло бы быть достаточной энтропии, находится на новой установке. Энтропия не смягчается на практике. Для получения дополнительной информации читавший рэнд от/dev/urandom, безопасного для ключа входа в систему? и Питание/dev/random энтропийный пул?.

Большая часть использования dd лучше выражаются инструментами такой как head или tail. Если Вы хотите 2 КБ случайных байтов, работаете

head -c 2k rand

С более старыми ядрами Linux Вам могло сойти с рук

dd if=/dev/urandom of=rand bs=1k count=2

потому что /dev/urandom счастливо возвращенный как много байтов согласно просьбе. Но это больше не верно начиная с ядра 3.16, оно теперь ограничено 32 МБ.

В целом, когда необходимо использовать dd извлечь постоянное число байтов и его входа не прибывает из регулярного файла или блочного устройства, необходимо считать байт байтом: dd bs=1 count=2048.

7
24.12.2012, 00:39
2 ответа

Проверьте, что Ваш модуль не перечислен в файле /etc/modules. Это списки файлов модули, которые должны быть загружены во время начальной загрузки согласно http://www.debian.org/doc/manuals/debian-faq/ch-kernel.en.html#s-modules

Когда имя модуля - mpt2sas в этом случае - перечислено в файле /etc/modules:

  1. Удалите это mpt2sas строка или прокомментируйте это путем предварительного ожидания хеша. Строка"mpt2sas"становится"#mpt2sas".
  2. Обновите initramfs файл изображения: depmod -aeF /boot/System.map-$(uname -r) && update-initramfs -u -k $(uname -r) -t
  3. И перезагрузка
4
27.01.2020, 20:18
  • 1
    это, должно быть, было слишком очевидно для пропуска! Так или иначе Вы отредактировали /etc/modules файл самостоятельно, вероятно. –  gertvdijk 28.12.2012, 15:31
  • 2
    @gertvdijk Для новичка Linux ничто не очевидно вообще. –  Pro Backup 28.12.2012, 15:37

Добавьте это к своей строке команды загрузки ядра (в, например, Личинка, нажмите e и отредактируйте параметры начальной загрузки ядра):

modprobe.blacklist=mpt2sas

Больше на этом на Wiki Arch.

2
27.01.2020, 20:18
  • 1
    Этот параметр ядра modprobe.blacklist=mpt2sas не изменяет загрузку/weak-updates/mpt2sas.ko модуль во время начальной загрузки в нашем случае. уверенный –  Pro Backup 23.12.2012, 21:24

Теги

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