Quando o verbo FAZER se refere a tempo transcorrido, ele é impessoal. Ou seja, ele não tem sujeito com quem concordar e então deve ser empregado sempre no singular. Por isso, devemos dizer: faz 20 anos que o conheço/ Fazia três anos que ele não tirava férias.
Na frase “Há muito tempo não o vejo”, também é com agá, pois podemos dizer: “Faz tempo que não o vejo”. Já na frase “Estamos a dois minutos de casa”, o A deve ser escrito sem agá, pois não pode ser substituído por um verbo.
A locução "a tempo" significa "na hora certa", "no momento oportuno"....Comentário do tipo "O correto é A TEMPO e não HÁ TEMPO" é muito mais que ficção.
A utilização de há tempo atrás é redundante e deve ser evitada uma vez que o verbo haver, empregado no sentido de tempo decorrido, já possui essa significação. Use a Locução a tempo (com a preposição a) quando esta estiver indicando distância ou tempo futuro.
Há anos é a forma mais usada, indicando tempo passado, ou seja, tempo que já decorreu: Eu não o vejo há anos! A anos é utilizado quase sempre com a preposição daqui, indicando tempo futuro, ou seja, que ainda não decorreu: Só daqui a anos saberemos a verdade.