5

数十台の Linux マシンを実行cronしていて、crontab を何らかのリビジョン管理システムに入れたいと思っています。ソース管理には Mercurial ( hg) を使用しているので、それが理想的ですが、このタスクにより適したシステムが他にあれば検討したいと思います。

私の状況に特有の 1 つの側面は、すべての crontab が共通のユーザー (実在の人物ではなく、プレースホルダーの「サービス」ログイン) に属していることです。変更履歴には、cron ジョブが実際に実行される特別なアカウントではなく、各変更の実際の作成者が含まれるようにしたいと思います。

4

3 に答える 3

4

crontab -l は、crontab を標準出力にダンプします。これをファイルにリダイレクトできます。これをファイルにリダイレクトし、必要に応じて差分を取り、ソース管理にプッシュするジョブを (もちろん cron で) 持つことができます。

于 2008-11-25T16:14:22.753 に答える
2

http://joey.kitenet.net/code/etckeeper/ ?

そのサイトから:

etckeeper は、/etc を git、mercurial、darcs、または bzr リポジトリに格納できるようにするためのツールのコレクションです。apt (および yum や pacman-g2 を含む他のパッケージ マネージャー) にフックして、パッケージのアップグレード中に /etc に加えられた変更を自動的にコミットします。これは、リビジョン管理システムが通常サポートしていないファイル メタデータを追跡しますが、これは /etc にとって重要です (のアクセス許可など) /etc/shadow。これは非常にモジュラーで構成可能ですが、リビジョン管理の基本を理解していれば簡単に使用できます。

于 2008-11-25T16:10:41.170 に答える
0

Linux システムが LFS (Linux ファイルシステム標準、IIRC) に従っている場合、/etc には構成ファイルのみを含める必要があります。/etc 全体を CVS にインポートすることで、かなり良い経験ができました。

唯一の問題は、root だけが変更をコミットできることでした。これは、すべての管理者に 3 文字の短い名前を割り当て、各コミットがこの名前で始まる必要があるというルールを設定することで解決できます。

于 2008-11-25T16:40:59.643 に答える