Red Hat Training

A Red Hat training course is available for Red Hat Satellite

B.3. Red Hat Network Configuration Manager

Red Hat Network Configuration Client とは異なり、 Red Hat Network Configuration Manager (rhncfg-manager) は、 クライアントシステムにある設定ファイルではなく RHN にある設定ファイルとチャンネルの中央レポジトリの保守を目的として設計されています。 このツールでは RHN Web サイト内の設定管理機能の代替となるコマンドラインの他、 関連メンテナンスの一部または全体を行うためのスクリプト作成の機能も備えています。
設定管理者による使用を目的としているため、 適格な権限を持つ RHN ユーザー名とパスワードを必要とします。 ユーザー名は /etc/sysconfig/rhn/rhncfg-manager.conf または ~/.rhncfgrc の [rhncfg-manager] セクションに指定することができます。
Red Hat Network Configuration Managerが root で実行されると、 Red Hat Update Agent から必要な設定の値を取得しようとします。 root 以外のユーザーで実行する場合は、 ~/.rhncfgrc ファイル内で設定に変更を加える必要があるかもしれません。 セッションファイルは ~/.rhncfg-manager-session にキャッシュされ、 すべてのコマンド毎にログインが行なわれないようにします。
Red Hat Network Configuration Manager のデフォルトのタイムアウトは 30 分です。 タイムアウトを変更するには、 server.session_lifetime オプションと新しい値をこのマネージャを実行しているサーバーの /etc/rhn/rhn.conf ファイルに追加します。 次ぎのようにします。
 server.session_lifetime = 120 
Red Hat Network Configuration Manager は、 「add」、「create-channel」、 「diff」、 「diff-revisions」、 「download-channel」、 「get」、 「list」、 「list-channels」、 「remove」、 「remove-channel」、 「revisions」、 「update」、 「upload-channel」などの基本モードが備わっています。
各モードにはそれぞれ独自のオプションセットがあります。 次のコマンドを発行するとオプションを表示することができます。
 rhncfg-manager mode --help 
mode の部分にモード名を入れて表示させます。
rhncfg-manager diff-revisions --help
「add」モードのオプション一覧は 表B.4「rhncfg-manager add のオプション」 でご覧頂けます。

B.3.1. 設定チャンネルを作成する

組織用の設定チャンネルを作成するには次のコマンドを使用します。
 rhncfg-manager create-channel channel-label
RHN のユーザー名とパスワードの入力が求められたら入力します。 次のような出力になります。
 Red Hat Network username: rhn-user Password: Creating config channel channel-label Config channel channel-label created 
設定チャンネルを作成したら、 上記の残りのモードを使ってそのチャンネルの移行や管理を行います。

B.3.2. 設定チャンネルにファイルを追加する

設定チャンネルにファイルを追加するには、 アップロードするローカルファイルとチャンネルのラベルを指定します。
 rhncfg-manager add --channel=channel-label /path/to/file
必要なチャンネルラベルおよびファイルへのパスの他、 追加時にファイルに変更を加えるオプションを使用することもできます。 例えば、 コマンド内に --dest-file オプションを含ませてパスとファイル名を変更することができます。
 rhncfg-manager add --channel=channel-label--dest-file=/new/path/to/file.txt/path/to/file
出力は以下のようになります。
 Pushing to channel example-channel Local file >/path/to/file -> remote file /new/path/to/file.txt 
次の表は rhncfg-manager add に使用できるオプションの一覧です。

表B.4 rhncfg-manager add のオプション

オプション 説明
-cCHANNEL --channel=CHANNEL この設定チャンネルにファイルをアップロードします
-dDEST_FILE --dest-file=DEST_FILE このパスにファイルをアップロードします
--delim-start=DELIM_START 変数挿入用の区切りの開始点です
--delim-end=DELIM_END 変数挿入用の区切りの終了点です
-h, --help ヘルプメッセージを表示して終了します

注記

デフォルトでは設定ファイルの最大サイズは 128KB です。 この値を変更する必要がある場合は、 /etc/rhn/default/rhn_web.conf ファイル内の次の行を見つけて変更するか、ない場合はこの行を作成します。
web.maximum_config_file_size=128
さらに、/etc/rhn/default/rhn_server.conf ファイル内の次の行を見つけて変更するか、ない場合はこの行を追加します。
maximum_config_file_size=128
両方のファイルで、この値を 128 から新たに設定する最大サイズにバイト単位で変更します。

