cierto, ahora entiendo porque en el mensaje de error no aparecía ningún nombre de archivo y si la ruta:
Cita: Warning: unlink(../imagenes/miniaturas/) [function.unlink]: Permission denied in [...]
pues en sistemas *nix todo es archivo, incluso una carpeta, de ahí la advertencia...
en todo caso la función precisa sería
is_file() que comprueba que efectivamente se trate de un archivo, y además verifica su existencia...