I ran into an annoying problem last week. I was trying to add a linked server and I was getting a "The server 'MyServerName' already exists" error even though that was not the case. There was no other linked server defined and nobody before me even tried adding a linked server. Eventually I found out that this problem was caused by replication. At one point we were replicating from this server to the server I was trying to link to. Replication set up the subscriber as a remote server and since both remote servers and linked servers are stored in the same system table (sysservers in master), you cannot link to a server that's already been defined as a remote server. I wasn't able to drop the remote server either because SQL Server still thought it was used by replication. I ended up running every possible sp_drop* function to completelly remove all replication tidbits but I still couldn't get rid that remote server entry.
I eventually got around this by creating an alias with the Client Network Utility and using the aliased name instead of the server name. Since then I found out that there is another workaround published in the Knowledge Base, it involves setting up the remote server to allow data access and mapping local users to remote users.