If you have the original links you can generate a script to recreate them by running the follow
Code:
ls -l $(find . -type l) |awk '{print "ln -s "$11,$9"; chown -h "$3":"$4,$9} >mk_links.sh
The find within that looks for symbolic link files. That is encapsulated in $() so the ls -l at start will show you all the details of the files. The awk then parses the ls -l output so that uses field 11 (the target) and field 9 (the slink file) as input to "ln -s" to create the link. The chown -h is then used to set same owner and group (fields 3 and 4) on the slink file that the original slink had.
Example:
In /mylinks/subdirectory if I have an slink:
lrwxrwxrwx 1 billybob dba 55 Jul 13 2016 myslink -> /home/ralph/realfile
The above command run will output a line in my_links.sh:
ln -s /home/ralph/realfile myslink ; chown -h tstaappl:dba myslink
The original command line that created my_links.sh would have an entry for each slink found.
You can copy my_links.sh to the new server in the directory, make it executable and run it.
Note the above assumes that all the existing slinks found are more than a day old. You'd have to adjust it if they weren't because the time field would be used instead of the date fields and adjust the order of the remaining fields. It also assumes you've created the same user(s) and group(s) on the new server as you'd had on the original that were used for slink files.