あるタスクを自動化するための新しいスクリプトを設定するたびに、cronの例を見る必要があります。そうでない場合は、Googleに問い合わせる必要があります。 crontabの構文を思い出せないようです。そして、それは過去20年間私にとってそのようでした。病理学的なcronブロックがあります。そのため、yum-cron
を発見しました パッケージ、私はかなり幸せでした。 yum-cron
パッケージがスケジュールを処理してくれます。設定ファイルに1つの変更を加えるだけで、すべてが機能します。これは、独自のスクリプトを作成したり、cron
と格闘したりせずに、これらの自動更新を今日実行するための短いチュートリアルです。 。
yum-cron-cronからyumを簡単に呼び出すためのインターフェース
インストール
yum-cron
をインストールするために特別なことは何もしません。 これはベースリポジトリの一部であるため、dnf
から取得するだけです。 。
$ sudo dnf -y yum-cron
yum-cron
コマンドは実際には調べることができるPythonスクリプトです。 /sbin
にインストールされます 、チェックアウトしたい場合。
構成と最初の実行
インストールしたら、デフォルトの構成ファイルである/etc/yum/yum-cron.conf
を編集する必要があります。 。このファイルは毎日のcron実行を設定しますが、すぐに実行する方法も示します。 /etc/yum/yum-cron.conf
を開きます お気に入りのエディターを使用して、次の2行を次のように変更します。
apply_updates = no
...
random_sleep = 360
宛先:
apply_updates = yes
...
random_sleep = 0
random_sleepパラメータを変更すると、yum-cron
が発生します すぐに実行します。 random_sleep
の理由 パラメータが存在するのは、同時に発生する更新のために多くの帯域幅を消費しないようにするためです。
[無料のオンラインコース:Red HatEnterpriseLinuxの技術概要。 ]
yum-cronを今すぐ実行してシステムの起動時に実行するように設定します
次に、yum-cron
を有効にします システムの起動時に自動的に実行してから起動します。
$ sudo systemctl start yum-cron
$ sudo systemctl enable yum-cron
数分後、yum.logをチェックして、更新がダウンロードされ、システムに適用されているかどうかを確認します。システムに必要な更新の数によっては、更新の表示に少し時間がかかる場合があります。
$ sudo tail -10 /var/log/yum.log
Aug 04 10:59:54 Installed: libmodman-2.0.1-8.el7.x86_64
Aug 04 10:59:54 Installed: libproxy-0.4.11-11.el7.x86_64
Aug 04 10:59:54 Installed: glib-networking-2.56.1-1.el7.x86_64
Aug 04 10:59:54 Installed: cockpit-bridge-195.6-1.el7.centos.x86_64
Aug 04 10:59:55 Installed: cockpit-system-195.6-1.el7.centos.noarch
Aug 04 10:59:55 Installed: cockpit-ws-195.6-1.el7.centos.x86_64
Aug 04 10:59:55 Installed: cockpit-195.6-1.el7.centos.x86_64
Aug 04 16:47:55 Installed: python-chardet-2.2.1-3.el7.noarch
Aug 04 16:47:55 Installed: python-kitchen-1.1.1-5.el7.noarch
Aug 04 16:47:55 Installed: yum-utils-1.1.31-54.el7_8.noarch
上のスクリーンショットでは、いくつかの更新があったことがわかります。私はそれがまったく起こったかどうかを見るために最後の10だけを見ました。しました。
再構成
最初の実行後、/etc/yum/yum-cron.conf
を編集する必要があります ファイルを再作成し、random_sleep
を復元します パラメータを元の値の360
に変更します サーバーが一握り以上ある場合。
知りたいと思うかもしれないランダムなこと
yum-cron
をインストールして設定しましたが ルートとして、スケジュールはルートのcrontabに影響を与えません。言い換えれば、そこにはリストされていません。スケジュールは/etc/cron.daily
の下に巧妙に隠されています。 0yum-daily.cron
という名前のファイル内 。 /etc/yum/yum-cron-hourly.conf
を構成することもできます 1時間ごとに実行します。毎日の実行と同様に、時間単位のスケジュールファイルは/etc/cron.hourly
の下にあります。 0yum-hourly.cron
として 。
yum-cron
を介してのみセキュリティアップデートをインストールする場合 、update_cmd
を変更します /etc/yum/yum-cron.conf
のパラメータ 次のように「セキュリティ」または他の値に:
[commands]
# What kind of update to use:
# default = yum upgrade
# security = yum --security upgrade
# security-severity:Critical = yum --sec-severity=Critical upgrade
# minimal = yum --bugfix update-minimal
# minimal-security = yum --security update-minimal
# minimal-security-severity:Critical = --sec-severity=Critical update-minimal
update_cmd = default
yum-cron
マニュアルページは、/sbin/yum-cron
で指定する必要のあるさまざまな構成ファイルを作成して使用できることを示す以外はほとんど役に立ちません。 default_config_file
としてのPythonスクリプト 。 EPELなどの新しいリポジトリを追加する場合、yum-cron
の追加の構成は必要ありません。 。いつ追加したかに関係なく、yum-cron
を再起動せずに、すべてのリポジトリから更新を試みます。 サービス。
まだ数百、あるいは数十のLinuxシステムを管理している場合は、yum-cron
を使用します。 。 yum-cron
もインストールします yum-cron.conf
を配布します すべてのシステムに個別に触れることを避けるために、Ansibleを介してファイルを作成します。
まとめ
yum-cron
パッケージは、インストールと使用が簡単なユーティリティです。システム管理者として、Linuxシステムの管理を支援する自動化と「ステップセービング」アプリケーションが必要です。また、プログラムが軽量で、本質的にPythonスクリプトであることが気に入っています。必要に応じて変更できる構成ファイルがあります。正直なところ、yum-cron
は、私のキャリアを通じて、また管理するすべてのシステムで引き続き使用する重要なシステム管理ユーティリティの1つとして、ツールボックスに組み込まれています。
[無料ダウンロード:高度なLinuxコマンドのチートシート。 ]