Применить исправление ядра для поддержки режима PIC

Для разовой работы я бы начал с вывода diff и отредактировал его в список файлов для удаления (если скучно, предоставьте эту задачу sed(1), сценарию Perl или чему-то подобному). Перепроверив список, запустите его, например, с помощью (bash(1)!):

rm $(< list-of-files-to-axe)

Можно приправить флагами -f или -i по вкусу.

Автоматизация этого будет гораздо более трудоемкой (и внесет слишком много проблем), чтобы стоило это делать для эпизодического использования. Для повторяющегося использования напишите все это на языке сценариев, например, Perl или Python. Держитесь подальше от специализированных языков, таких как awk(1).

6
13.04.2017, 15:36
2 ответа

Процесс применения патча очень прост. Предполагая, что у вас есть каталог ядра и файл патча, например:

- /usr/src/kernels (or where you have the kernel directory)
---- /user/src/kernels/kernel_directory
---- /user/src/kernels/patch_file

В зависимости от того, в каком формате у вас был патч (обычно .gz, .bz2 или .xz), вам нужно использовать другую команду для его извлечения. Вам нужно зайти в каталог_ядра и выполнить следующую команду:

gzip -cd ../patch_file | patch -p1 - Это для gzip-патча

bzip2 -cd ../patch_file | patch -p1 - Это для патча bzip

xz -cd ../patch_file | patch -p1 - это для патча xz

. Он применяет файл патча / usr / src / kernels / patch_file к ядру / usr / src / kernels / kernel_directory . Сначала вам нужно перейти в / usr / src / kernels / kernel_directory и запустить команду оттуда.

Примите во внимание создание копии каталога ядра, чтобы вы могли выполнить процесс с копией ядра в резервной копии, чтобы легко ее восстановить.

ПРИМЕЧАНИЕ: Это только процесс применения патча, при условии, что вы используете правильный патч для своего ядра, он не должен выдавать никаких ошибок. У вас должен быть файл патча, как у официального ядра.

0
27.01.2020, 20:30

Что касается драйверов Ubuntu и Intel, Intel тестировали свои драйверы только для LTS-версий Ubuntu ( см. ответ Тодда Фуджинаки ). Поэтому вам необходимо понизить версию Ubuntu с 16.10 до 16.04.1 LTS ( переустановить, сохранив / home ).

Для всех других дистрибутивов на основе Debian, таких как Kali, то же самое верно: вам необходимо перейти на более раннюю версию (т.е. переустановить) до версии, которая явно поддерживается поставщиком драйвера. Версия до GCC PIC.

Это может быть неприятный ответ, но он технически правильный, и если вы сами не являетесь разработчиком ядра, то все, что вы можете сделать, это написать в списке рассылки ядра и очень вежливо спросить, может ли разработчик работать над код драйвера. Иногда это срабатывает, но наберитесь терпения.

1
27.01.2020, 20:30

Теги

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