scp links! wrong permissions

I had to copy /bin from one server to another because i accidently removed /bin ... now all copied and working but some of the soft links seems to have been created as file and their permissions set to 777 by default.. how can i recopy those ones? or change their permission to be same as the source server?

see below
source server:

lrwxrwxrwx 1 root root 4 Sep 27 11:47 sh -> bash
lrwxrwxrwx 1 root root 4 Sep 27 11:47 awk -> gawk
lrwxrwxrwx 1 root root 2 Sep 27 11:47 red -> ed
lrwxrwxrwx 1 root root 4 Sep 27 11:48 fgrep -> grep
lrwxrwxrwx 1 root root 4 Sep 27 11:48 egrep -> grep
lrwxrwxrwx 1 root root 10 Sep 27 11:48 tracert -> traceroute
lrwxrwxrwx 1 root root 10 Sep 27 11:48 traceroute6 -> traceroute
lrwxrwxrwx 1 root root 10 Sep 27 11:48 tcptraceroute -> traceroute
lrwxrwxrwx 1 root root 3 Sep 27 11:48 gtar -> tar
lrwxrwxrwx 1 root root 8 Sep 27 11:48 ypdomainname -> hostname
lrwxrwxrwx 1 root root 8 Sep 27 11:48 nisdomainname -> hostname
lrwxrwxrwx 1 root root 8 Sep 27 11:48 domainname -> hostname
lrwxrwxrwx 1 root root 8 Sep 27 11:48 dnsdomainname -> hostname
lrwxrwxrwx 1 root root 2 Sep 27 11:48 view -> vi
lrwxrwxrwx 1 root root 2 Sep 27 11:48 rview -> vi
lrwxrwxrwx 1 root root 2 Sep 27 11:48 rvi -> vi
lrwxrwxrwx 1 root root 2 Sep 27 11:48 ex -> vi
lrwxrwxrwx 1 root root 4 Sep 27 11:49 csh -> tcsh
lrwxrwxrwx 1 root root 21 Sep 27 11:50 ksh -> /etc/alternatives/ksh
lrwxrwxrwx 1 root root 4 Sep 27 11:51 mailx -> mail
[oracle@node01 bin]$ ls -ltr | grep vi
-rwxr-xr-x 1 root root 632912 Jun 12 2009 vi
lrwxrwxrwx 1 root root 2 Sep 27 11:48 view -> vi
lrwxrwxrwx 1 root root 2 Sep 27 11:48 rview -> vi
lrwxrwxrwx 1 root root 2 Sep 27 11:48 rvi -> vi
lrwxrwxrwx 1 root root 2 Sep 27 11:48 ex -> vi

target server:

[oracle@node02 bin]$ ls -ltr | grep vi
-rwxrwxrwx 1 root root 632912 Oct 5 11:52 rview
-rwxrwxrwx 1 root root 632912 Oct 5 11:52 view
-rwxr-xr-x 1 root root 632912 Oct 5 11:52 vi
-rwxrwxrwx 1 root root 632912 Oct 5 11:52 rvi
[oracle@node02 bin]$ ls -ltr | grep mail
-rwxr-xr-x 1 root root 84856 Oct 5 11:52 mail
-rwxrwxrwx 1 root root 84856 Oct 5 11:52 mailx
[oracle@node02 bin]$
 
scp -p source destination
-p  
Preserves modification times, access times, and modes from the original file. 

tried but it didnt work ...

[root@nodedb02 bin]# scp -p nodedb01:/bin/mailx /bin/
root@nodedb01's password:
mailx                                                                            100%   83KB  82.9KB/s   00:00
[root@nodedb02 bin]# ls -ltr | grep mail
-rwxr-xr-x 1 root root   84856 Jul 13  2006 mailx.orig
-rwxr-xr-x 1 root root   84856 Jul 13  2006 mailx
-rwxr-xr-x 1 root root   84856 Oct  5 11:52 mail
[root@nodedb02 bin]#

on the source the owner is mail but here it created it as root!! still the l in the beggining of the line is missing ( lrwxrwxrwx )
and didnt create it as a link

[oracle@source bin]$ ls -ltr | grep mail
-rwxr-xr-x 1 root mail   84856 Jul 13  2006 mail
lrwxrwxrwx 1 root root       4 Sep 27 11:51 mailx -> mail

Hi,

As of my knowledge, when your copying the directories, the "login user" will be the owner of the copied files and not the one in Source server.

Instead of copying the file as symbolic links, the whole file will be copied and you need to create the sysmbolic links explicilty after the copy.

Now my server is not booting.

I get screen saying (none)login: ... if I enter root and press enter it comes back with the same prompt again and again!!
it also mentioned of init=/bin/sh and init cant execute /etc/x11/prefdm
init id x respawning too fast�
tried rebooting from the console by doing ctrl + alt +del but comes back with /cant open /var/run/shutdown.pid

I tried the following but no joy!
Inserted the linux installation cd.. ( rescue mode)...
Checked the permission on /bin and it was set to ?r- -rw-rx tried to do chmod �R 775 but got error operation not permitted ...
Already had backup of /bin so Untar�d the /bin/bin.tar and tried to over write the /bin but got this error: can not overwite /bin bin not a directory...
For some strange reason /bin is not own by root the owner and group name are both numeric, So i tried chown �R root but keep getting user root does not exist!
If I do id.. i can see that i have logged on as root and it does exist in /etc/passwd