私のRaspberry Pi 3にはいくつかの異なるユースケースがあります。現在、メディアセンター、オーディオストリーミング、ハッキング目的、オフィスワークショップなどで構成されています。すべての設定はデフォルトのRaspbianディストリビューションに基づいています。
これらの構成には異なる(システム)サービスが必要ですそしてさまざまな/etc
サービスプロファイル。例:私のオフィスでは、必要なWiFiネットワークパスワードでネットワークマネージャを設定し、ハッカーステーションではネットワークマネージャを無効にし、循環MACアドレスと静的IPを設定したいと思います。時にはPiヘッドレスが好きなときもあり、時にはGUIが必要な場合もあります。など。
要点は、サービスが異なるだけでなく、目的によってサービスプロファイルも異なることです。
私の質問は:同じLinux環境で設定(サービス+プロファイル)間で「切り替える」方法は何ですか?理想的には、別の「モード」に切り替えるために(ターミナル)コマンドを実行したいと思います。
すでに試しました:
- マルチブートグラブを使用したさまざまなパーティション:多くのスペース/オーバーヘッドを占有します。簡単な移行には適していません。
- ランレベルを使用して差別化します。他の設定ファイルを受け入れないでください。
- サービスを停止し、設定ファイルをコピー/変換し、サービスを再起動するために独自の「スイッチスクリプト」を作成しました。閉じたけど、車輪を再発明しているように感じます。
「すぐに利用可能な」ソリューションに関する提案はありますか?私はこのような欲求を持つ最初の人であるか、唯一の人であるとは想像できません。
答え1
systemdでターゲットを作成し、おそらくgitに/ etc /を保存すると、あなたが望むものと似たものが生成されるように聞こえます。ターゲットを変更し、gitブランチを切り替え、すべてを切り替える前にほとんどのサービスを無効にする中間ターゲットを望むことができます。
答え2
次のフォルダにマウントされた "config"パーティションはどうですか?
/mnt/config/setup1/etc
/mnt/config/setup2/etc
/mnt/config/setup3/etc
/mnt/config/etc -> /mnt/config/setup1/etc
次に、systemdサービスを作成し、起動プロセスの最初に/mnt/config/etcを/ etcにコピーします。 /mnt/config/.../etcフォルダに別のものを置きます。設定を変更して再起動するには、シンボリックリンクを更新してください。