dpkg can be instructed not to ask for confirmation when replacing a configuration file (with the --force-confdef --force-confold options). Interactions can, however, have three other sources: some come from APT itself, some are handled by debconf, and some happen on the command line due to package configuration scripts (sometimes handled by ucf).
-y (ou --assume-yes) diz ao APT para considerar a resposta a todas as perguntas como sendo “sim”.
debconf merece mais detalhes. Este programa foi, desde sua concepção, projetado para controlar a relevância e a quantidade das perguntas mostradas ao usuário, assim como a forma como são exibidas. É por isto que sua configuração requer uma prioridade mínima para perguntas; apenas perguntas acima da prioridade mínima são exibidas. O debconf supõe a resposta padrão (definida pelo mantenedor do pacote) para perguntas que ele decidiu pular.
noninteractive, toda interface de usuário será desabilitada. Se um pacote tenta exibir uma nota informativa, ele vai ser enviado ao administrador via email.
debconf, use a ferramenta dpkg-reconfigure do pacote debconf; o comando relevante é o dpkg-reconfigure debconf. Note que os valores configurados podem ser temporariamente sobreescritos com variáveis de ambiente quando necessário (por exemplo, DEBIAN_FRONTEND controla a interface, como documentado na página de manual debconf(7)).
dpkg. infelizmente não existe solução padrão, e nenhuma resposta é substancialmente melhor que outra.
/dev/null nela com comando </dev/null, ou alimentá-la com um fluxo infinito de newlines. Nenhum destes métodos é 100% confiável, mas eles em geral levam a respostas padrão sendo preenchidas, uma vez que a maioria dos scripts consideram a ausência de resposta como uma aceitação do valor padrão.