我有一台上网本和一台台式机,我想通过 Dropbox 共享它们之间的应用程序配置。
目前我的上网本设置为符号链接 ~/.config -> ~/Dropbox/.config,运行正常。我正准备将此设置添加到我的桌面,但我想先问一下。
在计算机之间同步 ~/.config/ 是否安全?
答案1
简短回答
不- 如果不付出更多努力,这不是一个简单的同步保存过程全部下面的配置文件~/.config
。
详细解答
这种方法受到以下先决条件的限制:
- 对已安装应用程序的依赖,尤其是插入 应用程序的组件。
- 两个系统上的文件系统结构相同。
例如,/home/Alice
和/home/Bob
将失败,因为许多配置数据使用限定路径,而不是对用户主目录的“~”引用。(在我的 .config 目录中三十(共 92 个应用程序受到此问题的影响。) - 网络基础设施可能不同。
例如桌面(使用 NFS、基于 LDAP 的用户帐户)与移动的笔记本电脑。 您必须考虑配置的更改和冲突处理。
由于数据可能至关重要,我建议使用版本控制系统(例如 subversion)作为存储数据的后端。配置目录可能包含不适合同步的易失性数据:
- 锁定文件(例如
chromium/SingletonLock
)应该被排除。 - 缓存目录
- ...
- 锁定文件(例如
但请尝试一下并报告您的成功和“经验教训”:-)
我同意 Linux 下的当前情况不适合与多台设备一起工作。
问题是大多数配置数据都存储在文件系统中,并且 gnome、kde 或 freedesktop 都提供了可通过网络访问的配置存储库以及本地共享配置数据的优先模式。
我的解决方法是尝试在 /etc 下配置尽可能多的有用配置并共享此配置(通过 subversion)。这种方法目前发展为一个包含 5000 行 bash 代码和 2000 多个数据文件的内部框架。它目前处理 4 台台式机、5 台移动设备和 2 台服务器机器。
对于我的一些自己的~/.config、~/.thunderbird 以下的数据 (...) 我使用了类似的方法。
答案2
是的,这很好用。请确保先备份您的 .config 文件夹,以免发生灾难。
答案3
是的,应该是。理论上,如果使用配置的应用程序仍然打开,而您刷新它们的配置文件,您可能会遇到一些有趣的副作用。在某些情况下,程序可能不会接受这些更改,并在终止后恢复其旧配置。
但是 .config 目录应该只存储程序设置,不应存储任何用户数据(.local 和许多其他 .-dirs 负责存储用户数据)。因此,那里的数据的重要性有限。
不过不要期望太多。许多程序仍将其配置存储在以程序命名的目录中(即 .mozilla 或 .openarena)。最值得注意的是,您的 gtk 和 gnome 设置不存储在 .config 中。
在我看来,这是一件相当好的事情。如果你能始终将程序与一堆配置文件关联起来,我会发现情况会更清晰。在 .config 中,这有时很复杂(诅咒 XDG)。结果是,你可能还想考虑同步其他一些 .-directories。