Trash Trouble with Symbolic Links from /home to Separate Disk

I began notic­ing recent­ly that some­times when try­ing to send a file to the trash, I was told that it could­n’t be moved there and that I’d have to delete it entire­ly to get rid of it. I did­n’t real­ly think any­thing of this at first, until I began to sus­pect that it was only hap­pen­ing with files in my /home direc­to­ry.

My /home direc­to­ry is on its own par­ti­tion on a stan­dard hard disk. The rest of the file sys­tem is on anoth­er par­ti­tion on an SSD. In order to ful­ly reap the speed ben­e­fits of an SSD, I sym­bol­i­cal­ly linked as many non-per­son­al direc­to­ries as I could from /home to /var/jay on the SSD. These includ­ed ~/.local, ~/.cache, ~/.gconf, ~/.mozilla, etc.

I did­n’t real­ly know much about the way Linux/GNOME han­dles Trash. Files delet­ed from a third inter­nal hard disk or from USB sticks would be moved to /.Trash-1000 on that device, while appear­ing in “Trash” in Nau­tilus. Files from a user’s home direc­to­ry, how­ev­er, don’t go to /home/.Trash-1000, or even /.Trash-1000 — instead, they go to ~/.local/share/Trash. Because in my set­up this direc­to­ry was on the SSD rather than the hard disk with the /home par­ti­tion, GNOME refused to move it there, since that would require copy­ing from one disk to anoth­er, which GNOME’s devel­op­ers (smart­ly, I think) believe would be alarm­ing­ly time-con­sum­ing for some­one who’s just try­ing to delete some files — they should­n’t expect to see a copy dia­log grind­ing away.

In order to try to fix this, I made ~/.local/share/Trash into a sym­bol­ic link itself, back to the /home par­ti­tion at ~/Trash. After this change, things were get­ting trashed prop­er­ly — at least, I was­n’t asked to delete them entire­ly — but they weren’t show­ing up in Nau­tilus’s Trash view. I don’t know how Nau­tilus makes itself aware of all the trash fold­ers spread across dif­fer­ent devices, but for what­ev­er rea­son it was­n’t pick­ing up on this one, even after sev­er­al reboot cycles.

Final­ly I gave up and moved ~/.local back onto the same par­ti­tion as /home, and now every­thing’s back to nor­mal. But I’d still like to know if it’s pos­si­ble to keep ~/.local on a sep­a­rate disk while retain­ing GNOME’s and Nau­tilus’s ordi­nary trash behav­ior.