TipBITS: Replace a Shared Dropbox File without Changing Its Link

That unwanted Dropbox desktop app was the last straw for me. I loved Dropbox when it first came out. It was easy to use and it worked without thinking about it.

Over the years, Dropbox became more complicated. Sharing actually became more difficult. More features were added. And the price kept increasing. That Desktop app, installed without my permission and popping up without me asking, made me end my Dropbox subscription.

I upped my iCloud subscription, and I moved everything to iCloud. (Word o’ Warning: iCloud doesn’t backup a directory named Dropbox. You have to change its name.)

I’m feeling similar, though since the desktop app can be disabled (or at least turned off as the default, that didn’t bother me that much other than it’s a sign that Dropbox no longer cares about its users (at least the old ones – they’re going after the enterprise now).

What’s really pissing me off is that I used none of the new features, and all they do is interfere with what made Dropbox so great (its simplicity and efficiency). I just had a bunch of trouble with Dropbox this past week. Syncing seemed to be stuck and when I went to Activity Monitor, I discovered like 30 items with Dropbox in the name. There were about 20 “Dropbox Web Helper” processes, each using 50-100MB of memory, plus several Finder extensions and I don’t know what all. The main Dropbox app was using over 1GB of ram. That’s absurd. I have Microsoft OneDrive installed and it uses 200MB of ram total. Dropbox used to be like that, but all the new features are making it suck.

I forced everything to quit and restarted Dropbox and it started syncing again. On the main Mac things were now well. But then I discovered on one of my other Macs, Dropbox had apparently quit and stopped syncing at some point in the past few weeks. When I went to relaunch it, it claimed it would take 2 days to sync! (I have slow satellite internet and when I just checked it now it still says 5292 files and 2+ days left – even though it’s been syncing for 24 hours already.)

Since I was in the middle of a work project and Catalina wouldn’t let me run certain critical 32-bit apps, I needed to run them on this older Mac – but the data was on Dropbox and not synced. I ended up having to do old-fashioned sneakernet (using a thumb drive) to take files to the old Mac, process them, and bring the processed files back to the new Catalina Mac.

Very annoying, to say the least, and since my workflow is dependent upon Dropbox which has suddenly proven to be unreliable, I am now seriously considering abandoning what used to be the #1 app/service on any Mac I use. (I love to use multiple Macs and share all my work between them via Dropbox. In theory this means I can work on any Mac and each has all my critical files.)

My question is: how reliable/fast has iCloud sync been for you? When it first came out a few years ago I tried it and it was terrible – it would take 10+ minutes for a file to show up on a synced computer, and that was if it worked. I have used it a few times more recently and seemed much better, but I haven’t done any testing or tried it with many gigabytes of data like I use with Dropbox. Have you found it works pretty well?

Obviously I’ll do some personal testing, but before I try moving my whole Dropbox workflow over, I thought I’d get some feedback and see how it is working for others.

I am retired now, so I don’t have a lot of syncing between multiple machines. Between my iPhone and Mac, it works pretty good. I create a doc on my Mac, edit it on my iPhone, and the edits show up on my Mac. I wish Apple could get the standard fonts between the two platforms synced.
When I had an iPad involved, it worked okay, but it died right before iOS 13 came out, and iCloud seems much improved with this last OS update.

However, last week there was a document on my Mac’s desktop that I saw in the Files App on my iPhone, but couldn’t download it to an e-mail at that moment. Two hours later, it was fine.

My complaint: It’s Apple only. Plus, it involves a mysterious iCloud directory that only the Finder can see. Pathfinder doesn’t work with iCloud.

I have friends who use Microsoft’s OneDrive as a Dropbox replacement. Syncing is great. Microsoft has it down to an art, but it’s not that simple Dropbox folder sync and forget w all use to love. At least OneDrive is multiple platform.

I received the same email a few weeks back and I ended up doing what you did. I put the files in Dropbox and the symlinks to them in other parts of Macs’ file systems.

This seems to work, but I’m not a huge fan. Often the file has a “natural” location and I use Dropbox merely for sharing. This setup reverses that logic. I see why Dropbox might not want to be treated as a mere syncing service, but that is what I want from them.

So yes, I am too thinking about how to get rid of their bloated app that used to be so great. What is holding me back right now is that I also like to use Dropbox for URL sharing with non-Dropbox users. Does iCloud allow for that? Is iCloud really good? Does it sync well? I have to say when it comes to services especially online/network/sharing, I have medium at best faith in Apple.

Okay something very strange and very bad just happened with Dropbox’ behavior. I don’t recall seeing this behavior even 24-48 hours ago. Are they reading this thread?

Now, Mac aliases to folders no longer sync properly. I’m not talking about symlinks. The folder aliases now just show on the “other” Macs as a generic icon of kind “Document”. When I double click them, it says “Item ‘XXX’ is used by macOS and can’t be opened.”
40
The copy on the “main” Mac is still fine. Changes to the file NAME still sync bidirectionally just fine.
There is one exception where one of the “other” Macs still shows a folder alias that works properly. In that case, the copy on the MAIN Mac is the one that is broken. Perhaps that alias was originally created on the “other” Mac instead of the main Mac?

I’m wondering if Dropbox decided that it does not want to sync Mac alias files and that it would leave them untouched on the original Mac, but would destroy their usability on any Macs to which they had been synced?

You will recall me complaining above that this broken folder alias behavior on iOS was causing me a lot of grief, and that I wished Dropbox would fix it. Well, it seems they did the opposite. They took the fact that is was at least working on macOS and chose to BREAK that to match iOS.

This is very bad.

I’ve not actually done it yet, as the current setup continues to work.

I agree that my suggested method is aesthetically impure. On the other hand, there are troubles with symlinks in DB’s folder, as I now have them. In Finder, DB doesn’t realise that it is in fact syncing the folders to which the symlinks point so handy options such as right-clicking to “copy dropbox link” don’t work; links have to be obtained from the Web interface. DB also gives disconcerting messages about deleting a file from syncing if it’s moved from a “normal” folder, inside the DB folder, into one that is at the other end of a symlink. These are irritations rather than anything more serious, though.

I don’t see the issue with the app, however. If you disable it, the interface on the Mac looks exactly as it ever did, at least to me.

Jeremy

A couple of years ago I decided to stop paying for Dropbox and move to OneDrive, since I was paying the yearly Office 365 subscription fee anyway. I had kept the DropBox account at the free tier, mostly because I was using it to sync with my financial app (MoneyDance), which supports DropBox sync. And I did grumble a bit earlier this year when DropBox limited free accounts to only three devices (though I understand the decision), but it still worked fine for MoneyDance. And OneDrive mostly worked great, but this year I noticed that on the iOS app I wasn’t seeing files that I knew were on OneDive in their app on my iPad (or on the Files app if I browsed for them using it.) These files that were syncing properly between my four Macs, but not seeing them on iOS is too much of a problem for me - I frequently travel without a computer, and I need to be able to see all of my files. (OneDrive also has some more restrictive file naming rules than have APFS, HFS+, or DropBox, but I was generally able to get around that - if I noticed the error message when it tried to sync.)

So I just paid again for DropBox. Files always sync, I have turned off the unwanted desktop app, I have turned off its accessibility access and always deny the app full admin access when it updates itself, but I can live with that, for now. (Referring to the issue in this article: https://applehelpwriter.com/2016/08/29/discovering-how-dropbox-hacks-your-mac/ and the solution: revealing Dropbox’s dirty little security hack | )

As for a syncing service that works with symlink folders, I found that Sync.com does what I want it to do - namely, I can put a symlink to a folder outside its default sync folder and it will follow the alias and sync those files to my other computers. It seems dopey to have four different sync services at one time (DropBox, OneDrive, Sync.com, and iCloud Drive), but I use them for different things. DropBox remains where I keep the files I work with most, OneDrive has all my MS Office (mostly Excel) docs, and iCloud Drive has files with sensitive information.

As for the question of whether iCloud Drive can replace DropBox/OneDrive, I am still not ready to go there 100%. DropBox does have that great feature of storing 30 days worth of file versions that iCloud Drive lacks, and it’s far easier to backup those services to another backup service (I use Arq) than iCloud Drive (though I did find the location of iCloud Drive syncing in my library folder, it should be easier than that, OR Apple should offer a way to get back accidentally deleted or overwritten files.)

Over the weekend, it seems, Dropbox have implemented the changes to their handling of symlinks which they had heralded in their emails. In case anyone is interested, this is what happened and how it could be fixed.

To recap: I have for many years been syncing folders between my two Macs, using DB, by putting symlinks to those folders in the DB folder on each of the Macs (it was necessary, or at least a good idea, to pause syncing while creating the symlinks, for reasons explored earlier in this thread). Although, to be fair to them, DB had warned against the practice, it has worked flawlessly for a long time.

This weekend, I noticed that when I used the DB app on my iPhone, or looked at my DB stuff using web access, things had changed. Files had appeared which bore the names of the symlinks, and folders had appeared which bore those names with “ (Symlink Backup Copy)” appended. The DB folders on my Macs looked as they ever had, but syncing had stopped.

I have done the following:

  1. Pause syncing.
  2. Using the web interface, delete the symlink files and the renamed folders.
  3. On the Macs, rename the folders in their original locations and then move them into the DB folder.
  4. Restart syncing.
  5. Create symlinks in the folders’ original locations, pointing at their new locations in the DB folder.

The need for renaming at step 3 was a surprise. I found that if I used the original names, some or all of the contents would acquire a red “cross” icon in Finder, and not only would they not sync, but DB seemed unable to get past them to sync other contents. Which of the contents did or did not sync seemed entirely random. Happily, the symlinks can of course bear the original names.

Thus far, all seems well, but setting it all up again gave me an uncomfortable hour or two. I suppose I should have heeded the warnings earlier.

FWIW.

Jeremy

1 Like

I honestly do not understand the problem that is being solved here.

The first time I wanted to update a Dropbox file to which I had already given someone the URL, I wondered whether replacing the file would change its link? We’re talking at least ten years ago. I tested the scenario and the Dropbox link didn’t change so I didn’t give it any more thought.

This TidBITS article made me think perhaps Dropbox had changed recently. I’ve just re-tested the basic scenario and the Dropbox link still doesn’t change.

Here’s a blow-by-blow for the folks following along at home to play “spot my mistake”:

  1. Prepare a file “TestFile.txt” on the Desktop.
  2. Checksum the file (to establish a baseline).
$ md5 Desktop/TestFile.txt 
MD5 (Desktop/TestFile.txt) = 2466e96af8068f2c340129a81109178c
  1. Use the Finder to copy (option+drag) the file into Dropbox into a sub-folder called “TidBITS Test”.
  2. Verify that the copy inside Dropbox has the same checksum:
$ md5 "Dropbox/TidBITS Test/TestFile.txt" 
MD5 (Dropbox/TidBITS Test/TestFile.txt) = 2466e96af8068f2c340129a81109178c
  1. In the Finder, right-click on the file within the Dropbox structure and choose “Copy Dropbox Link” then paste that link here to record it:
https://www.dropbox.com/s/fxjh5go4u3jcz1n/TestFile.txt?dl=0
  1. Edit the original on the Desktop to change it then recalculate the checksum:
$ md5 Desktop/TestFile.txt 
MD5 (Desktop/TestFile.txt) = 4cbf2dc65a82f91f42b0774c42a37d01
  1. In the Finder, copy (option+drag) the modified file into Dropbox. This gets the Finder alert «An older item named “TestFile.txt” already exists in this location. Do you want to replace it with the newer one you’re moving?». Click “Replace”.

  2. Verify the checksum of the replaced file:

$ md5 "Dropbox/TidBITS Test/TestFile.txt" 
MD5 (Dropbox/TidBITS Test/TestFile.txt) = 4cbf2dc65a82f91f42b0774c42a37d01
  1. In the Finder, right-click on the just-replaced file within the Dropbox structure and choose “Copy Dropbox Link”, then paste that link here to record it:
https://www.dropbox.com/s/fxjh5go4u3jcz1n/TestFile.txt?dl=0

The URL is the same even though the file changed. No smoke, no mirrors, nothing up my sleeve. :innocent:

Granted, it is possible that the URL persistence I see has something to do with the way I normally work with files I intend to share via Dropbox. I consider the version that is outside Dropbox to be the master and I copy the updated version back into Dropbox using the Finder. Even if the version inside Dropbox was the only copy, I would first copy what was inside Dropbox onto the Desktop to work on it, then copy the updated version back into Dropbox. Why? Because, back in the day, I was on a very slow aDSL link and I did not want Dropbox constantly resynching partial edits. It just seemed smarter to work outside of Dropbox and only ever let it see the final result. In short, it’s a habit.

This is not peculiar to .TXT files. I routinely re-generate PDFs (eg from Pages or InDesign) and replace what is in Dropbox. Ditto photographs and other images. Dropbox URLs aren’t affected.

I don’t think it’s peculiar to Finder copying either. I often copy/move files around via Terminal commands or shell scripts where Dropbox is on the receiving-end. That doesn’t muck-up Dropbox URLs either.

The way I read a Dropbox URL is:

https://www.dropbox.com/«semi-invariant»/«folder identifier»/«file name»?«options»

I don’t understand the «semi-invariant» part, except to say that when I first started using Dropbox this was “u” and is now “s”.

I think the key to URL persistence is the «folder identifier». As long as the «folder identifier» and «file name» within the folder do not change, I doubt that a Dropbox URL will break.

Anyone spot any flaws in this reasoning?


I wholeheartedly agree with all the comments about the new Dropbox app. First thing I did when it sprang to life was to turn the thing off. But I have to say that that’s pretty much my approach to any Dropbox “improvement”. I don’t think I can name a single Dropbox change that I have liked and for which I haven’t immediately searched for a workaround or kill switch.

You should hear my spouse on the topic. Every time Dropbox “does something” she salts the ground they walk on with her curses and demands to know when we can decamp to sync dot com.

Interesting experiment, and when I try to recreate what you did, I get inconsistent results.

In each case, I started with a file in Dropbox. I copied its Dropbox URL, and then I copied it out to the Finder, made a change, and copied it back, replacing the original. I did this three times, and the first two, I got the results you did, with the Dropbox URL staying the same. The third time I got what I expected, which is that the URL changed. I don’t have time to track this down more right now, but the only difference I can see right now is that the first two files were in a non-shared folder called Public (left over from when Dropbox had a real Public folder) and the third was in a folder that others share; can’t remember who the owner is offhand, but it may not be me).

Test 1:

Dropbox - File Deleted - Simplify your life
Dropbox - File Deleted - Simplify your life

Test 2:

Dropbox - File Deleted - Simplify your life
Dropbox - File Deleted - Simplify your life

Test 3:

Dropbox - File Deleted - Simplify your life
Dropbox - File Deleted - Simplify your life