systemd-preset 是用于批量保存和恢复服务启用状态的工具。其核心用途包括:在部署或迁移时统一服务启停策略、备份当前服务状态、快速还原配置。操作步骤为:1. 使用 systemctl 命令导出已启用服务并生成 .preset 文件;2. 将文件保存至 /etc/systemd/system-preset/ 目录;3. 在目标系统上复制该文件并执行 systemd-preset –now apply 进行还原。注意事项包括:/etc 下的配置优先级高于 /usr/lib,可使用通配符匹配服务,避免修改默认文件以防升级覆盖,需手动处理服务模板实例。

在Linux系统中,如果你需要批量保存或恢复systemd服务的启用/禁用状态,比如在迁移服务器或者重建环境时,systemd 自带的 systemd-preset 工具就非常实用。它能帮助你把当前服务的 preset 状态保存下来,并在其他系统上快速还原。

下面是一些实际操作建议和使用技巧:

什么是 systemd-preset?
systemd-preset 是 systemd 提供的一个命令行工具,用于根据预设规则决定哪些单元(unit)应该被启用或禁用。这些规则通常存储在 /usr/lib/systemd/system-preset/ 和 /etc/systemd/system-preset/ 目录下的 .preset 文件中。
它的典型用途包括:
在部署新系统时快速设置默认启用的服务统一多个服务器之间的服务启停策略备份当前系统的服务启用状态以便后续恢复
如何保存当前服务状态为 preset 文件?
你可以通过以下步骤将当前已启用或禁用的服务导出为一个 .preset 文件:
列出所有启用的服务:
systemctl list-unit-files --type=service --state=enabled
生成 preset 文件内容(手动方式):
可以写个小脚本自动提取这些服务名并加上 enable 指令,例如:
systemctl list-unit-files --type=service --state=enabled | awk '{print $1}' | grep -v "@" | xargs -I {} echo "enable {}"
保存为 .preset 文件:
存了个图
视频图片解析/字幕/剪辑,视频高清保存/图片源图提取
17 查看详情
把输出保存到 /etc/systemd/system-preset/your-config.preset 中,这样优先级更高。
应用新的 preset 设置(可选):
systemd-preset --root=/ apply
如果你在当前系统上运行,可以省略 --root=/。
如何在新系统中还原服务配置?
当你有了之前保存的 .preset 文件,可以在新系统中执行以下操作来还原服务启停状态:
将 .preset 文件复制到目标系统的 /etc/systemd/system-preset/ 目录下。
执行应用命令:
sudo systemd-preset --now apply
加上 --now 表示立即生效,否则只更新配置不触发动作。
注意:某些服务可能依赖特定软件包或配置文件,确保目标系统已安装相关组件。
常见问题与注意事项
优先级问题:/etc/systemd/system-preset/ 下的配置会覆盖 /usr/lib/systemd/system-preset/ 的内容。通配符支持:可以在 .preset 文件中使用通配符,例如 enable *.service 来匹配一组服务。不推荐直接修改原始 preset 文件:最好新建一个自己的 .preset 文件,避免升级后被覆盖。服务模板(@xxx.service)处理:这类服务不会被默认列出,如果要启用实例,需显式指定,如 enable sshd@myinstance.service。
基本上就这些。掌握了 systemd-preset 的使用方法,你就可以更高效地管理和备份 Linux 系统中的服务启停状态了。
以上就是如何备份Linux服务配置 systemd-preset保存设置的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/469142.html
微信扫一扫
支付宝扫一扫