I had a similar problem to this. I needed two PCs, one on Ubuntu and another on Arch, to sync files through Unison but ran into the same permission denied error. Just for the sake of those who are having the same problem as I was, here's what I did:
First: Installed the same version of Unison on both PCs. This was a bit challenging as the one available on the software center was behind to what was readily available for Arch. So, I couldn't find a higher version for Ubuntu, so I replaced the one on Arch with a lower one instead. Found one here: http://zdia.de/downloads/unison-2.40.102-linux-x86_64. The same version is in the software center for Ubuntu.
Second: Followed the steps from here:
https://www.howtoforge.com/setting-up-unison-file-synchronization-between-two-servers-on-debian-squeeze
(Note: Arch was my server 1 and Ubuntu was my server 2.)
I ran into a problem in step 3 as I tried to ssh-copy. But it was resolved by changing "id_dsa.pub" into "id_rsa.pub" in the "ssh-copy-id -i $HOME/.ssh/id_dsa.pub root@192.168.0.101" line. Probably my fault, as I think I forgot to add "-t dsa". Anyway, try the original command first. IF you get an error, then change to rsa.
After following the steps above, I found I still couldn't get Unison to connect to the other server, neither can I log in (without Unison) through ssh to the other server. Finally,after hours of google searching, I was led to this page, and the answer given my Muru sealed the deal.
After applying it, I could now login via SSH to server 2.
So I ran Unison, and corrected the profile settings, and viola!