B.3.3. 最新の設定ファイル間の違いを比較する

ディスク上の設定ファイルとチャンネル内の最新リビジョンとの違いを表示させるには次のコマンドを使用します。
 rhncfg-manager diff --channel=channel-label --dest-file=/path/to/file.txt \ /local/path/to/file
次のような出力が表示されるはずです。
 /tmp/dest_path/example-config.txt /home/test/blah/hello_world.txt --- /tmp/dest_path/example-config.txt config_channel: example-channel revision: 1 +++ /home/test/blah/hello_world.txt 2003-12-14 19:08:59.000000000 -0500 @@ -1 +1 @@ -foo +hello, world 
次の表は rhncfg-manager diff に使用できるオプションの一覧です。

表B.5 rhncfg-manager diff のオプション

オプション 説明
-cCHANNEL, --channel=CHANNEL この設定チャンネルからファイルを取得します
-rREVISION, --revision=REVISION このリビジョンを使用します
-dDEST_FILE, --dest-file=DEST_FILE このパスにファイルをアップロードします
-tTOPDIR, --topdir=TOPDIR 全てのファイルをこの文字列に相対とします
-h, --help ヘルプメッセージを表示して終了します

B.3.4. 各種のバージョン間の違いを比較する

チャンネルおよびリビジョン全体で 1 つのファイルの異なるバージョンを比較する場合は、 -r のフラグを使用して比較するファイルのリビジョンを指定し、 -n フラグでチェックする 2 つのチャンネルを指定します。 これに関する説明は 「ファイルリビジョンの数を確認する」 でご覧ください。 ここでは 1 ファイルの異なるバージョンを比較しているため、 指定するファイルは 1 つだけです。 たとえば、
 rhncfg-manager diff-revisions -n=channel-label1-r=1-n=channel-label2-r=1/path/to/file.txt
出力は以下のようになります。
 --- /tmp/dest_path/example-config.txt 2004-01-13 14:36:41 \ config channel: example-channel2 revision: 1 --- /tmp/dest_path/example-config.txt 2004-01-13 14:42:42 \ config channel: example-channel3 revision: 1 @@ -1 +1,20 @@ -foo +blaaaaaaaaaaaaaaah +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.0.6 (GNU/Linux) +Comment: For info see http://www.gnupg.org + +iD8DBQA9ZY6vse4XmfJPGwgRAsHcAJ9ud9dabUcdscdcqB8AZP7e0Fua0NmKsdhQCeOWHX +VsDTfen2NWdwwPaTM+S+Cow= +=Ltp2 +-----END PGP SIGNATURE----- 
次の表は rhncfg-manager diff-revisions に使用できるオプションの 一覧です。

表B.6 rhncfg-manager diff-revisions のオプション

オプション 説明
-cCHANNEL, --channel=CHANNEL この設定チャンネルを使用します
-rREVISION, --revision=REVISION このリビジョンを使用します
-h, --help ヘルプメッセージを表示して終了します

B.3.5. 1 つのチャンネル内の全ファイルをダウンロードする

あるチャンネル内の全ファイルをディスクにダウンロードする場合は、 ディレクトリを 1 つ作成してから次のコマンドを使用します。
	 rhncfg-manager download-channel channel-label --topdir . 
出力は以下のようになります。
 Copying /tmp/dest_path/example-config.txt -> \ blah2/tmp/dest_path/example-config.txt 
次の表は rhncfg-manager download-channel に使用できるオプションの一覧です。

表B.7 rhncfg-manager download-channel のオプション

オプション 説明
-tTOPDIR, --topdir=TOPDIR 全てのファイルパスがこのディレクトリに対して相対的となります。 このオプションは設定しなければなりません。
-h, --help ヘルプメッセージを表示して終了します

B.3.6. ファイルの内容を取得する

特定ファイルの内容を標準出力にダイレクトするには次のコマンドを使います。
 rhncfg-manager get --channel=channel-label \ /tmp/dest_path/example-config.txt 
ファイルの内容は出力として表示されます。

B.3.7. チャンネル内の全ファイルを表示する

1 つのチャンネル内の全ファイルを表示させるには次のコマンドを使用します。
 rhncfg-manager list channel-label
