Método rápido usando ferramentas POSIX para gerar um arquivo aleatório

Método rápido usando ferramentas POSIX para gerar um arquivo aleatório

Então, estou usando uma placa em um ramfs que está executando um kernel Linux básico que é praticamente compatível com POSIX (com busybox). Para alguns testes de unidade de disco, estou tentando gerar um arquivo aleatório grande (da ordem de um Gigabyte).

Atualmente o que estou fazendo é o seguinte:

dd if=/dev/urandom of=./basefile bs=1M count=10
for i in {1..100}; do cat ./basefile >> ./testFile; done

Assim tenho uma solução prática que atende às minhas necessidades.

No entanto, em uma nota mais acadêmica, existe uma maneira eficiente de gerar arquivos completamente (psuedo) aleatórios usando apenas utilitários POSIX? Openssl não está instalado. Para efeito de comparação, o comando acima é executado em 23,5s, enquanto o comando abaixo é executado em 3m3.179s:

dd if=/dev/urandom of=./testFile bs=1M count=1000

informação relacionada