Из хука шифрования ArchLinux(/lib/initcpio/hooks/encrypt
):
*)
# Read raw data from the block device
# ckarg1 is numeric: ckarg1=offset, ckarg2=length
dd if="$resolved" of="$ckeyfile" bs=1 skip="$ckarg1" count="$ckarg2" >/dev/null 2>&1
;;
Таким образом, хотя он поддерживает чтение ключа с необработанного блочного устройства, он использует размер блока 1 (вместо 512 )по умолчанию, поэтому вам нужно умножить ваши значения на 512, чтобы заставить его работать.
Итак, вместо cryptkey=/dev/sdd:1:6
попробуйте cryptkey=/dev/sdd:512:3072
.
Выходит, это старая и известная проблема с прерываниями MSI, из-за которой драйвер не инициализируется . К сожалению, насколько мне известно, Nvidia так и не решила эту проблему должным образом, но есть обходной путь, который заключается в простом отключении MSI (благодаря этим милымлюдям из Интернета).
Это было так же просто, как добавить options nvidia NVreg_EnableMSI=0
в файл конфигурации модуля ядра (он мог быть под любым именем; в моем случае/etc/modprobe.b/video.conf
)или добавление pci=nomsi
в качестве одной из команд загрузки ядра.
Я также снова добавляю следующее в файл конфигурации (, любое имя )в черный список nouveau
, как я читал, это может вызвать некоторые проблемы:
blacklist nouveau
options nouveau modeset=0
Попытка добавить это была проблемой, так как драйвер просто зависал на экране входа в систему, поэтому я добавил это черезGRUB > Ubuntu recovery mode > Drop to root