このドキュメントで説明されているソフトウェアはサポートされなくなったか、または拡張サポートされています。
Oracleでは、現在サポートされているリリースにアップグレードすることをお薦めします。
spacewalk-repo-syncユーティリティを使用して、ソフトウェア・チャネルを同期することができます。 このコマンドを使用するには、root
であるか、/etc/sudoers
で許可が与えられている必要があります。 spacewalk-repo-syncは、手動で実行することも、cron
ジョブで実行することもできます。 cron
ジョブでコマンドを実行する場合は、大きな電子メール・メッセージがroot
に送信されないように、-q
または--quiet
オプションを含めます。
spacewalk-repo-sync -lコマンドを使用して、チャネル・ラベルとリポジトリのURLを表示することができます。次に例を示します:
#spacewalk-repo-sync -l | grep ksplice
ksplice-ol7-x86_64 | uln:///ol7_x86_64_ksplice ksplice-ol6-i386 | uln:///ol6_i386_ksplice ksplice-ol6-x86_64 | uln:///ol6_x86_64_ksplice #spacewalk-repo-sync -l | grep addons
oraclelinux7-x86_64-addons | https://yum.oracle.com/repo/OracleLinux/OL7/addons/x86_64/ oraclelinux6-x86_64-addons | https://yum.oracle.com/repo/OracleLinux/OL6/addons/x86_64/
チャネルをyumまたはULNリポジトリと同期させるには、-cオプションを使用してチャネル・ラベルを指定します。たとえば、次のようにします:
# spacewalk-repo-sync -c ksplice-ol6-x86_64
#### Channel label: ksplice-ol6-x86_64 ####
Repo URL: uln:///ol6_x86_64_ksplice
The download URL is: https://linux-update.oracle.com/XMLRPC/GET-REQ/ol6_x86_64_ksplice
Packages in repo: 1296
Packages already synced: 0
Packages to sync: 1296
1/1296 : ksplice-snmp-plugin-0.1.0-2.el6-0.x86_64
2/1296 : uptrack-updates-2.6.39-400.210.2.el6uek.x86_64-20150206-0-0.noarch
...
1295/1296 : uptrack-updates-2.6.32-220.el6.x86_64-20150130-0-0.noarch
1296/1296 : uptrack-updates-2.6.32-200.20.1.el6uek.x86_64-20141216-0-0.noarch
Linking packages to channel.
Repo uln:///ol6_x86_64_ksplice has 0 errata.
Sync completed.
Total time: 1 day, 8:56:47
この例では、チャネルがULNと以前同期されていなかったため、すべてのパッケージがダウンロードされました。 要した合計時間は約33時間でした。
同じ形式のコマンドを使用して、チャネルをOracle Linux yumサーバー・リポジトリと同期できます。次に例を示します:
# spacewalk-repo-sync -c oraclelinux6-x86_64-addons
#### Channel label: oraclelinux6-x86_64-addons ####
Repo URL: https://yum.oracle.com/repo/OracleLinux/OL6/addons/x86_64/
Packages in repo: 308
No new packages to sync.
Repo https://yum.oracle.com/repo/OracleLinux/OL6/addons/x86_64/ has 6 errata.
Sync completed.
Total time: 0:01:09
この例では、ダウンロード可能な新しいパッケージはありませんでした。
-pオプションを使用すると、親チャネルとすべての子を1回の操作で同期させることができます:
# spacewalk-repo-sync -p parent_channel
次に例を示します。
# spacewalk-repo-sync -p oraclelinux7-x86_64
さらに--latestオプションを指定すると、サーバーは使用可能な最新のパッケージのみを同期させます。
spacewalk-repo-sync -p oraclelinux7-x86_64 --latest
#### Channel label: oraclelinux7-x86_64 ####
Repo URL: https://yum.oracle.com/repo/OracleLinux/OL7/optional/latest/x86_64/
Packages in repo: 10133
Packages already synced: 0
Packages to sync: 5845
1/5845 : bind-lite-devel-9.9.4-18.el7_1.3-32.i686
2/5845 : bind-sdb-chroot-9.9.4-18.el7_1.2-32.x86_64
...
この例では、リポジトリ内の10,133個のパッケージのうち、5,845個の最新パッケージのみをダウンロードする必要がありました。
--latestオプションは、同期時に使用可能な最新のパッケージをダウンロードします。 古いパッケージは削除されません。 同期間隔が長い場合は、特定のバージョンのパッケージを見逃す可能性があります。 これは、エラータが特定のパッケージ・バージョンに関連付けられているエラータ処理に影響を与える可能性があります。 エラータの整合性が重要な場合は、--latestを使用しないことをお薦めします。 ただし、パッケージが常に累積的であるため、Kspliceチャネルで--latestを使用することは例外です。
詳細は、spacewalk-repo-sync(8)
マニュアル・ページを参照してください。