web-dev-qa-db-fra.com

Comment remplacer GNU utilitaires principaux par Busybox

Je me demandais: est-il possible de remplacer le GNU coreutils par Busybox dans Ubuntu? Est-ce sécuritaire? Pourrais-je remplacer quelque chose d'autre (comme binutils et bash) par Busybox? Combien d’espace libre aurais-je avec cela? Et, si plausible, comment pourrais-je faire cela?

2
Eduardo Cola

Ce n'est pas possible. Busybox sur Ubuntu ne prend pas en charge l'ensemble des utilitaires fournis par coreutils. Les exemples incluent base64, comm, install, Nohup. Les paquets peuvent utiliser en toute sécurité des programmes installés par coreutils sans en faire un paquet, car un essential paquet ; rien ne permet de savoir quelles commandes coreutils un paquet peut être utilisé. Vous pouvez essayer de construire Busybox à partir des sources, car l'ensemble complet des commandes inclut install, comm et Nohup et uuencode/uudecode, qui pourrait servir d’alternative à base64. Cependant, même il manque des commandes comme groups, paste, nproc, truncate, etc.


Tu pourrais essayer. Faites quelque chose comme:

  1. Lien symbolique /bin/busybox vers les commandes coreutils prises en charge par busybox.
  2. Installer un paquetage réservé coreutils avec un numéro d'époque plus élevé que le paquetage Ubuntu coreutils, de sorte qu'une mise à jour du paquet ne se produise jamais pour coreutils .
  3. Installez uniquement les fichiers binaires du package coreutils actuel que Busybox n'a pas pris en charge.
  4. J'espère que le système ne s'effondre pas. Habituez-vous à la mise à niveau manuelle des commandes coreutils lorsque le package est corrigé.

Il n'est également pas possible de remplacer bash ou binutils. Bash offre une syntaxe beaucoup plus riche que Busybox ash. Et pour autant que je sache, binutils n’a rien de commun avec Busybox.


Ubuntu n’est tout simplement pas le système que vous voulez, si vous êtes préoccupé par l’espace . Regardez quelques-unes des alternatives mentionnées dans cette publication du super utilisateur .

2
muru