Sortie du jeu minimaliste d'outils système BusyBox 1.32.

Présenté publication du paquet BusyBox 1.32 avec l'implémentation d'un ensemble d'outils UNIX standard, regroupés dans un seul fichier exécutable et optimisés pour une consommation minimale des ressources système, le tout pour une taille inférieure à 1 Mo. La première version de la nouvelle branche 1.32 est présentée comme instable, une stabilisation complète sera assurée dans la version 1.32.1, qui est attendue dans environ un mois. Le code du projet est distribué sous la licence GPLv2.

La nature modulaire de BusyBox permet de créer un fichier exécutable unique contenant un ensemble arbitraire d'outils réalisés dans le paquet (chaque outil étant disponible sous forme de lien symbolique vers ce fichier). La taille, la composition et la fonctionnalité de la collection d'outils peuvent être variées selon les besoins et les capacités de la plateforme embarquée pour laquelle la compilation est réalisée. Le paquet est autonome, pour une compilation statique avec uclibc, il suffit de créer quelques fichiers de périphériques dans le répertoire /dev et de préparer les fichiers de configuration pour créer un système fonctionnel au-dessus du noyau Linux. Comparé à la version précédente 1.31, la consommation de mémoire vive d'une compilation typique de BusyBox 1.32 a augmenté de 3590 octets (de 1011750 à 1015340 octets).

BusyBox est un outil clé dans la lutte contre les violations de la GPL dans les firmwares. Les organisations Software Freedom Conservancy (SFC) et Software Freedom Law Center (SFLC) agissent au nom des développeurs de BusyBox tant par le biais des tribunaux, que par le biais d'accords extra-judiciaires, ont de nombreuses fois su avoir un impact sur les entreprises ne fournissant pas l'accès au code source des programmes GPL. En même temps, l'auteur de BusyBox s'oppose fermement à cette protection, estimant qu'elle nuit à son activité. Dans la version BusyBox 1.32, les changements suivants sont notés :

Une nouvelle commande

  • mim a été ajoutée pour exécuter des scripts à partir d'un fichier Mimfile (qui ressemble à une version réduite de l'outil make); Dans l'outil find, une option « -empty » a été ajoutée pour vérifier les fichiers vides;
  • Dans l'outil wget, la limite sur le nombre de redirections a été étendue et le support de la vérification des certificats TLS a été implémenté lors de l'échec avec ENABLE_FEATURE_WGET_OPENSSL;
  • Dans grep, un support correct de la liste des motifs (pattern_list) a été ajouté et l'option « -R » (traitement récursif du contenu du répertoire) a été intégrée;
  • Les problèmes se manifestant lors de la compilation avec Clang 9 ont été résolus et les avertissements du compilateur ont été éliminés;
  • Les problèmes survenant lors de la compilation avec Clang 9 ont été résolus et les avertissements du compilateur ont été éliminés.
  • Une grande série de corrections a été proposée pour les shells ash et hush, visant à améliorer la compatibilité avec d'autres shells. Dans ash et hush, la possibilité d'autocomplétion des commandes intégrées par tabulation a été ajoutée. Dans ash, de nouvelles commandes intégrées ont été stabilisées.
  • L'outil fdisk prend désormais en charge les partitions HFS et HFS+ ;
  • Dans init, le traitement des conditions de course lors de la réception de signaux a été amélioré ;
  • Dans l'outil de surveillance des paramètres système nmeter le format de sortie « %NT » (temps aligné avec des zéros) a été ajouté ;
  • Dans taskset, la possibilité de traiter et d'afficher la liste des CPU (option « -c ») a été ajoutée ;
  • Dans tar, le comportement de l'option « -a » a été modifié, elle se rapporte désormais à l'auto-détection par l'extension de fichier au lieu d'activer la compression « lzma » ;
  • Dans udhcpc6, le support du mode «stateless» pour DHCPv6 a été ajouté (le serveur ne fournit que les paramètres réseau, sans attribution d'adresse) ;
  • Dans nslookup, le traitement des réponses sans enregistrements RR a été assuré et le support des enregistrements SRV a été ajouté ;
  • Dans brctl, de nouvelles commandes « showmacs » et « showstp » ont été ajoutées ;
  • Dans dhcpc, le support du paramètre « relay server » a été ajouté ;
  • Dans syslogd, un paramètre pour afficher l'heure avec une précision milliseconde a été ajouté ;
  • Dans httpd, en mode NOMMU, il est maintenant possible de définir un répertoire personnel différent et de garantir le fonctionnement de l'option ‘-h’ lors du démarrage en tant que processus en arrière-plan ;
  • Dans xargs, le traitement des arguments entre guillemets a été réglé et le comportement de l'option « -n » a été corrigé ;
  • Des corrections ont été apportées aux outils grep, top, dc, gzip, awk, bc, ntpd, pidof, stat, telnet, tftp, whois, unzip, chgrp, httpd, vi, route.

De plus, le mois dernier a eu lieu la sortie Toybox 0.8.3, un analogue de BusyBox, développé par un ancien mainteneur de BusyBox et distribué sous licence BSD. La principale vocation de Toybox est de fournir aux fabricants la possibilité d'utiliser un ensemble minimaliste d'outils standard sans divulguer les codes source des composants modifiés. En termes de fonctionnalités, Toybox reste pour l'instant en retard par rapport à BusyBox, mais 272 commandes de base (204 complètes et 68 partielles) sur 343 prévues ont déjà été mises en œuvre.

Parmi les nouveautés de Toybox 0.8.3, on peut noter :

  • De nouvelles commandes rtcwake, blkdiscard, getopt et readelf ont été ajoutées ;
  • Dans « make root », il est désormais possible de créer un environnement de démarrage fonctionnel uniquement basé sur le noyau Linux et les outils Toybox, qui peut être chargé à l'aide d'un script init personnalisé ;
  • Un support initial pour les modules avec des implémentations d'utilitaires distinctes, non incluses dans l'ensemble principal de ToyBox, a été ajouté;
  • L'interpréteur de commandes toysh est prêt à 80% (le support des fonctionnalités, de l'historique, de la gestion du terminal, des tâches en arrière-plan, $((math)), des modèles est encore manquant);
  • Le support d'options supplémentaires a été ajouté à divers utilitaires, y compris patch, cal, cp, mv, lsattr, chattr, ls, id, netcat et setsid.

Source : opennet.ru

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster