lançamento de pacote com a implementação de um conjunto de utilitários padrão UNIX, projetados como um único arquivo executável e otimizados para consumo mínimo de recursos do sistema com tamanho definido inferior a 1 MB. A primeira versão do novo branch 1.32 está posicionada como instável, a estabilização completa será fornecida na versão 1.32.1, que é esperada em cerca de um mês. O código do projeto é distribuído sob a licença GPLv2.
A natureza modular do BusyBox permite a criação de um único arquivo executável unificado contendo qualquer conjunto de utilitários implementados no pacote (cada utilitário está disponível como um link simbólico para o arquivo). O tamanho, a composição e a funcionalidade da coleção de utilitários podem variar dependendo das necessidades e capacidades da plataforma embarcada para a qual está sendo desenvolvido. O pacote é autocontido e pode ser vinculado estaticamente com o uclibc para criar um sistema funcional sobre o kernel. Linux Basta criar alguns arquivos de dispositivo no diretório /dev e preparar os arquivos de configuração. Comparado à versão anterior, 1.31, o consumo de RAM de uma instalação típica do BusyBox 1.32 aumentou em 3590 bytes (de 1011750 para 1015340 bytes).
BusyBox é a principal ferramenta no combate às violações da GPL no firmware. The Software Freedom Conservancy (SFC) e Software Freedom Law Center (SFLC) em nome dos desenvolvedores do BusyBox, ambos por meio , e desta maneira acordos extrajudiciais influenciaram repetidamente com sucesso empresas que não fornecem acesso ao código-fonte dos programas GPL. Ao mesmo tempo, o autor do BusyBox faz o possível para contra tal protecção - acreditando que isso arruína o seu negócio.
As seguintes alterações são destacadas no BusyBox 1.32:
- Novo comando adicionado Executar scripts a partir de um Mimfile específico (algo que lembra uma versão simplificada do utilitário make);
- O utilitário find foi atualizado para incluir a opção "-empty" para verificar arquivos vazios;
- O utilitário wget possui um limite expandido no número de redirecionamentos e implementou suporte para verificação de certificados TLS quando ENABLE_FEATURE_WGET_OPENSSL falha;
- Adicionado suporte correto para lista de padrões (pattern_list) ao grep e adicionada a opção "-R" (processamento recursivo do conteúdo do diretório);
- Corrigidos problemas que ocorriam durante a compilação no Clang 9 e eliminados os avisos do compilador;
- Diversas correções foram propostas para os shells ash e hush, visando melhorar a compatibilidade com outros shells. O recurso de autocompletar comandos internos foi adicionado ao ash e ao hush. Novos comandos internos foram estabilizados no ash.
- O utilitário fdisk agora oferece suporte a partições HFS e HFS+;
- Na inicialização, foi aprimorado o tratamento de condições de corrida ao receber sinais;
- Na ferramenta para monitoramento visual dos parâmetros do sistema Adicionado formato de saída "%NT" (alinhamento de tempo com zeros);
- A capacidade de processar e exibir uma lista de CPUs foi adicionada ao taskset (opção "-c");
- No tar, o comportamento da opção "-a" foi alterado, que, em vez de habilitar a compressão "lzma", agora está associada à detecção automática pela extensão do arquivo;
- udhcpc6 adicionou suporte para o "» para DHCPv6 (o servidor apenas fornece parâmetros de rede sem atribuir um endereço);
- O nslookup agora lida com respostas sem registros RR e adiciona suporte para registros SRV;
- Os novos comandos "showmacs" e "showstp" foram adicionados ao brctl;
- Adicionado suporte para o parâmetro "servidor de retransmissão" ao dhcpc;
- Adicionada uma configuração ao syslogd para exibir a hora com precisão de milissegundos;
- No httpd, ao executar no modo NOMMU, é permitida a instalação de um diretório home diferente e a opção '-h' tem seu funcionamento garantido ao iniciar um processo em segundo plano;
- O xargs agora lida melhor com argumentos entre aspas e garante o comportamento correto da opção "-n";
- Corrigidos erros nos utilitários grep, top, dc, gzip, awk, bc, ntpd, pidof, stat, telnet, tftp, whois, unzip, chgrp, httpd, vi e route.
Além disso, no mês passado liberar , um análogo do BusyBox, desenvolvido pelo ex-mantenedor do BusyBox e sob licença BSD. O principal objetivo do Toybox é fornecer aos fabricantes a capacidade de usar um conjunto minimalista de utilitários padrão sem abrir o código-fonte dos componentes modificados. De acordo com as capacidades da Toybox até agora provenientes do BusyBox, mas 272 comandos básicos (204 totalmente e 68 parcialmente) dos 343 planejados já foram implementados.
Dentre as novidades do Toybox 0.8.3 podemos destacar:
- Adicionados os novos comandos rtcwake, blkdiscard, getopt e readelf;
- В «make root» обеспечена возможность создание рабочего загрузочного окружения только на основе ядра Linux и утилит Toybox, которое может быть загружено при помощи собственного init-скрипта;
- Adicionado suporte inicial para módulos com implementações separadas de utilitários que não estão incluídos no pacote principal do ToyBox;
- O interpretador de comandos toysh está 80% completo (não há suporte para funções, histórico, controle de terminal, tarefas de trabalho, $((math)), modelos);
- Adicionada a possibilidade de adicionar opções a diversos utilitários, incluindo patch, cal, cp, mv, lsattr, chattr, ls, id, netcat e setsid.
Fonte: opennet.ru