次のような出力が表示されるはずです。
 Files in config channel `example-channel3': /tmp/dest_path/example-config.txt 
次の表は rhncfg-manager get に使用できるオプションの一覧です。

表B.8 rhncfg-manager get のオプション

オプション 説明
-cCHANNEL, --channel=CHANNEL この設定チャンネルからファイルを取得します
-tTOPDIR, --topdir=TOPDIR 全てのファイルをこの文字列に相対とします
-rREVISION, --revision=REVISION このファイルリビジョンを取得します
-h, --help ヘルプメッセージを表示して終了します

B.3.8. 全ての設定チャンネルを表示させる

組織内の全ての設定チャンネルを表示させるには次のコマンドを使用します。
 rhncfg-manager list-channels 
出力は以下のようになります。
 Available config channels: example-channel example-channel2 example-channel3 config-channel-14 config-channel-17 
local_override チャンネルや server_import チャンネルは表示しないので注意してください。

B.3.9. チャンネルからファイルを削除する

チャンネルからファイルを削除するには次のコマンドを使用します。
 rhncfg-manager remove --channel=channel-label /tmp/dest_path/example-config.txt
RHN のユーザー名とパスワードの入力が求められたら入力します。 次のような出力が表示されます。
 Red Hat Network username: rhn-user Password: Removing from config channel example-channel3 /tmp/dest_path/example-config.txt removed 
次の表は rhncfg-manager remove に使用できるオプションの一覧です。

表B.9 rhncfg-manager remove のオプション

オプション 説明
-cCHANNEL, --channel=CHANNEL この設定チャンネルからファイルを削除します
-tTOPDIR, --topdir=TOPDIR 全てのファイルをこの文字列に相対とします
-h, --help ヘルプメッセージを表示して終了します

B.3.10. 設定チャンネルを削除する

組織内の設定チャンネルを破棄する場合は、 次のコマンドを使用します。
rhncfg-manager remove-channel channel-label 
出力は以下のようになります。
 Removing config channel example-channel Config channel example-channel removed 

B.3.11. ファイルリビジョンの数を確認する

チャンネル内のファイルやパスのリビジョンがいくつあるかを確認するには (リビジョンは 1 から開始して N までとし、 N は 0 より大きい整数になる)、 次のコマンドを使用します。
 rhncfg-manager revisions channel-label /tmp/dest_path/example-config.txt 
出力は以下のようになります。
 Analyzing files in config channel example-channel \ /tmp/dest_path/example-config.txt: 1 

B.3.12. チャンネル内のファイルを更新する

チャンネル内のファイルの新しいリビジョンを作成 するには (またはそのパスにはリビジョンが存在していなかった場合はそのチャンネルに最初のリビジョンを追加)、 次のコマンドを使用します。
 rhncfg-manager update \ --channel=channel-label --dest-file=/path/to/file.txt /local/path/to/file
出力は以下のようになります。
 Pushing to channel example-channel: Local file example-channel/tmp/dest_path/example-config.txt -> \ remote file /tmp/dest_path/example-config.txt 
次の表は rhncfg-manager update に使用できるオプションの一覧です。

表B.10 rhncfg-manager update のオプション

オプション 説明
-cCHANNEL, --channel=CHANNEL この設定チャンネルにファイルをアップロードします
-dDEST_FILE, --dest-file=DEST_FILE このパスにファイルをアップロードします
-tTOPDIR, --topdir=TOPDIR 全てのファイルをこの文字列に相対とします
--delim-start=DELIM_START 変数挿入用の区切りの開始点です
--delim-end=DELIM_END 変数挿入用の区切りの終了点です
-h, --help ヘルプメッセージを表示して終了します

B.3.13. 複数のファイルを一度にまとめてアップロードする

ローカルディスクから設定チャンネルへ一度にまとめて複数ファイルをアップロードする場合は次のコマンドを使用します。
 rhncfg-manager upload-channel --topdir=topdir channel-label
出力は以下のようになります。
 Using config channel example-channel4 Uploading /tmp/ola_world.txt from blah4/tmp/ola_world.txt 
次の表は rhncfg-manager upload-channel に使用できるオプションの一覧です。

表B.11 rhncfg-manager upload-channel のオプション

オプション 説明
-tTOPDIR, --topdir=TOPDIR 全てのファイルパスがこのディレクトリに対して相対的になります
-cCHANNEL, --channel=CHANNEL 設定情報をアップロードする複数のチャンネルを列記します。 チャンネルとチャンネルはコンマ「,」で区切ります。 例、 --channel=foo,bar,baz
-h, --help ヘルプメッセージを表示して終了します