How to put Desktop on External Drive/Non-System Partition

aliasdesktopexfatmulti-bootsymlink

Is it possible to get something like a symbolic link/alias to direct to another folder on an external hard drive and still have the files display on the desktop?

I used:

sudo rm -rf ~/Desktop
sudo ln -s /Volumes/<partition_label>/Desktop ~/Desktop

But the Desktop is just blank, and when I drag files onto the Desktop, they disappear and are copied to /Volumes/<partition_label>/Desktop

I recently tried replacing the Desktop with an alias instead, but I now only get a cancel icon popping up next to the cursor when I drag a file over it. The partition is exFat so it's compatible with my tri-boot. I'm doing this so files are automatically available on each Desktop.

Any ideas to get this working?

I was also thinking about an alternative, something that automatically moved a file to /Volumes/<partition_label>/Desktop/<file_name> when it was dragged to ~/Desktop and replaced with a symbolic link or alias on ~/Desktop. Is that a viable alternative?

Best Answer

You can create a folder hard link using coreutils. Remove the symlink you created and install Homebrew if you don't already have it, then brew install coreutils and use:

sudo gln /Volumes/<partition_label>/Desktop ~/Desktop

(Be careful with removing hard links, since the destination will be deleted if you delete normally. To delete a hard link, use unlink ~/Desktop.)