Maison > Tutoriel système > Linux > Apprenez-vous étape par étape comment créer des rootfs Linux

Apprenez-vous étape par étape comment créer des rootfs Linux

王林
Libérer: 2024-02-05 15:51:16
avant
897 Les gens l'ont consulté

aperçu de Busybox

Comme nous le savons tous, dans l'environnement Linux, tout est un fichier et les fichiers peuvent tout représenter. Le système de fichiers est un ensemble de ces composants communs. Dans le domaine de l'embarqué, les rootfs construits sur la base de busybox sont souvent utilisés pour créer des systèmes de fichiers.

busybox existe depuis près de 20 ans et est désormais devenu l'outil de création de rootfs principal dans l'industrie de l'embarqué.

Le code de Busybox est entièrement open source. Vous pouvez accéder au site officiel et cliquer sur « Télécharger la source » sous « Get BusyBox » pour accéder à l'interface de téléchargement du code source.

«

Lien du site officiel :
https://busybox.net/

手把手教你构建linux rootfs

2. Configuration et compilation de busybox

Après avoir téléchargé le code source, copiez le code source dans l'environnement de compilation. Busybox doit être configuré avant la compilation, ce qui implique principalement trois aspects :

1. Paramètres de la chaîne d'outils de compilation

2. Paramètre du mode compilation

3. Fonctions prises en charge par le système de fichiers

Les deux premiers éléments doivent être complétés, tandis que le troisième point est formulé en fonction des besoins propres de l'utilisateur.
Exécutez make menuconfig pour accéder à l'interface de configuration.

手把手教你构建linux rootfs

Paramètres de la chaîne d'outils de compilation

La chaîne d'outils de compilation croisée définie doit être la même que la chaîne d'outils utilisée lors de la compilation du noyau. Par exemple, si la chaîne d'outils de compilation croisée est définie sur arm-linux-gnueabi-, entrez les options de construction pour la définir. . 手把手教你构建linux rootfs

Bien sûr, vous pouvez également saisir le fichier Makefile dans le répertoire racine pour modifier la chaîne d'outils de compilation croisée et les informations de plate-forme correspondantes. 手把手教你构建linux rootfs

Paramètre du mode compilation

Définissez si le fichier image compilé est statique ou dynamique. S'il est compilé dynamiquement, vous devez copier manuellement la bibliothèque lib sous la chaîne d'outils de compilation croisée dans le dossier _install final, et vice versa. La configuration de la compilation statique est la suivante. Vous pouvez voir que l'invite entre parenthèses n'inclut pas les bibliothèques partagées. Si cette option n'est pas activée, la méthode de compilation sera dynamique. 手把手教你构建linux rootfs

**Définir les fonctions prises en charge par rootfs

**

busybox peut prendre en charge des centaines de lignes de commande et d'autres fonctions, qui peuvent être augmentées ou diminuées selon vos propres besoins. Par exemple, si vous ajoutez une ligne de commande devmem, cochez la case d'activation correspondante.

手把手教你构建linux rootfs手把手教你构建linux rootfs

Compile

Après avoir exécuté make et make install, le dossier _install sera généré dans le chemin de compilation, qui contient bin, sbin, usr et d'autres fichiers. Vérifiez la commande devmem qui vient d'être ajoutée et constatez qu'elle a été compilée. 手把手教你构建linux rootfs

À ce stade, copiez le _install compilé sous busybox comme cadre de base de rootfs, puis ajoutez les autres composants nécessaires.

3. Construire des rootfs

Copiez tous les fichiers sous _install et créez les dossiers lib et etc, puis copiez la bibliothèque lib sous la chaîne d'outils de compilation croisée arm-linux-gnueabi dans le dossier lib créé.

手把手教你构建linux rootfs

Ensuite, créez home, opt, run, sys, var, boot, dev, media, proc, tmp, usr dans l'ordre

手把手教你构建linux rootfs

Configurer le répertoire etc

  • Créer un fichier fstab
手把手教你构建linux rootfs
  • Créer un fichier inittab
手把手教你构建linux rootfs
  • Créer un fichier rcS

Avant de créer le fichier rcS, vous devez créer manuellement le dossier init.d dans le répertoire etc et créer rcS dans le dossier init.d.

手把手教你构建linux rootfs

À ce stade, exécutez la commande suivante pour empaqueter et générer un rootfs léger.

tar -jcvf rootfs.tar.bz2 *
Copier après la connexion
手把手教你构建linux rootfs

4. Vérification du système de fichiers

Utilisez mfgtools pour télécharger le rootfs.tar.bz2 compressé sur mmc, redémarrez le système, vous pouvez voir que le système de fichiers racine créé fonctionne normalement et que la commande devmem que nous avons ajoutée auparavant peut également être exécutée normalement.

手把手教你构建linux rootfs

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers numéros
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal