使用 Stow 管理多台机器的配置

了解如何在我们的“2020 年通过开源提高效率的 20 种方法”系列文章的第二篇中使用 Stow 管理多台机器的配置。
117 位读者喜欢这篇文章。
Jump-start your career with open source skills

Opensource.com

去年,我为您带来了 2019 年的 19 天新的(对您而言)生产力工具。今年,我采取了不同的方法:构建一个环境,让您在新的一年里更有效率,使用您可能已经在使用或尚未使用的工具。

使用 Stow 管理符号链接

昨天,我解释了如何使用 Syncthing 在多台机器上保持文件同步。但这只是我用来保持配置一致性的工具之一。另一个工具是一个看似简单的工具,叫做 Stow

Stow help screen

Stow 管理符号链接。默认情况下,它从其所在的目录创建到其下方目录的符号链接。 还有设置源目录和目标目录的选项,但我通常不使用它们。

正如我在 Syncthing 文章中提到的,我使用 Syncthing 来保持一个名为 myconfigs 的目录在我的所有机器上保持一致。 myconfigs 目录下有几个子目录。每个子目录包含我经常使用的应用程序的配置文件。

myconfigs directory

在每台机器上,我切换到 myconfigs 目录并运行 stow -S <目录名> 以将目录内的文件符号链接到我的主目录。 例如,在 vim 目录下,我有我的 .vimrc.vim 目录。在每台机器上,我运行 stow -S vim 来创建符号链接 ~/.vimrc~/.vim。当我在一台机器上更改我的 Vim 配置时,它会应用到我的所有机器。

但有时,我需要一些特定于机器的东西,这就是为什么我有像 msmtp-personalmsmtp-elastic(我的雇主)这样的目录。由于我的 msmtp SMTP 客户端需要知道通过哪个电子邮件服务器进行中继,并且每个服务器都有不同的设置和凭据,因此我可以使用 Stow 通过使用 -D 标志“取消存放”一个并放置另一个来在两者之间切换。

Unstow one, stow the other

有时我发现自己将文件添加到配置中。 为此,有一个带有 -R 的“重新存放”选项。 例如,当我使用 Vim 作为图形应用程序而不是控制台时,我喜欢使用特定的字体。 除了标准的 .vimrc 文件之外,.gvimrc 文件还允许我设置仅适用于图形版本的选项。 当我第一次设置它时,我将 ~/.gvimrc 移动到 ~/myconfigs/vim,然后运行 stow -R vim,它会取消链接并重新链接该目录中的所有内容。

Stow 允许我通过一个简单的命令行在几个配置之间切换,并且结合 Syncthing,我可以确保我拥有我喜欢的工具设置,无论我在哪里或在哪里进行更改。

接下来阅读什么
标签
User profile image.
Kevin Sonney 是一位技术专业人士、媒体制作人和播客。 作为 Linux 系统管理员和开源倡导者,Kevin 在 IT 行业拥有超过 25 年的经验,在开源领域拥有超过 15 年的经验。 他目前在 elastic 担任 SRE。

评论已关闭。

Creative Commons License本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。
© . All rights reserved.