O padrão du
e ls
é o tamanho do bloco de 1024 bytes ao calcular o número de blocos. Como seu sistema de arquivos está configurado com blocos de 4K e o arquivo usa 4 desses blocos de 4K, ambos relatam 16 blocos de 1K usados.
du (1) manpage menciona este fato no final de sua seção de descrição, enquanto ls(1) não indica diretamente. No entanto, ambos os programas fazem parte do pacote GNU coreutils e suportam as mesmas opções de tamanho de bloco -B /, então acho que é provável que eles dependam da mesma implementação.
Se você deseja obter o número real de blocos usados, é necessário fornecer blocos de sistema de arquivos para ls
e du
.