We are aware of the issue with the badge emails resending to everyone, we apologise for the inconvenience - learn more here.

Forum Discussion

neilcothran's avatar
neilcothran
Helpful | Level 5
6 years ago

Syncing when using symbolic links

Hello,

I am having an issue concerning dropbox syncing when using symbolic links.

Using Windows 10 and the Dropbox app, recently downloaded / installed so I believe it is fully up to date.

On the "host" machine, rather than copying (and thus duplicating) all files to the Dropbox folder, I create a symbolic link in the Dropbox folder, using the command prompt:

>mklink /d Documents C:\<path_to_real_documents_folder>

This works fine, except that when files in _real_documents_folder  are changed, they do not get "synced" on Dropbox unless I "force" it.  I click the Dropbox icon, the lower left says "Up to date" .  Hover mouse and it changes to "Pause syncing".  I click that, then it says "Syncing paused".  Click again, and it then updates and syncs the files.

The result is that, without remembering to do this, the Dropbox copy never updates, (unless exited and restarted) either by "logging on" through the web site, or on another computer using the app and same login credentials.  If I do remember to do this, everything is fine.

Is there a way to get this to happen automatically?

Thanks.

 

  • Hi Neil, long story short, Dropbox doesn’t support symlinks and never has. 
     
    If they do work, it is purely luck, since the majority of the time it creates performance issues, permission failures and data loss.
     
    This article describes a little more about what symlinks could do if found in a Dropbox folder.
     
    Hope this helps!
  • Jhlewis's avatar
    Jhlewis
    New member | Level 2

    I have been backing up my Linux system by making links to important directories via symbolic links to them from within the Dropbox folder for the directors I want to be backed up. This was an effortless way of keeping an up-to-date backup on dropbox. This no longer works since Dropbox has removed of support for the above scheme. The suggestions made to reverse the links by storing system folders in the Dropbox folder can not work, it shows a total lack of understanding how Linux works, and in any case symbolic links are used everywhere, especially in system folders. Hard links seem not to work either as drop box crashes when I make them from the Dropbox folder. This user hostile change has forced me to implement scripts that call rsync. We're it not for the fact that Google drive is pathetically slow, I would have closed my Dropbox account, in fact some of my friends, windows and Mac users are experiencing the same problem and indeed have closed their accounts. I find this change to be petty minded, ignorant and inconsiderate. Obviously some one hadn't the faintest clue what customers do with Dropbox as a backup system.
  • Jay's avatar
    Jay
    Icon for Dropbox Staff rankDropbox Staff
    Hi Neil, long story short, Dropbox doesn’t support symlinks and never has. 
     
    If they do work, it is purely luck, since the majority of the time it creates performance issues, permission failures and data loss.
     
    This article describes a little more about what symlinks could do if found in a Dropbox folder.
     
    Hope this helps!
    • neilcothran's avatar
      neilcothran
      Helpful | Level 5

      Hi Jay,

      Many thanks for the response.

      Interesting .... I've not observed any of the issues mentioned in the article your link pointed me to.  The use of symlinks seems to work quite well, except for the "update" bug I originally mentioned.  As long as I remember to "force" the re-sync, everything falls out as I wanted, giving me the ability to "carry things around" from computer to computer without all the aggravation / overhead of copying to USB's etc which ends up duplicating data and creating version control headaches.

      After doing some more experimenting, I note that the problem as I've described is apparently uni-directional: Changes made on the "host" machine (the one with the symlinks in the Dropbox folder) need the "forced" update as described.  Changes from other computers as well as from the Dropbox web portal are reflected to the "host" machine vitually instantly, as long as it is online.  That accomplishes exactly what I intended: the ability to "carry work home" and voila, there it is on the office PC instantly.

      So far, so good.  But, what I've done thus far is shared only with myself; I've not tried sharing amongst others, simply because thus far I've not needed to.  But I suspect that the same thing would happen.

      Just My Humble Opinion, but it would perhaps be good if Dropbox could find a way to "officially" support the use of symlinks.  In the meantime, perhaps I can find some way to "trigger" the app to do the update thing.

      Again, thanks for your support.

       

       

       

       

      • Rich's avatar
        Rich
        Icon for Super User II rankSuper User II

        neilcothran wrote:

        The use of symlinks seems to work quite well, except for the "update" bug I originally mentioned.


        It's not a bug. When Dropbox is installed, it registers itself with the operating system to be notified of file changes within the Dropbox folder. It doesn't sync files at the other end of a symlink in real-time because the operating system isn't notifying Dropbox of those changes (because it's outside of Dropbox). It does sync when you force it to because Dropbox then scans all of the files in the Dropbox folder for changes, and when it reaches the symlink it follows it to the other end, scans the files and detects the changes.


    • jeff1054's avatar
      jeff1054
      Explorer | Level 4

      Hi Jay,

      Actually they do (or at least seem to so far) if created properly. This obviously fails:

      % cd ~/Dropbox ;   ln -s ~/mydir ./mydir

      But if the symlink is from outside Dropbox to a file that is inside Dropbox, it seems to work fine. But only if the link is created carefully. Curiously, this fails:

      % cd ~/Dropbox ;  ln -s myDropboxDir ~/mydir

      And this fails:

      % cd ~/Dropbox ; ln -s myDropboxDir mydir ; mv mydir ~

      BUT this works:

      % cd ~ ; ln -s ~/Dropbox/DropboxDir mydir

      You end up with a directory (actually a soft link) ~/mydir that works perfectly well, with contents accessible on all machines using the Dropbox account.

      Going end to end:

      mac1> cd ~/Dropbox; mkdir myDropboxDir ; cd ~ ; ln -s Dropbox/myDropboxDir ./mydir

      Makes a perfectly functional ~/mydir

      And on a second machine:

      mac2> cd ~ ; ln -s Dropbox/MyDropboxDir ./mydir

      Makes a perfectly functional ~/mydir as well. Any changes made in ~/mydir on mac1 show up (both from Finder and from the command line) in ~/mydir on mac2. And vice versa.

      Of course, Dropbox/myDropboxDir should be set to sync.

      I think this effectively provides all of the functionality one might want using symbolilc links with Dropbox. For example, it provides a way to have ~/src and ~/bin synchronized across machines.

      • Lusil's avatar
        Lusil
        Icon for Dropbox Staff rankDropbox Staff

        Hi everyone! Thanks for keeping in touch with us on this thread regarding symlinks. 

        I just wanted to note that, if you haven't already, you can check out more info about symlinks and how to use them with Dropbox in this article

        If you have any other questions or feedback for us, feel free to give us a nudge. Thanks again!

About View, download, and export

Need support with viewing, downloading, and exporting files and folders from your Dropbox account? Find help from the Dropbox Community.

Need more support

If you need more help you can view your support options (expected response time for an email or ticket is 24 hours), or contact us on X or Facebook.

For more info on available support options for your Dropbox plan, see this article.

If you found the answer to your question in this Community thread, please 'like' the post to say thanks and to let us know it was useful!