これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド krenew です。
プログラム:
NAME
krenew - Kerberos チケットを更新する
SYNOPSIS
クレニュー [-abhiLstvx] [-c 子 ピッド file] [-H 分]
[-K 分] [-k チケット キャッシュ] [-p ピッド file]
[ command ...]
DESCRIPTION
クレニュー 既存の更新可能なチケットを更新します。 引数なしで実行すると、
現在のチケットキャッシュにある既存のチケット認可チケットを更新しようとします。
「kinit -R」と同等ですが、オプションで次のようなプログラムを実行できます。 アクログ AFSをリフレッシュするには
トークンとして使用でき、デーモンとして実行して定期的に起動してチケット キャッシュを更新することも、実行することもできます。
指定されたコマンドを実行し、コマンドが終了するまでチケット キャッシュを更新し続けます(または
更新はできなくなりました)。 コマンドを指定すると、 クレニュー デフォルトで目覚める
60 分 (1 時間) ごとにチケット キャッシュを確認します。
命令が与えられれば、 クレニュー チケットキャッシュのコピーを作成し、プライベートチケットを作成します
そのコマンド専用のチケット キャッシュにより、後の破棄から隔離されます。
元のチケットのキャッシュ。 これにより、krenew はコマンドの認証を維持できるようになります。
たとえば、コマンドを実行しているユーザーがログアウトし、OpenSSH が元のコマンドを破棄した場合
チケットキャッシュ。
コマンドを指定してもシェルを使用して実行されるわけではないので、シェルを使用したい場合は、
コマンド内のメタ文字を特別な意味で使用するには、「sh -c」を指定します。 指図" として
実行して引用するコマンド command。 コマンドにコマンドライン オプションが含まれている場合 (例:
"-c")、コマンド ラインのコマンドの開始前に "--" を入力して指示します。 クレニュー 〜へ
これらのオプションを独自のものとして解析しません。
If クレニュー で構築されています setpag() サポートおよび AFS トークンは、 -t オプション、
AFS トークンを取得する前にコマンドを別の PAG に置きます。
システム上の他のプロセスに干渉します。
コマンドを実行するとき、 クレニュー HUP、TERM、INT、およびQUITシグナルを子に伝播します
処理し、これらの信号を受信しても終了しません。 (伝播された信号の場合
子プロセスを終了させ、 クレニュー その後終了します。)これにより、 クレニュー 反応する
次のようなコマンド監視システムで実行すると適切に それを実行します(8)または SVスキャン(8)それ
信号を使用して、監視対象コマンドを制御し、必要な対話型コマンドを実行します
Ctrl-Cを受け取ります。
実行中の場合 クレニュー ALRM信号を受信すると、すぐにチケットキャッシュを更新します
有効期限が切れる危険があるかどうかに関係なく。
OPTIONS
-a いずれかで実行する場合 -K フラグまたはコマンド、常にチケットを毎回更新します クレニュー
目覚める。 このオプションがないと、 クレニュー チケットの更新は次の頻度でのみ試行されます
チケットの有効期限が切れるのを防ぐために必要です。 このオプションを使用すると、 クレニュー 更新します
で指定された間隔に従ったチケット -K フラグ。
この動作は、おそらくデフォルトの動作であるはずです。 -K。 デフォルトは
既存のユーザーの変更を避けるために変更されていませんが、新しいアプリケーションの場合は、
常に使用 -a -K.
このオプションは、別のプログラムがチケットキャッシュを操作している場合に重要です。
クレニュー 使用しています。 たとえば、別のプログラムがチケットを自動的に更新している場合
より頻繁に クレニューをタップし、その後、 クレニュー に近いチケットは表示されません
有効期限が切れるため、デフォルトでは、チケットを更新しようとはしません。 これの意味は
それ クレニュー また、たとえ -t オプションが与えられたので、
クレニュー チケットが正常に更新された後にのみ、AFSトークンを更新します。 このオプションの場合
そのような状況で指定されている、 クレニュー チェックするたびにチケットを更新します
チケットなので、AFSトークンが更新されます。
この引数は、いずれかと組み合わせた場合にのみ有効です。 -K または実行するコマンド。
-b 起動後、制御端末から切り離してバックグラウンドで実行します。 これ
オプションは、と組み合わせた場合にのみ意味があります -K またはそのコマンド クレニュー なります
実行している。 クレニュー 最初のチケットが実行されるまでバックグラウンドを実行しません
更新されるため、初期エラーは報告されますが、出力はリダイレクトされます。
〜へ / dev / null その後エラーは報告されません。
このフラグが与えられた場合、 クレニュー ディレクトリも「/」に変更されます。 すべてのパス (例:
したがって、実行するコマンドまたは PID ファイルに対して)は、絶対として指定する必要があります。
相対パス。
実行するコマンドと組み合わせて使用すると、そのコマンドは
バックグラウンドであり、その入力と出力もにリダイレクトされます / dev / null。 そうなる
エラーが表示されるようにするには、他のメカニズムを介してエラーを報告する必要があります。
ファイルベースのチケット キャッシュを指定せずに Mac OS X でこのフラグを使用する
-k または、KRB5CCNAME を設定しても、おそらく希望どおりの結果が得られません。 チケットキャッシュオン
Mac OS X は、デフォルトでセッションごとに、 -b クレニュー あなたから切り離されてしまいます
既存のチケットキャッシュ。 代わりに、Mac OS X でデフォルトのチケット キャッシュを更新するには、次のことを試してください。
何かのようなもの:
(krenew -K 60 &)
to run クレニュー バックグラウンドではありますが、現在のセッション内で実行されます。
このオプションを使用する場合は、次の使用も検討してください。 -L 報告する クレニュー syslogへのエラー。
-c 子 ピッド file
子プロセスのプロセスID(PID)をに保存します 子 ピッド file. 子 ピッド file is
存在しない場合は作成され、存在する場合は上書きされます。 このオプションは
コマンドラインでコマンドが指定された場合に許可され、組み合わせて使用すると最も便利です
-b 実行中の子プロセスの管理を可能にします。
と一緒に使用する場合は注意してください -b、PIDファイルは後に書き出されます クレニュー 背景があります
作業ディレクトリを次のように変更します /、したがって、PIDファイルの相対パスは次のようになります。
に関連して / (おそらくあなたが望むものではありません)。
-H 分
チケットの残り有効期間が 未満である場合にのみ、チケットを更新します。 分 分。 もしも
チケットの残り有効期間がすでに十分に長いか、更新されたかのいずれかです。
成功した場合は、コマンドを実行するか (コマンドが指定されている場合)、ステータス 0 ですぐに終了します。
(何もなかった場合)。 それ以外の場合は、残りのチケットが残るようにチケットを更新してみてください。
少なくとも寿命 分、失敗した場合はエラーで終了し、次のコマンドを実行します。
コマンド (ある場合)。
If -H と一緒に使用されます -K, クレニュー すぐには終了しません。 代わりに、指定された
残りの存続期間は、デフォルト値のXNUMX分に置き換わります。つまり、 クレニュー
ウェイクアップするたびに、チケットの残りの有効期間が確保されます
分 口論。 これはに代わるものです -a チケットに常に
残りの寿命の特定の最小量。
-h 使用法メッセージを表示して終了します。
-i チケット更新時のエラーを無視して、実行を続けてください。 通常は、 クレニュー すぐに出ます
チケットのキャッシュが消滅するか、チケットの更新可能な有効期限が切れるためです。
このフラグが指定されている場合、標準エラーに失敗したことを通知します (ただし、 -b
が与えられました)が、実行を継続し、次のチェック間隔の後に目覚めて再試行します
(参照してください -K)。 これは、他のプロセスが期限切れのチケット キャッシュを再作成する可能性がある場合に便利です。
クレニュー チケットキャッシュが再作成されたら、そこに留まり、再作成されたチケットキャッシュに基づいて動作する必要があります。
プレゼント。
最初のチケット キャッシュの更新が失敗した場合、 クレニュー すぐに更新を再試行し、
その後、指数バックオフを XNUMX 分に XNUMX 回に設定し、認証されるまで試行を続けます。
成功するか殺されます。 コマンドが存在する場合、そのコマンドはキャッシュされるまで開始されません。
更新は成功します。
このフラグは、デーモン モードまたはコマンドが指定された場合にのみ役立ちます。
-K 分
デーモンモードで実行して、チケットを無期限に存続させます。 プログラムは後に再び目覚めます
分 分、チケットの有効期限がXNUMX分前かXNUMX分未満かを確認します
次に予定されているチェックの前に、必要に応じてチケットを更新します。 (つまり、それは
チケットの残りの有効期間が常に少なくともXNUMXになるようにします
分。) -H フラグも与えられ、それによって指定された寿命がXNUMXつを置き換えます
分デフォルト。
このオプションが指定されていないが、コマンドラインでコマンドが指定された場合、デフォルト
間隔は60分(1時間)です。
チケットキャッシュの更新時にエラーが発生した場合、原因はありません。 クレニュー 出る、
ウェイクアップ間隔が XNUMX 分に短縮され、その時点で操作が再試行されます。
エラーが続く限りの間隔。
-k チケット キャッシュ
チケット キャッシュ 環境のコンテンツではなく、チケットキャッシュとして
変数KRB5CCNAMEまたはライブラリーのデフォルト。 チケット キャッシュ 任意のチケットキャッシュである可能性があります
基盤となるKerberosライブラリによって認識される識別子。 これは一般的にサポートします
先頭に「FILE:」文字列がある場合とない場合のファイルへのパス。ただし、他の文字列もサポートされる場合があります。
チケットキャッシュタイプ。
-L メッセージをsyslogに報告するだけでなく、標準出力または標準エラーにも報告します。 全て
メッセージはファシリティLOG_DAEMONでログに記録されます。 表示される通常のメッセージ
標準出力では、レベルLOG_NOTICEでログに記録されます。 原因とならないエラー クレニュー
で実行すると終了します -i レベル LOG_WARNING でログに記録されます。 致命的なエラーは、
レベル LOG_ERR でログに記録されます。
これは、問題をデバッグするときに役立ちます。 -b.
-p ピッド file
実行中のプロセスID(PID)を保存します クレニュー に処理する ピッド file. ピッド file is
存在しない場合は作成され、存在する場合は上書きされます。 このオプションはほとんどです
と組み合わせて便利 -b ランニングの管理を可能にする クレニュー デーモン。
と一緒に使用する場合は注意してください -b PIDファイルは後に書き出されます クレニュー 背景があります
作業ディレクトリを次のように変更します /、したがって、PIDファイルの相対パスは次のようになります。
に関連して / (おそらくあなたが望むものではありません)。
-s 通常、 クレニュー コマンドの実行中に異常終了します (たとえば、
チケットの更新可能な有効期限が切れた場合)、コマンドは実行されたままになります。 もしも -s is
指定すると、終了する前にコマンドに SIGHUP シグナルが送信されます。 これは役に立つかもしれません
Kerberos チケットなしでコマンドを実行し続けるのが無意味な場合。
-t チケットを取得した後、外部プログラムを実行します。 これのデフォルトの使用法は実行することです
アクログ トークンを取得します。 環境変数KINIT_PROGが設定されている場合、それは
コンパイル済み-デフォルト。
If クレニュー AFSで構築されています setpag() サポートとコマンドが与えられました
コマンドライン、 クレニュー AFS トークンを取得する前に、新しい PAG を作成します。 そうでなければ、それは
現在の PAG でトークンを取得します。
-v 冗長になります。 これにより、何が行われているのかについての追加情報が少し印刷されます
試みられた結果は何ですか。
-x エラーが発生したらすぐに終了します。 通常、コマンドを実行するとき、またはコマンドを実行するとき
-K オプション、 クレニュー チケット キャッシュの更新に失敗しても、次の限り実行を継続します。
チケットキャッシュはまだ存在しており、更新可能であるようです。 次に再試行します
チェック間隔。 このオプションを使用すると、 クレニュー 代わりに終了します。
リターン VALUES
チケットが正常に更新されると、プログラムは通常ステータス 0 で終了します。 もしも クレニュー
aklogまたはその他のプログラムを実行します クレニュー そのプログラムの終了ステータスを返します。
例
現在のチケット交付チケットを更新します。
クレニュー
XNUMX 分ごとに起動して、チケット キャッシュを更新する必要があるかどうかを確認します。 それであれば
再実行します アクログ 同様に。
クレニュー -K 10 -t
プログラムを実行する /usr/local/bin/compute-job バックグラウンドで XNUMX 時間ごとに確認しています
チケットを更新する必要がある場合 (デフォルト)。 のPIDを入れてください クレニュー での仕事
/var/run/compute.pid。 チケットを更新する必要があるたびに、新しい AFS トークンを取得します。
krenew -b -t -p /var/run/compute.pid /usr/local/bin/compute-job
オプションを渡したい場合は、 /usr/local/bin/compute-job、「--」引数を入れる
保管する必要がある前に クレニュー これらのオプションをそれ自体のものとして解釈しないでください。
書き込みに認証が必要なファイルに出力をリダイレクトする場合は、
サブシェルでリダイレクトを行う必要があります。 つまり、次のコマンドです。
krenew -t 計算ジョブ > /afs/local/data/output
/afs/local/data/output への書き込みに AFS トークンが必要な場合は機能しません。 仕事は、一方で、
実行中は AFS トークンを持ちますが、出力のリダイレクトは親シェルで行われます。
そして何の恩恵も受けない クレニュー。 上記は代わりに次のように記述する必要があります。
krenew -t -- sh -c '計算ジョブ > /afs/local/data/output'
このコマンドを使用すると、リダイレクトを実行するシェルも次の環境で実行されます。 クレニュー そして、しています
取得する AFS トークンの利点。
ENVIRONMENT
環境変数AKLOGが設定されている場合、その値が実行するプログラムとして使用されます
-t に準拠したデフォルトではなく クレニュー。 AKLOGが設定されておらず、KINIT_PROGの場合
が設定されている場合は、代わりにその値が使用されます。 KINIT_PROGは、下位互換性を尊重しています
ただし、名前がわかりにくいため、使用はお勧めしません。
チケットファイルがない場合( -k)またはコマンドがコマンドラインで指定されている場合、 クレニュー 使用する
チケット付与の場所を決定するための環境変数KRB5CCNAME
チケット。 もし -k オプションが使用されると、KRB5CCNAME はチケット ファイルを指すように設定されます。
を実行する前に アクログ プログラムまたはコマンドラインで指定されたコマンド。
onworks.net サービスを使用して krenew オンラインを使用する