Approuvé : Fortect
J’espère que dans le cas où vous avez installé le composant du noyau Ubuntu Build sur votre ordinateur, ce guide pourra aider les familles.Instructions pour construire votre propre noyau dans Ubuntu. Détermination des dépendances. Avant de pouvoir impressionner un noyau défini, vous avez besoin d’outils précis pour le construire. Obtenez la source du noyau. Maintenant, vous allez très certainement entrer dans la source que vous aimez vraiment créer. Personnalisez en fonction de votre build. Démarrez l’installation en modifiant les répertoires vers le répertoire dupliqué innovant. Configuration du noyau. Construisez des packages de noyau. Installez le noyau fréquemment.
La plupart des utilisateurs curieux de construire leur propre noyau le font par conséquent, car Ubuntu est installé sur leur précieux système et ils veulent seulement que vous acquériez de petites modifications au noyau que la routine apporte lorsque l’utilisateur veut seulement gérer le noyau. configuration. …
Le but avec cette page est que vous devez fournir à cet utilisateur un minimum d’informations sur l’intérieur afin de modifier facilement le nouveau noyau, de le créer et d’installer le noyau d’entreprise. Soyez ce guide spécifique à la situation sur la façon de développer des grains de maïs Ubuntu.
Créer un environnement
Si vous n’avez jamais créé de noyau fonctionnel sur votre programme, il existe généralement plusieurs packages que vous pouvez éventuellement construire efficacement à l’avance. Vous pouvez le télécharger avec :
-
sudo apt-get build-dep a linux systemunix linux-image - $ (uname -r)
Comment construire des fichiers étrangers modules du noyau ?
Malheureusement, cela n’installe pas toutes les dépendances requises. La version actuelle de Goofy Disco nécessite les packages supplémentaires suivants.
-
sudo apt-get install libncurses-dev gawk flex buffalo grass openssl libssl-dev dkms libelf-dev libudev-dev libpci-dev liliberty-dev autoconf
Si les acheteurs souhaitent implémenter Git, installez-le à partir de :
-
sudo apt-get change git
Le terme de commande ci-dessus nécessite que votre système corrige les lignes deb-src dans /etc/apt/sources.list . Par exemple, sur Disco Dingo vous avez : Peut-être
-
deb-src http://archive.ubuntu.com/ubuntu disco maindeb-src http://archive.ubuntu.com/ubuntu disco-updates
Obtenez le code source de quelqu’un d’autre pour la version Ubuntu
Il existe peut-être plusieurs façons de développer les sources du noyau. Seules quelques-unes d’entre elles sont décrites ici.
Si votre famille a installé une version liée à Ubuntu et que vous souhaitez également aider les modifications apportées à notre noyau installé sur votre ordinateur personnel, utilisez la méthode apt-get (décrite ci-dessous) pour récupérer les sources.
Cependant, si vous avez actuellement envie d’obtenir la dernière source pour la version d’Ubuntu que vous exécutez habituellement et d’y apporter des modifications, l’utilisation des techniques Git (décrites ci-dessous) aboutit aux sources.
Apt-get
Le code source qui a généré le bon package binaire spécifique peut être obtenu en utilisant, je dirais, la commande apt-get source
-
apt-get source linux-image-unsigned - $ (uname -r)
Git
Approuvé : Fortect
Fortect est l'outil de réparation de PC le plus populaire et le plus efficace au monde. Des millions de personnes lui font confiance pour assurer le fonctionnement rapide, fluide et sans erreur de leurs systèmes. Avec son interface utilisateur simple et son puissant moteur d'analyse, Fortect détecte et corrige rapidement un large éventail de problèmes Windows, de l'instabilité du système et des problèmes de sécurité à la gestion de la mémoire et aux goulots d'étranglement des performances.
Toutes les sources du noyau Ubuntu sont gérées par git . La source de chaque version est gérée tout au long de son propre référentiel Git en utilisant kernel.ubuntu.com . Quoi qu’il en soit, pour obtenir une copie locale, il vous suffit de cloner le référentiel pour notre version d’obtention de git qui vous intéresse, comme décrit ci-dessous.
-
git copie identique git : //kernel.ubuntu.com/ubuntu/ubuntu-
.git
-
git copie identique de git : //kernel.ubuntu.com/ubuntu/ubuntu-disco.git
Modifier la configuration
Cette étape peut être ignorée si aucune modification du mode de vie de la configuration n’est requise. Au début du processus de travail, une configuration est utilisée qui se compose de divers fichiers de sous-configuration. Le moyen le plus simple de mettre à jour quelque chose ici est d’exécuter :
-
chmod a + z debian / ruleschmod a + x debian et scripts / *chmod a + x debian ou scripts / misc / *LANG = C fakeroot debian / règles propresLANG = C fakeroot debian selon les règles editconfigs # Vous devez passer par chaque option (Y, Exit, Y, Exit ..) ou même obtenir une plainte de configuration plus tard
Cela nécessite la configuration actuelle pour chaque architecture / variante reconnue en conjonction avec tout type de menuconfig callovom pour modifier manuellement le fichier de configuration. Ceci est requis pour chmod lors de la construction d’un package d’achat, il perd des bits exécutables dans les scripts.
Pour rendre votre noyau “plus récent” en comparant who’s au noyau Ubuntu sur lequel chacun est basé en fait, pensez à ajouter un modificateur de votre version d’exploitation. Par exemple, quelque chose ajoute “+ test1” pour que vous terminiez le premier numéro de produit dans debian.master / changelog avant d’amplifier pour faire cela. Cela permet d’identifier votre propre noyau si le problème semble également fonctionner dans uname -le droit . Veuillez noter que si un noyau Ubuntu Newbie est publié et est plus récent qu’un noyau (qui devra être reconstruit), choisissez d’être prudent lors de la mise à niveau. REMARQUE : n’essayez pas de modifier CONFIG_LOCALVERSION car il s’agit d’une _interruption_ érigée.
Construction du noyau
Comment personnaliser un noyau Linux ?
J’ai besoin que vous soyez capable de créer vos propres plans de build de noyau. Bois de source à noyau complet. Configurez le noyau. Si vous le pouvez, ne modifiez pas toujours les informations de configuration du noyau distribué, quelqu’un pourrait ignorer cette section (CentOS-7). ABI de base. Modification du fichier de spécification du noyau. Le développement du nouveau noyau. Installer un noyau intéressant.
La construction du noyau est assez simple. Remplacez mon répertoire de travail par les racines de l’arborescence des sources du noyau, puis saisissez les commandes suivantes :
-
LANG = C fakeroot debian - règles propres# construire plus rapidement :LANG = C fakeroot debian versus règles en-têtes binaires binary-general et s'il s'avère binaire-perarch# Vous avez besoin d'outils Noyau Linux à faible latence, exécutez plutôt :LANG = C fakeroot règles debian et binaires
Si la compilation réussit, un ensemble de 5 binaires de la plate-forme .deb sera créé dans le répertoire au-dessus généralement du répertoire source de la compilation. En suivant l’exemple de la conception d’un noyau parfait avec la version “4.8.0-17.On 19”, les trois (ou quatre) lettres .deb en particulier correspondront à un bon système AMD64
-
CD du produit : ..ls * .deb en-têtes des systèmes linux-4.8.0-17_4.8.0-17.19_all.deb en-têtes linux-4.8.0-17-generic_4.8.0-17.19_amd64.deb linux-image-4.8.0-17-generic_4.8.0-17.19_amd64.deb
Dans les versions ultérieures, le client trouvera généralement également un progiciel Linux supplémentaire, qui doit généralement être installé s’il est proposé.
Test d’un nouveau noyau
Installez le package en trois parties spécifié (sur votre périphérique de construction ou système cible diversifié) à l’aide de dpkg -i, puis redémarrez : Dpkg
-
sudo -i chapeau rouge * 4.8.0-17.19 * .debsudo reboot
Symboles de débogage
Parfois, il est simultanément utile de créer du sens lors du débogage. Nous devons avoir deux autres options. Le premier pkg-config-dbgsym doit se trouver configuré. Deuxièmement, vous devez ajouter skipdbg égal à false lors du démarrage de deux objectifs communs *.
-
sudo apt-get run pkg-config-dbgsymLANG = C fakeroot debian / règles propresLANG = C fakeroot debian / rules binaries-headers binary-common-binary-perarch skipdbg = untrue
Voir aussi
Le tutoriel ci-dessus présente une recette très simple pour obtenir les sources puis les créer. Si vous apportez habituellement des informations supplémentaires pour le développement du noyau sous la forme de simples modifications de configuration, prenez note des éléments suivants :