Ubuntu замораживается на входе в систему после главно-избранного Intel

У меня есть Asus GL553 с Intel 560 и Nvidia GTX 1050, и меня судят для конфигурирования моих гибридных карт с главным Nvidia. Я установил Ubuntu Gnome 17.04, затем установил nvidia-381 и работал, главно-избранный intel I имел к "жесткой" перезагрузке и когда я пытался войти в системные замораживания. Я исследовал и считал все эти темы, но я не могу найти решение.

Кто-либо имеет, мог настроить Nvidia правильно?

3
задан 20 March 2018 в 20:56

2 ответа

Я наконец сделал это.

1. - Делают папку, чтобы хранить файлы SSDT. Затем извлеките его из таблиц ACPI (выполните эту часть как корень):

# mkdir dsdt
# cd dsdt
# SSDT_FILES=`ls /sys/firmware/acpi/tables/ | grep SSDT`
# for file in $SSDT_FILES ; do cat "/sys/firmware/acpi/tables/$file" > "$file.dat"; done
# cat /sys/firmware/acpi/tables/DSDT > DSDT.dat

2. - Удостоверяются, что у Вас есть установленный IASL. На человечности, sudo apt install iasl должен быть достаточным. Я загрузил источник и скомпилировал его сам для получения последней версии, но я не думаю, что это необходимо.

3. - Существует дублирующееся определение в одном файле SSDT, который не позволит нам демонтировать его. Узнайте, какой это, и удалите его:

# grep PRT0 *.dat
Binary file DSDT.dat matches
Binary file SSDT1.dat matches
# mv SSDT1.dat SSDT1.bak

Таким образом в моем случае это - SSDT1. Замените его тем, что Вы получаете. Не касайтесь DSDT.dat

4. - Затем, мы находим файл SSDT с кодом, который мы должны изменить. Мы ищем файл и с "NVID" и с "OSYS", присутствуют: (Существует, вероятно, лучший способ сделать это в grep),

# grep NVID *.dat
Binary file SSDT10.dat matches
Binary file SSDT3.dat matches
# grep OSYS SSDT10.dat
# grep OSYS SSDT3.dat
Binary file SSDT3.dat matches

Таким образом в моем случае это был SSDT3, если его различное, Вы заменяете все дальнейшие экземпляры SSDT3 с тем, что Вы получаете.

5. - Демонтируют!

# iasl -e *.dat -d SSDT3.dat

6. - Надо надеяться, Вы не видите ошибок в этой точке. Замените все экземпляры OSYS кроме объявления с константой для Windows 7 и ударьте номер блока определения одним:

# sed -i '/^ *External/! s/OSYS/0x07D9/g' SSDT3.dsl
# sed -i '/^ *DefinitionBlock/ s/0x00001000/0x00001001/g' SSDT3.dsl

Если у Вас есть другой BIOS, Номер блока Определения не мог бы быть 1000. Просто откройте SSDT3.dsl в текстовом редакторе и ищите DefinitionBlock. Безотносительно числа Вы видите на той строке, увеличиваете его одним.

7. - Компилируют все и надежду, там не ошибки.

# iasl -ve -tc -p SSDT3 SSDT3.dsl

8. - Делают изображение:

# mkdir -p kernel/firmware/acpi
# cp SSDT3.aml kernel/firmware/acpi/ssdt3.aml
# find kernel | cpio -H newc --create > acpi_gpufix

8. - Все следующие инструкции, соответствующие Ubuntu и GRUB2. Скопируйте его в папку начальной загрузки. initrd.img это - Ваше значение по умолчанию img от папки начальной загрузки:

# cp acpi_gpufix /boot/

можно постоянно добавить его к GRUB путем редактирования/etc/grub.d/10_linux. Я должен был изменить строку initrd ${rel_dirname}/${initrd} кому: initrd ${rel_dirname}/acpi_gpufix ${rel_dirname}/${initrd}. Затем выполненное обновление-grub2.

ОБНОВЛЕНИЕ: Теперь поддержка GRUB дополнительный initrd: GRUB_EARLY_INITRD_LINUX_CUSTOM=acpi_gpufix.img к Вашему/etc/default/grub

9. - Чтобы проверить, работает ли это:

$ dmesg | grep ACPI | grep override
[    0.000000] ACPI: Table Upgrade: override [SSDT-PegSsd- PegSsdt]
[    0.000000] ACPI: SSDT 0x000000007A715080 Physical table override, new table: 0x0000000079493000

Теперь можно изменить GPU без замораживаний

источник:

https://github.com/Bumblebee-Project/Bumblebee/issues/764#issuecomment-306543064 https://devtalk.nvidia.com/default/topic/1012369/linux/laptop-freezes-changing-video-cards

0
ответ дан 2 December 2019 в 01:21

Давно я раньше имел ноутбук Nvidia и имел подобные проблемы с гномом. Единственное это работало на меня, должно было удалить гнома и используемый KDE вместо этого. Но я повторяю, что это было давно 10 ~ версиями, которые я предполагаю.

Можно начать на командном режиме делать это:

Загружаться в single user режим Вы редактируете инструкции по начальной загрузке для записи меню GRUB, Вы хотите загрузить и добавить параметр/опцию ядра single. Краткие инструкции для того, как сделать это, ниже.

  • Удержите левых Shift ключ при перезагрузке для перевода в рабочее состояние меню GRUB
  • Выбор (выделение) запись меню начальной загрузки GRUB Вы хотите использовать.
  • Пресса e отредактировать команды загрузки GRUB для выбранной записи меню начальной загрузки.
  • Посмотрите около нижней части списка команд для строк, подобных

    Linux/boot/vmlinuz-3.2.0-24-generic root=UUID=bc6f8146-1523-46a6-8b\6a-64b819ccf2b7 ro подавляет шумы всплеска initrd/boot/initrd.img-3.2.0-24-generic

  • Измените среднюю строку в (4) путем добавления параметра начальной загрузки ядра, единственного в конец строки (т.е. после ro quiet splash).

Для этого примера Вы изменились бы:

6a-64b819ccf2b7 ro  quiet splash

кому:

6a-64b819ccf2b7 ro  quiet splash single
  • Нажмите также Ctrl+X или F10 загружать использование этих опций ядра.

Примечание: Эти изменения не являются персистентными. Любое изменение в параметрах загрузки ядра пробилось, будет только влиять на следующую начальную загрузку и только если Вы запускаете ту начальную загрузку путем нажатия Ctrl+X или F10 в то время как все еще в режиме редактирования GRUB.

-1
ответ дан 2 December 2019 в 01:21

Другие вопросы по тегам:

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