有了这个开源工具,所有软件都能“云同步”

作为一个拥有多台 Mac 的用户,电脑中诸多软件配置同步的问题一直困扰着我。

近年来软件功能越来越丰富,但是设置步骤也逐渐繁琐。虽然很多软件推出了自己的云同步服务,只需要登陆账 就可以在多台设备中同步设置。

https://github.com/lra/mackup

Mackup 是一款基于 python,适用于 Linux / macOS 的命令行备份软件,只需要简单输入几行命令,就可以把应用程序的配置文件备份或还原。Mackup 支持目前市面上主流的云存储,比如 Dropbox、iCloud、OneDrive 等等,通过将备份文件存储到云存储中,再在另一台电脑上还原的方式同步配置。

我们以在 macOS 下备份 Raycast 配置为例:

安装 Mackup

Mackup 提供了 brew 与 pip 两种安装方式,我们可以通过以下命令安装:

brew install mackup

# 使用 brew 安装

pip install –upgrade mackup

# 使用 pip 安装

配置

vi ~/.mackup.cfg

在配置文件中我们首先需要选择使用的存储备份方式(默认为Dropbox),我们使用iCloud:

[storage]

engine = icloud

directory = .config/mackup

engine 参数表示选择的备份存储方式,directory 则是你需要备份存放的位置。

mackup 在备份上提供了多种选择:

Dropbox:dropbox

Google Drive: google_drive

iCloud: icloud

copy & file_system: copy file_system

如果你使用上述三种云存储,那只需要在 engine 里面填入相应的参数即可,如果你还想选择可以挂载在目录下的云存储,比如自建私有云,WebDAV 等等那可以选择 file_system 并且填入相应挂载目录。

接下来我们在配置文件中填写想要同步设置的软件名称:

[applications_to_sync]

raycast

需要注意的是,这里填写的软件名称必须是 mackup 支持的软件。可以通过命令mackup list 或者在其 GitHub 主页上查询。

这样我们获得了一份这样的配置文件:

[storage]

engine = icloud

directory = .config/mackup

[applications_to_sync]

raycast

保存退出之后我们就可以用 mackup 进行备份了。

备份

接下来我们只要使用以下命令,就可以把选择的软件备份到相应的目录下。

mackup backup

再另一台电脑上,配置相同的配置文件后,使用以下命令就可以同步配置。

mackup restore

整个过程非常简单,当然我们可以通过 crontab 这样的定时执行程序进一步自动化,首先编写一个 shell 脚本 backup.sh 与 restore.sh:

#!/bin/bash

mackup backup -f

#!/bin/bash

mackup restore -f

对其赋予可执行权限:

sudo chmod +x backup.sh

sudo chmod +x restore.sh

再根据日常使用习惯通过 crontab 定时运行这两个脚本,就可以完成自动的备份同步了。

不在列表上的软件

当然对于不在 mackup 官方支持的软件列表上的软件我们也可以自己创建 config 文件来实现备份,实现方式也很简单,我们以 Input-Source-Pro 为例:

创建存储个人配置文件的 mackup 文件夹与:

mkdir ~/.mackup

touch ~/.mackup/input-source-pro.cfg

在配置文件中填入 Input Source Pro 的名称和其配置文件的地址相对地址即可:

[application]

name = Input-Source-Pro

[configuration_files]

Library/Preferences/com.runjuu.Input-Source-Pro.plist

此时运行一下 mackup list 查看是否添加到 mackup 中,然后在 mackup.cfg 文件中添加 Input-Source-Pro 即可备份。

结语

mackup 是一款非常简单易用的备份脚本软件,通过简单的配置就可以同步软件中复杂的设置。不过对于不熟悉命令行的用户来说,仍旧有一定的门槛。还是希望各类软件开发者可以活用 iCloud Drive 等等对用户友好的方式提供可靠的设备间配置同步功能。

https://sspai.com/post/77012?utm_source=wechat&utm_medium=social

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年11月4日
下一篇 2022年11月4日

相关推荐