Я планирую написать некоторые драйверы устройств, и мне нужно получить исходный код ядра Linux. Моя версия ядра Linux - 3.2.0-23-generic-pae, и я скачал образ с этого . Во многих статьях, которые я читал, говорится, что мне нужно иметь все дерево ядра, чтобы начать вставлять новые модули.
Достаточно ли этого, если я скачаю это изображение и вставлю его в usr/src/
папку, или мне придется сделать что-то еще?
Ответы:
Это получит исходный код ядра:
Вы можете проверить, какая версия ядра работает следующим образом:
Который напечатает что-то вроде:
Вы можете найти список текущих версий пакетов с исходным кодом, доступных в вашей системе, через:
Чтобы получить исходную версию ядра:
В приведенной выше ссылке «верный» - это кодовое название версии Ubuntu. Вы можете узнать кодовое название для версии Ubuntu, которую вы установили через:
источник
apt-get source
нетapt-get install
. Чем исходное дерево окажется в вашем текущем пути .это самый простой способ. Он загрузит исходный код из вашего репозитория - и будет совпадать с версией, которую вы используете (если вы еще не настроили ее).
Но если вы хотите узнать, где находится источник, вы можете запустить:
Найдите атрибут «Vcs-» (Система контроля версий). Обычно это будет git (Vcs-Git) или ртутный репозиторий.
Обратите внимание - эти команды работают с любым пакетом. Просто замените 'linux' на интересующий вас пакет. Также обратите внимание, что 'apt-get source' не нуждается в доступе sudo и сбросит исходный код в ваш текущий каталог.
источник
/usr/src
- не полный исходный код ядра - в Ubuntu 16.04Скачать исходный код прямо с Launchpad
Как ни странно, все рекомендуют,
apt-get source
что не работает большую часть времени, если вы ищете конкретную версию ядра:Скажем, вам нужен исходный код ядра для 3.19.0-58:
apt-get source linux-image-3.19.0-58-generic
вы получите исходный код для самого последнего ядра из серии: в данном случае 3.19.0-80, а это не то, что вы просили.Итак, у вас есть два варианта:
1) Откажитесь, установите ядро 3.19.0-80 и используйте
apt-get source
2) Получить источник прямо из панели запуска:
Сайт Google : launchpad.net "linux-image-3.19.0-58-generic"
Это должно дать вам страницу пакета Launchpad для этой версии.
Прокрутите вниз, нажмите ссылку «Источник:», теперь вы находитесь на странице источника пакета .
Прокрутите вниз и загрузить
.tar.gz
,.diff.gz
,.dsc
файлы:dpkg-source -x *.dsc
Заметки:
источник
Просто выберите один из:
Если вам предлагают указать URL-адреса «источников» в вашем файле
sources.list
, отредактируйте/etc/apt/sources.list
файл и раскомментируйте нужнуюdeb-src
строку, например (если вы используете Xenial):Удаление
#
последней строки позволяет загружать репозитории исходных кодов, включая исходные коды ядра.Примечания:
apt-get
.4.4.0-75-generic
например)./usr/src/linux-source-4.4.0/
(например).источник