Dropbox 是否同步硬链接?

Tim*_*Tim 6 dropbox symbolic-link hard-link

我有一个包含大文件的文件夹。我希望该文件夹同时位于两个不同的位置 - 我的家庭文档和我的大学文档文件夹。

我已经通过 College 文件夹中到 Home 文件夹的符号链接来完成此操作。

不幸的是,Dropbox 同步了我的 College 文件夹 - 我的文件空间很快就用完了。

Dropbox 是否遵循硬链接?如果是,我该如何创建一个?

and*_*ien 5

不,事实并非如此。

当您更新文件时,Dropbox 会断开所有链接。因此,在 @Falk 上面给出的示例中,如果他从远程计算机编辑该文件,当它同步回来时,链接将被破坏,并且 Dropbox 将包含一个名为testfile (Falks conflicted copy).

唯一有效的链接是软链接,其中原始文件是 dropbox 文件夹中的文件。这是我用来测试的脚本:

# symlink with target inside dropbox
echo "symbolic link test" > ~/Dropbox/symlinkToDropbox.txt
ln -s  ~/Dropbox/symlinkToDropbox.txt ~/symlinkToDropbox.txt
cat ~/symlinkToDropbox.txt
echo "edit target of symlink" >> ~/Dropbox/symlinkToDropbox.txt
echo "edit symlink" >> ~/symlinkToDropbox.txt 
cat ~/symlinkToDropbox.txt 
cat ~/Dropbox/symlinkToDropbox.txt 
# symlink with target outside dropbox 
echo "symbolic link test" > ~/symlinkFromDropbox.txt
ln -s ~/symlinkFromDropbox.txt ~/Dropbox/symlinkFromDropbox.txt  # relative symlinks don't work
cat ~/Dropbox/symlinkFromDropbox.txt 
echo "edit target of symlink" >> ~/symlinkFromDropbox.txt
echo "edit symlink" >> ~/Dropbox/symlinkFromDropbox.txt
cat ~/symlinkFromDropbox.txt 
cat ~/Dropbox/symlinkFromDropbox.txt 
# hard link with target inside dropbox
echo "hard link test" > ~/Dropbox/hardlinkToDropbox.txt
ln ~/Dropbox/hardlinkToDropbox.txt ~/hardlinkToDropbox.txt
echo "edit target" >> ~/Dropbox/hardlinkToDropbox.txt 
echo "edit linked file" >> ~/hardlinkToDropbox.txt 
cat ~/hardlinkToDropbox.txt 
cat ~/Dropbox/hardlinkToDropbox.txt 
# hard link with target inside dropbox
echo "hard link test" > ~/hardlinkFromDropbox.txt
ln ~/hardlinkFromDropbox.txt  ~/Dropbox/hardlinkFromDropbox.txt
echo "edit linked file" >> ~/Dropbox/hardlinkFromDropbox.txt 
echo "edit target" >> ~/hardlinkFromDropbox.txt 
cat ~/Dropbox/hardlinkFromDropbox.txt 
cat ~/hardlinkFromDropbox.txt 
#all of that works fine.  
#But now open all of those files from your dropbox folder on another computer and edit them
#Your dropbox will sync, your local versions of all those files will be updated, but NONE OF THE LINKED FILES WILL UPDATE
#The hard links are replaced and the old versions copied as "conflicted copies"
#The symlink where the dropbox file was the link is unlinked

#the symlink where the dropbox file is the original is the only one that works
Run Code Online (Sandbox Code Playgroud)