qu'est-ce que Linux Busybox

青灯夜游
Libérer: 2022-11-11 10:20:27
original
3239 Les gens l'ont consulté

busybox est un outil de développement permettant de développer des logiciels sous les systèmes Linux. C'est un logiciel qui intègre plus de 300 des commandes et outils Linux les plus couramment utilisés. Pour faire simple, BusyBox est comme une grande boîte à outils. Il intègre et compresse de nombreux outils et commandes de Linux, et inclut également le propre shell du système Linux. BusyBox est une excellente alternative à GNU Coreutils, surtout si la petite taille du système d'exploitation est importante.

qu'est-ce que Linux Busybox

L'environnement d'exploitation de ce tutoriel : système linux7.3, ordinateur Dell G3.

BusyBox devient de plus en plus populaire maintenant, en particulier parmi les utilisateurs de Docker, de nombreuses images Docker utilisent BusyBox pour vous fournir un minimum d'images.

Cela peut être particulièrement déroutant pour de nombreux utilisateurs si vous prenez les commandes Linux pour acquises, vous pensez que ls, mv et d'autres commandes similaires font partie de Linux, alors que le fait est que ces commandes font partie du package GNU Coreutils et de la plupart des Linux. les distributions sont préinstallées.

GNU Coreutils est presque le fournisseur de facto de diverses commandes UNIX/Linux, presque parce qu'il existe toujours des alternatives, et BusyBox est l'une des alternatives à GNU Coreutils.

Qu'est-ce que BusyBox ?

busybox est un outil de développement permettant de développer des logiciels sous les systèmes Linux.

BusyBox est un projet open source qui fournit des implémentations rationalisées d'environ 400 commandes UNIX/Linux courantes.

BusyBox est un logiciel qui intègre plus de 300 commandes et outils Linux les plus couramment utilisés. BusyBox comprend des outils simples tels que ls, cat et echo, ainsi que des outils plus grands et plus complexes tels que grep, find, mount et telnet. Certaines personnes appellent BusyBox le couteau suisse des outils Linux. Pour faire simple, BusyBox est comme une grande boîte à outils. Il intègre et compresse de nombreux outils et commandes de Linux, et inclut également le propre shell du système Linux.

L'implémentation de BusyBox supprime les options de commande rares et rarement utilisées, tout fait moins de 1 Mo, cette image minimale est la raison pour laquelle elle est populaire dans le monde des systèmes embarqués et de l'IoT, ainsi que dans le monde du cloud computing.

Ne regardez pas sa taille, BusyBox a la portée de sed et awk comme un éditeur classique (encore une fois en version allégée), il contient aussi son propre shell, il contient même une commande init qui peut être démarrée en tant que PID 1, qui signifie BusyBox Peut être configuré en remplacement de Systemd, OpenRC, etc.

BusyBox est une excellente alternative à GNU Coreutils, surtout lorsque la petite taille du système d'exploitation est importante.

BusyBox vous propose des commandes Linux populaires telles que mv, mkdir, ls, etc., mais il n'inclut que des options courantes pour ces commandes. Ce minimalisme est l’USP de BusyBox.

Est-ce un problème que vous n'ayez pas toutes les options de commande Linux avec BusyBox ?

Cela dépend de vos besoins, en réalité, la plupart des gens n'auront jamais besoin de toutes les options de la commande. Certaines commandes Linux ont plus de 50 options, et je parie que vous n'avez jamais utilisé toutes les options pour une seule commande Linux.

BusyBox réduit les options rarement utilisées, par exemple, la commande ls a l'option G, qui supprime les noms de groupe de la sortie de longue liste (ls -l).

quest-ce que Linux Busybox

Maintenant, je ne pense pas que vous ayez jamais besoin de cette option, c'est pourquoi elle n'existe pas dans l'implémentation de ls par BusyBox, si vous avez besoin d'une sortie qui n'inclut pas les noms de groupe, il vous suffit de le faire faire est de faire ceci. Utilisez la commande cut ou awk à cet effet.

Donnez-moi un autre exemple. Voici la page d'aide pour la commande mv de GNU Coreutils :

Usage: mv [OPTION]... [-T] SOURCE DEST
  or:  mv [OPTION]... SOURCE... DIRECTORY
  or:  mv [OPTION]... -t DIRECTORY SOURCE...
Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY.

Mandatory arguments to long options are mandatory for short options too.
      --backup[=CONTROL]       make a backup of each existing destination file
  -b                           like --backup but does not accept an argument
  -f, --force                  do not prompt before overwriting
  -i, --interactive            prompt before overwrite
  -n, --no-clobber             do not overwrite an existing file
If you specify more than one of -i, -f, -n, only the final one takes effect.
      --strip-trailing-slashes  remove any trailing slashes from each SOURCE
                                 argument
  -S, --suffix=SUFFIX          override the usual backup suffix
  -t, --target-directory=DIRECTORY  move all SOURCE arguments into DIRECTORY
  -T, --no-target-directory    treat DEST as a normal file
  -u, --update                 move only when the SOURCE file is newer
                                 than the destination file or when the
                                 destination file is missing
  -v, --verbose                explain what is being done
  -Z, --context                set SELinux security context of destination
                                 file to default type
      --help     display this help and exit
      --version  output version information and exit
Copier après la connexion

Maintenant, voici la page d'aide pour la commande mv de BusyBox :

Usage: mv [-fin] SOURCE DEST
or: mv [-fin] SOURCE... DIRECTORY

Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY

 -f Don't prompt before overwriting
 -i Interactive, prompt before overwrite
 -n Don't overwrite an existing file
Copier après la connexion

Vous voyez la différence ?

Comment obtenir BusyBox ?

Vous pouvez obtenir BusyBox de plusieurs manières.

Si vous souhaitez simplement découvrir BusyBox sur votre distribution Linux actuelle, vous pouvez l'installer à l'aide du gestionnaire de packages de votre distribution (tel que Apt ou DNF ou Yum).

Sur Ubuntu, vous pouvez installer BusyBox en utilisant la commande suivante :

sudo apt install busybox
Copier après la connexion

Après cela, si vous souhaitez exécuter la version BusyBox de la commande, vous devez ajouter busybox devant celle-ci.

busybox cat sample.txt
Copier après la connexion

Si BusyBox n'implémente pas la commande, elle générera une erreur "Applet introuvable".

abhishek@LHB:~$ busybox xyz
xyz: applet not found
Copier après la connexion

Alternativement, vous pouvez télécharger l'image Docker de BusyBox et l'essayer dans un conteneur en cours d'exécution.

Assurez-vous que Docker est installé, extrayez l'image officielle du docker :

docker pull busybox
Copier après la connexion

Exécutez un conteneur à partir de l'image et entrez dans le shell BusyBox :

docker run -it --rm busybox
Copier après la connexion

Chaque commande Linux que vous exécutez ici provient de BusyBox. Vous n'avez pas besoin de le spécifier explicitement.

quest-ce que Linux Busybox

En conclusion, vous n'avez pas besoin d'utiliser BusyBox sur un système Linux classique, vous disposez déjà de la version complète des commandes Linux de GNU Coreutils. Pas besoin d'installer la version allégée.

Mais BusyBox a son utilité dans des domaines particuliers, comme lors de la configuration d'un système d'exploitation Linux minimal pour les appareils embarqués ou IoT. Cela est également vrai lorsque vous souhaitez conserver une petite taille de votre image Docker.

Recommandations associées : "Tutoriel vidéo Linux"

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!

Étiquettes associées:
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!