Binários tipo Busybox que ext3 e ext4 suportam?

2

Estamos construindo uma ferramenta agora que inclui a inicialização de um ambiente Linux minúsculo via PXE, e fazendo com que ela execute várias operações de configuração do sistema sem carregar um sistema maior. (Formatando discos, criando sistemas de arquivos, etc.) Planejamos usar o BusyBox neste sistema, já que ter a maioria das ferramentas do sistema em um minúsculo binário estático é obviamente ótimo neste contexto.

Problema: nós tivemos uma mudança de requisitos e precisamos de suporte para criar sistemas de arquivos ext3 (e talvez ext4), que o BusyBox não suporta. Alguém está ciente de uma ferramenta binária similarmente auto-suficiente que pode ser usada para criar esses sistemas de arquivos? Ele não precisa também ser BusyBox (posso incluir algumas ferramentas extras), mas não pode exigir um monte de bibliotecas dinâmicas.

    
por ajdecon 27.01.2012 / 05:00

2 respostas

5

Compile e2fsprogs com link estático e escolha os binários que você precisa dele. Você provavelmente só precisa do mke2fs (que faz todos os tipos de sistemas de arquivos da série EXT - mkfs.ext4 é apenas um symlink para ele.

Se você não conseguir que a compilação estática funcione, "ldd mke2fs" mostrará pelo menos quais libearies você precisa instalar.

    
por 29.05.2012 / 04:00
2

Eu executei os seguintes comandos para compilar e2fsprogs pkg estaticamente para segmentar o ARM:

apt-get install gcc-arm-linux-gnueabi

wget http://kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v1.42.6/e2fsprogs-1.42.6.tar.bz2

tar -jxvvf e2fsprogs-1.42.6.tar.bz2

cd e2fsprogs-1.42.6

./configure CFLAGS='-g -O2 -static' CC=arm-linux-gnueabi-gcc  --host=arm-linux-gnueabi

make

Após uma compilação bem-sucedida, você encontrará o binário mke2fs sob o diretório misc/ . Para ter certeza de que você gerou o binário correto, verifique o formato binário:

$ file ./mke2fs*
./mke2fs: **ELF 32-bit LSB  executable**, **ARM,** EABI5 version 1 ...

Agora, copiei este binário como está para minha plataforma de destino.

Para formatar uma partição com ext4:

mke2fs -t ext4  /dev/xxx
    
por 03.08.2016 / 10:58

Tags