がここthescouser89の答えにピギーバック。
これはすべてのYumロガーの包括的なリストであるかどうかはわかりませんが、かなり近いと思います。あなたはYumを呼び出す前にそれらのすべてを無効にすることができ、完全に無音になります。
import logging
from yum.logginglevels import __NO_LOGGING
yumLoggers = ['yum.filelogging.RPMInstallCallback','yum.verbose.Repos', 'yum.verbose.plugin',
'yum.Depsolve', 'yum.verbose', 'yum.plugin', 'yum.Repos', 'yum', 'yum.verbose.YumBase',
'yum.filelogging', 'yum.verbose.YumPlugins', 'yum.RepoStorage', 'yum.YumBase',
'yum.filelogging.YumBase', 'yum.verbose.Depsolve']
for loggerName in yumLoggers:
logger = logging.getLogger(loggerName)
logger.setLevel(__NO_LOGGING)
またRPMBaseCallbackを継承するクラスを作り、様々なトランザクション機能(processTransaction、など)にそれを渡すことによって、様々なRPMの取引からプログレスバー/イベント・ロガーの一部を上書きすることができます。しかし、上記のようにすべてのロガーを無効にしている場合、それらの関数は呼び出されません。
編集:さらなる検査の際 、私は最も簡単な答えはあると思う:ロガーのすべてを無効にしないながらhttps://stackoverflow.com/a/43625141/619255
しかし、このアプローチは、不完全なトランザクションについての警告を沈黙しません。