Observe que find chamará a ação -exec para todos os arquivos que encontrar.
Se você executar tar -cvf file.tar {} para cada arquivo find outputs, isso significa que você sobrescreverá file.tar todas as vezes, o que explica por que você acaba com um arquivo que contém apenas anaconda.storage.log - é o último arquivo find saídas.
Agora, você realmente deseja anexar os arquivos ao arquivo, em vez de criá-lo toda vez (isso é o que a opção -c faz). Então, use o seguinte:
find var/log/ -iname "anaconda.*" -exec tar -rvf file.tar {} \;
A opção -r é anexada ao arquivo, em vez de ser recriada sempre.
Observação: Substitua -iname anaconda.* por -iname "anaconda.*" . O asterisco é um curinga e pode ser expandido pelo seu shell antes que find o veja. Para evitar essa expansão, coloque o argumento entre aspas duplas.
Quanto a tar remover o líder / : O arquivo deve conter apenas nomes de arquivos relativos . Se você adicionasse arquivos com um / inicial, eles seriam armazenados como nomes de arquivos absolutos /var/… no seu computador, por exemplo.
IIRC isto é simplesmente uma precaução para tar implementações além do GNU, e é mais seguro desta forma porque você não sobrescreverá seus dados reais em /var/… quando você extrair o arquivo se ele contiver nomes de arquivos relativos.