将配置文件同步到 encfs 加密的 Dropbox 中

将配置文件同步到 encfs 加密的 Dropbox 中

我使用 Dropbox 在不同机器上同步配置文件。此外,我的 Dropbox 与 encfs 同步。encfs 在启动时会安装一个包含解密的 Dropbox 文件夹的卷。这个过程需要一段时间。对于配置文件来说,这不是问题,.vimrc因为.bashrc我在启动时不直接使用这些程序。我只是使用一个简单的

cd && ln -s DecryptedDropbox/.vimrc

将它们链接起来。并且.vimrc在安装解密的 Dropbox 后即可使用。

但是,我使用了一些对于启动过程很重要的配置文件,例如我的窗口管理器的配置文件.i3/

是否可以将本地版本.i3放在我的硬盘上,并在可用时立即与 Dropbox 同步?当然,如果我更改本地版本,我也希望 Dropbox 版本也更改。我认为硬链接在这里不起作用,因为实际上没有我的文件的副本,对吗?还有其他想法吗?rsync?

答案1

Dropbox 文件夹中的文件是真实文件。您应该能够硬链接它们,但这可能不是最好的做法。如果文件非常小,那么每隔几分钟复制一次的简单 cron 脚本可能是最简单、最可靠的解决方案。

答案2

一些选项:

  1. 保留 Dropbox:最简单的解决方案是将这些文件保存在 Dropbox 的非加密部分,我认为没有理由加密您的 WM 配置文件。然后,您可以按照您描述的方式对 进行简单的软链接.vimrc。如果是加密导致您出现问题,那么应该可以解决问题。

    如果你致力于使用 Dropbox,并且不能让其任何部分不加密,我看不出你如何将其与 结合起来rsync。据我所知,Dropbox 不提供任何ssh或其他访问权限,只有自己的客户端。

  2. 抛弃Dropbox:另一方面,如果你不需要使用 Dropbox,但只想从远程服务器复制某些配置文件仅有的如果这些文件比本地副本更新,那么您可以使用rsync。如果您在服务器和本地计算机之间设置了无密码 ssh 访问权限,则应该能够使用以下命令复制相关文件:

    rsync -uza[电子邮件保护]:/home/用户/.ie3/ .ie3/

    注意每个目录末尾的斜线,它指示rsync复制目录的内容而不是文件夹本身。这样您就不会得到本地的~/.ie3/.ie3/

    man rsync

    -u, --update
      This  forces  rsync to skip any files which exist on the destination and
      have a modified time that is newer than the source file.  (If an existing
      destination file has a modification  time  equal  to  the source file’s, 
      it will be updated if the sizes are different.)
    
    -z, --compress
      With  this  option,  rsync  compresses the file data as it is sent to the 
      destination machine, which reduces the amount of data being transmitted --
      something that is useful over a slow connection.
    
    -a, --archive <- this preserves mod. times, permissions etc.
      This is equivalent to -rlptgoD. It is a quick way of saying you want 
      recursion and want to preserve almost everything.
    

答案3

这些配置文件真的需要加密吗?我不知道 .vimrc 可以保存什么秘密。

另外,我不认为 DropBox 是云存储配置文件的最佳解决方案。它们不会经常更改,而且 DropBox 不提供适当的比较和合并功能,并且只会存储旧版本 1 个月。

我使用 Subversion 来实现这一点。我有一个 Subversion 项目,其中存储了许多配置文件:Classic Shell、gtkrc、WinPatrol、FireFox Profiles.ini、Sandboxie.ini、vimrc 等等。

由于这些文件不经常更改且是纯文本文件,因此 Subversion 可以很好地处理它们。WinMerge 提供了一个很好的 GUI 来比较版本,这样我就可以看到哪些地方发生了更改。

有些文件可以实时保存,如 mpc-hc.ini。遗憾的是,当我更改其他文件时,我需要手动复制它们。

对于云存储,我使用 plan.io。

相关内容