could not read symbolic link error while executing pg_start_backup function in Postgresql DB
Somebody who was not the PostgreSQL operating system user (normally named postgres) messed with your data directory.
This directory should only contain symbolic links whose names are numbers (the object IDs of tablespaces), and those symbolic links (and the directories that they point to) must belong to postgres.
Put the person who created these files on the pillory (but that won't solve your problem).
One should never manually mess with the PostgreSQL data directory, so the safe way to recover would be to create a new, clean PostgreSQL cluster with initdb, use pg_dumpall to export the data from the one that was messed with and import the data into the new cluster. Then delete the cluster that was messed up.
If you know what you are doing, you might also be able to recover by deleting the offending files – but who knows what else was done to this data directory.