如何在不同的Linux配置之间切换?

agt*_*ver 5 linux configuration etc raspberry-pi

我的 Raspberry Pi 3 有几个不同的用例。目前,我将其配置为媒体中心、流媒体音频、黑客目的、办公室工作场所等。所有配置都基于默认的 Raspbian 发行版。

这些配置需要不同的(systemd)服务不同的/etc服务配置文件。例如:我的办公室工作场所,我为网络管理器配置了所需的 WiFi 网络密码,而对于我的黑客站,我想禁用网络管理器并配置旋转 MAC 地址和静态 IP。有时我喜欢我的 Pi 无头,有时我需要 GUI。ETC。

关键是,根据用途,不仅服务不同,服务配置文件也不同。

我的问题是:如何在同一 Linux 环境中的配置(服务+配置文件)之间“切换”?理想情况下,我想发出一个(终端)命令来切换到另一个“模式”。

已经尝试过:

  • 具有多重引导 grub 的不同分区:花费大量空间/开销。不适合轻松切换。
  • 使用运行级别来区分:不容纳不同的配置文件。
  • 创建我自己的“切换脚本”来停止服务,复制/切换配置文件并(重新)启动服务:很接近,但感觉就像我正在重新发明轮子。

对于“开箱即用”的解决方案有什么建议吗?我无法想象我是第一个或唯一一个有这种需求的人。

小智 2

听起来像是在 systemd 中创建目标,并且可能将 /etc/ 存储在 git 中会创建类似于您想要的内容。更改目标,切换 git 分支,您可能希望有一个中间目标,在切换所有内容之前禁用大多数服务。