A tarefa é preservar a saída do log mesmo que um aplicativo exclua o arquivo de log.
Ao criar um segundo nome para o arquivo de log com ln , os dados no log estarão disponíveis sob dois nomes. Se um dos nomes for excluído, os dados ainda estarão disponíveis sob o outro nome.
Em um script:
log=/var/tmp/install.log
info=/tmp/info.log
ln -f "$log" "$info"
exec >"$log" 2>&1
Se $log não existir anteriormente, você precisará criá-lo com touch "$log" antes da chamada para ln .
Isto assume que ambos os nomes residem no mesmo sistema de arquivos.
Esta resposta não supõe que você esteja usando bash . Ele funcionará com qualquer shell sh -compatible.