Centos7.4でリポジトリサーバーを実行していますが、ネットワーク内のすべてのcentosクライアントがリポジトリサーバーを介してyum更新を実行します。
更新がある場合、サーバーに手動でダウンロードする必要がありますか、それともリポジトリミラーサイトからの新しい更新をチェックして、リポジトリサーバーの指定されたフォルダーに自動的にプッシュダウンできるツールはありますか?
ありがとうございました :)
ローカルネットワークリポジトリミラーがすでに機能している場合は、それを使用するようにクライアントを構成する必要があります。そうすれば、クライアントはそこから更新されます。
クライアントの場合:
cd /etc/yum.repos.d
vim mylocal.repo
埋める:
[mylocalrepo]
name=Local CentOS Repository
baseurl=http://my-repo-server/CentOS/7/4
gpgcheck=0
どこ my-repo-server
は、リポジトリサーバーのURLまたはIPです。
インターネットを介してクライアントを更新したくない場合は、クライアントから公式のパブリックリポジトリのURLも削除/コメントする必要があります。
自動更新部分を忘れました:
自動更新/自動アップグレードを機能させるには、クライアントでさらにいくつかの変更を行う必要があります。
Yum-cronをインストールします
Sudo yum install yum-cron
Yum-cronを構成します
Sudo vim /etc/yum/yum-cron.conf
そのファイル内の他の自己文書化されたオプションの中で、yum-cronで自動アップグレードするパッケージを選択できます。これは、選択できるアップグレードオプションです。
# default = yum upgrade
# security = yum --security upgrade
# security-severity:Critical = yum --sec-severity=Critical upgrade
# minimal = yum --bugfix upgrade-minimal
# minimal-security = yum --security upgrade-minimal
# minimal-security-severity:Critical = --sec-severity=Critical upgrade-minimal
default
をそのままにして、代わりにsecurity
を使用することはおそらくお勧めしません。すべてのパッケージを自動的にアップグレードすると、予期しない問題が発生する可能性があるためです。
起動時に自動起動するサービスを開始して有効にします。
Sudo systemctl start yum-cron
Sudo systemctl enable yum-cron
ps。アップグレードと更新は2つの異なるものです。前者はパッケージのアップグレードを実行し、後者はリポジトリインデックスを更新するだけです(どの変更がアップストリームであるかを確認するため)。
CentOSリポジトリの構造は非常に単純なので、ローカルリポジトリサーバーで単純なrsync
コマンドを使用して、次のようにローカルミラーを更新できます。
rsync -vaSH rsync://mirror.facebook.net/centos/ /your/mirror/directory/
ISOのダウンロードをスキップすることもできます。その場合、rsyncでISOを除外します。
rsync --exclude isos --exclude '*.iso' -vaSH rsync://mirror.facebook.net/centos/ /your/mirror/directory/
rsync
がないと動作が異なる可能性があるため、URLとパスの最後に/
があることを確認してください。
rsync://mirror.facebook.net/centos/
を選択したミラーに置き換えます。 パブリックミラーのリストはこちら をご覧ください。
このコマンドは、cronジョブに含めることができます-例:このコマンドを使用して/etc/cron.daily
の下にファイルを作成します。そうすると、ローカルリポジトリが定期的に更新されます。