A ordem do argumento é
ln -s link-target new-link
Então você quer
ln -s /home/data/A /home/B
^--existing ^----new link
file/link
Atualização: eu tinha esquecido o -s
flag no meu exemplo, então ele estava tentando criar hard links, que passariam por links simbólicos para tentar apontar para o que o link estivesse apontando. Com links simbólicos, você pode aninhá-los o quanto quiser:
marc@panic:~/b$ touch z
marc@panic:~/b$ ls -l
total 0
-rw-r--r-- 1 marc marc 0 2011-10-31 13:36 z
marc@panic:~/b$ ln -s z y
marc@panic:~/b$ ln -s y x
marc@panic:~/b$ ln -s x w
marc@panic:~/b$ ls -l
total 0
lrwxrwxrwx 1 marc marc 1 2011-10-31 13:36 w -> x
lrwxrwxrwx 1 marc marc 1 2011-10-31 13:36 x -> y
lrwxrwxrwx 1 marc marc 1 2011-10-31 13:36 y -> z
-rw-r--r-- 1 marc marc 0 2011-10-31 13:36 z