Moving postgresql data directory
First make sure the file exists really in that location. Run ls $PGDATA if there is a mistake in the environment variable you will either see the wrong files or get an error because the path does not exist.

Then make sure the owner of the parent directory /home/destination_data_directory and all directories and files under match the user you start pg_ctl under. If they are not either use 

su postgres_user


to switch to the right user before running pg_ctl or use 

chown -R postgres_user /home/destination_data_directory


to change the owner of the directory and everything under it.