Suponho que o motivo seja seu ambiente cron . Talvez não saiba onde o comando psql é.
Para investigar o problema, tente adicionar outro script ao seu cron , com este comando:
#/bin/bash
which psql >> /tmp/investigation
Adicione este script a cron para que seja executado assim que possível.
Eu acredito em /tmp/investigation , você verá que o shell não pode encontrar o comando psql . Para fornecer shell com psql , você precisa adicioná-lo à variável PATH exatamente antes da execução do comando.
Leia também esta pergunta do wiki