我在 Lubuntu 系统上使用 Dropbox 帐户已有多年。现在,我的新公司为我提供了一个企业帐户。
然而,Dropbox 坚持认为该文件夹应命名为:
~/Dropbox (firm-name)/
而且似乎没有办法改变它。我绝不是 Linux 或 cli 专家,但一件事是将我所有不同的绝对路径重命名为其他东西,这是一次性的努力,但另一件事是将其重命名为其他东西有空格。如果我使用的所有文件路径默认情况下突然包含空格,我预计我的工作流程中会出现很多小麻烦。
因此,解决此问题的一种可能方法是符号链接或 mount --bind ~/Dropbox (firm-name)/ as ~/Dropbox/。
这个问题似乎涉及同一个问题,并建议使用 mount 来绑定目录。通过这样做,我会:
sudo mount --bind '~/Dropbox (firm-name)/' ~/Dropbox/
然后将其放入 /etc/fstab 中,这样重启时它就不会消失。
然而,我基本上不确定这是否是一个非常糟糕的主意,会导致各种问题。我不太了解 mount 命令在没有指导的情况下轻松地使用它来完成如此重要的事情。
当我在 dropbox 外部放置指向 Dropbox 中的文件或文件夹的符号链接时,dropbox 中的符号链接对我来说效果很好,但 Dropbox 文件夹内的符号链接过去曾导致问题,然而,这似乎已经改变了。这个用例是不同的,从某种意义上说,应该同步整个 dropbox 文件夹,如下所示:
ln -s '~/Dropbox (firm-name)' '~/Dropbox'
所以我问:什么 - 如果有 - 将 ~/Dropbox (公司名称)/ 链接到 ~/Dropbox/ 的安全、可靠的方式?看起来 mount --bind 或符号链接是两个最好的可能性,但是尽管我已经读到了这些差异,我不知道对于这种情况应该选择两者中的哪一个。是否有可能以可靠的方式进行,或者我应该为自己的帐户付费(尽管看起来很多余!)。符号链接方式似乎对这个人有用,但这不是一个非常详细的答案,我担心会出现不可预见的后果以及数据和工作的丢失。
注意:可以说我链接到的问题是同一个问题,但原作者从未接受唯一的答案。另外,他的情况与无头服务器有一些差异,并且不是高级用户,虽然我已经使用linux多年,但我不知道我们的前提是否相同。我认为不太高级的用户会从具有非常基本的用例前提的问题和答案中受益。
答案1
两种方式都是安全的(就我个人而言,我更喜欢并使用绑定安装替代方案)。有一些细微差别,可能与您相关,也可能与您无关:
默认情况下,文件索引器(例如
updatedb
)倾向于跳过符号链接,而不是跳过绑定安装。例如,如果~/Dropbox
是符号链接,locate a_file_in_Dropbox
则只会在以下位置找到该文件~/Dropbox (firm-name)/
;相反,它会在两者中查找该文件~/Dropbox (firm-name)/
,并且~/Dropbox
如果~/Dropbox
是安装点。其他程序在操作符号链接时也可能会稍微改变它们的行为。绑定安装更有可能确保无缝体验。
在绑定挂载情况下,挂载失败
~/Dropbox (firm-name)/
可能会导致进程在目录(挂载点)~/Dropbox
中写入文件,而不是按预期写入.相反,在损坏的符号链接中写入内容只会失败并出现错误。~/Dropbox
~/Dropbox (firm-name)/
我的建议是创建/home/your_user/Dropbox
目录并添加
/home/your_user/Dropbox\040(firm-name) /home/your_user/Dropbox none bind 0 0
到/etc/fstab
。 (它将在下次启动时或通过运行来安装sudo mount --all
)。
鉴于,在 中fstab
,空格和制表符用于分隔挂载点中的字段、文字空格和制表符(并且在适当的情况下,如绑定挂载的情况,也在第一个字段中)必须替换为\040
和\011
转义序列分别。
请注意,波形符(这并不特殊,因为小路) 只是扩大如果未加引号,则由您的 shell 执行。命令:
ln -s '~/Dropbox (firm-name)' '~/Dropbox'
尝试在位于当前工作目录(不太可能存在,导致错误)的Dropbox
目录(字面意思)中创建名为 的符号链接。~
该链接将指向Dropbox (firm-name)
同一~
目录中名为locate 的文件。
它应该是:
ln -s ~/'Dropbox (firm-name)' ~/Dropbox