I'm a big fan of Zotero. One of the greatest features is that you can use your own WebDav-Server to store and sync PDF files. There is also this tutorial on how to install your own Zotero server [1], but I don't know how to config Zotero to use it. Anyone knows?
[1]: http://git.27o.de/dataserver/about/Installation-Instructions...