回答:
Yumはプラグインをサポートしているため、キャッシュされたパペットマニフェストを読み取り、トランザクションがパペット制御ファイルを上書きするときに警告するプラグインを作成することは完全に可能です。私はこれを行う既存のプラグインに気付いていませんが、アイデアが好きなので、たぶん自分で書いただけでしょう。
プラグインは、新しくインストール/アップグレード/ダウングレードされたすべてのパッケージをチェックし、上書きするパペット管理ファイルを通知し、そうするための確認を求めます。
    [root@camel ~]# yum update pam
    Loaded plugins: puppet, security
    Skipping security plugin, no data
    Setting up Update Process
    Resolving Dependencies
    Skipping security plugin, no data
    --> Running transaction check
    ---> Package pam.i386 0:0.99.6.2-12.el5 set to be updated
    ---> Package pam.x86_64 0:0.99.6.2-12.el5 set to be updated
    --> Finished Dependency Resolution
    Dependencies Resolved
    ===============================================================================================================================================================
     Package                           Arch                                 Version                                       Repository                          Size
    ===============================================================================================================================================================
    Updating:
     pam                               i386                                 0.99.6.2-12.el5                               base                               983 k
     pam                               x86_64                               0.99.6.2-12.el5                               base                               982 k
    Transaction Summary
    ===============================================================================================================================================================
    Install       0 Package(s)
    Upgrade       2 Package(s)
    Total download size: 1.9 M
    Is this ok [y/N]: y
    Downloading Packages:
    (1/2): pam-0.99.6.2-12.el5.x86_64.rpm                                                                                                   | 982 kB     00:00
    (2/2): pam-0.99.6.2-12.el5.i386.rpm                                                                                                     | 983 kB     00:00
    ---------------------------------------------------------------------------------------------------------------------------------------------------------------
    Total                                                                                                                          8.7 MB/s | 1.9 MB     00:00
    Running rpm_check_debug
    Running Transaction Test
    Finished Transaction Test
    Transaction Test Succeeded
    Running Transaction
    Installing pam-0.99.6.2-12.el5.i386 overwrites puppet-managed file /etc/pam.d/system-auth
    Installing pam-0.99.6.2-12.el5.i386 overwrites puppet-managed file /etc/security/access.conf
    Installing pam-0.99.6.2-12.el5.i386 overwrites puppet-managed file /etc/security/limits.conf
    Installing pam-0.99.6.2-12.el5.x86_64 overwrites puppet-managed file /etc/pam.d/system-auth
    Installing pam-0.99.6.2-12.el5.x86_64 overwrites puppet-managed file /etc/security/access.conf
    Installing pam-0.99.6.2-12.el5.x86_64 overwrites puppet-managed file /etc/security/limits.conf
    Is this ok [y/N]: n
    Aborting
    [root@camel ~]# yum update pam
    Loaded plugins: puppet, security
    Skipping security plugin, no data
    Setting up Update Process
    Resolving Dependencies
    Skipping security plugin, no data
    --> Running transaction check
    ---> Package pam.i386 0:0.99.6.2-12.el5 set to be updated
    ---> Package pam.x86_64 0:0.99.6.2-12.el5 set to be updated
    --> Finished Dependency Resolution
    Dependencies Resolved
    ===============================================================================================================================================================
     Package                           Arch                                 Version                                       Repository                          Size
    ===============================================================================================================================================================
    Updating:
     pam                               i386                                 0.99.6.2-12.el5                               base                               983 k
     pam                               x86_64                               0.99.6.2-12.el5                               base                               982 k
    Transaction Summary
    ===============================================================================================================================================================
    Install       0 Package(s)
    Upgrade       2 Package(s)
    Total size: 1.9 M
    Is this ok [y/N]: y
    Downloading Packages:
    Running rpm_check_debug
    Running Transaction Test
    Finished Transaction Test
    Transaction Test Succeeded
    Running Transaction
    Installing pam-0.99.6.2-12.el5.i386 overwrites puppet-managed file /etc/pam.d/system-auth
    Installing pam-0.99.6.2-12.el5.i386 overwrites puppet-managed file /etc/security/access.conf
    Installing pam-0.99.6.2-12.el5.i386 overwrites puppet-managed file /etc/security/limits.conf
    Installing pam-0.99.6.2-12.el5.x86_64 overwrites puppet-managed file /etc/pam.d/system-auth
    Installing pam-0.99.6.2-12.el5.x86_64 overwrites puppet-managed file /etc/security/access.conf
    Installing pam-0.99.6.2-12.el5.x86_64 overwrites puppet-managed file /etc/security/limits.conf
    Is this ok [y/N]: y
      Updating       : pam                                                                                                                                     1/4
      Updating       : pam                                                                                                                                     2/4
      Cleanup        : pam                                                                                                                                     3/4
      Cleanup        : pam                                                                                                                                     4/4
    Updated:
      pam.i386 0:0.99.6.2-12.el5                                                    pam.x86_64 0:0.99.6.2-12.el5
    Complete!
プラグイン自体は、私のgithub hacksリポジトリにあります。
2013年11月8日更新:
コメントで示唆されたように、私はこれをYumとPuppetの間の相互作用を改善するためのより大きなプロジェクトに変えました。GitHubで見つけることができます。
はい、可能ですが、Puppet自体とは関係ありません。
Linuxシステムは、「ファイルシステムイベントの監視と処理に使用できる」inotifyメカニズムをサポートしています。また、cronと同様に機能するプログラムinotify-toolsもありincronますが、ファイルシステムイベントに反応します。ファイルの変更に関する通知を受け取るために使用できると思います。
(ところで、あなたが/etc/sysctl.confファイルを見てみたいのであれば、それを行う前に確認することをお勧めします-あなたのLinuxは/etc/sysctl.dディレクトリをサポートしていますか?)
そのような通知を実装する方法がわかりません。yumトランザクションをステージングし、影響を受ける可能性のある設定ファイルのリストを決定し、puppetがそれらのいずれかを管理しているかどうかを確認することで、何かを設定できる場合があります。
ただし、一般に、パッケージによって更新されるファイルを管理することはお勧めできません。構成ファイルの場合(rpm -qlc packagenameを使用して、そのようにマークされているかどうかを確認します)、パッケージに新しいバージョンが含まれている場合、filename.rpmnewとして保存されます。その後、必要な変更をマージするために自分のデバイスに任せます。
puppetによって設定ファイルが削除され、パッケージが更新されたときにyumに置き換えられるという問題が発生しました。これにより、次回のパペット実行でファイルが削除されるまで問題が発生しました。この状況に対する回避策は、「削除された」ファイルの内容をコメントに設定して、本質的に空にすることでした。これを処理する別の方法は、Package ['a']-> File ['/ etc / a']を確認して、パペットを1回実行するだけで済むようにすることです。