p4 group
ユーザをグループに追加、またはグループから削除します。
または、グループのメンバーに対するmaxresults、maxscanrows、
maxlocktimeおよびtimeoutの各制限を設定します。
構文規則
p4 [g-opts] group [-a | -A] groupnamep4 [g-opts] group -d [-a | -F] groupnamep4 [g-opts] group -o groupnamep4 [g-opts] group -i [-a | -A]
説明
グループは、 Helixサーバユーザのリストです。 以下の処理を行う場合に、グループを使用します。
p4 protectコマンドでアクセスレベルを設定する- 特定のユーザが単一のコマンドで Helixサーバから取得できるデータの 最大量を制限する
p4 loginチケットのタイムアウト期間を設定するp4 ldapsyncコマンドに対して情報を指定する
グループを削除するには、p4 group -d groupnameを実行するか、
p4 group groupnameを起動して、表示されたフォームからユーザ全員を消去します。
プロテクションテーブルとすべてのグループから特定のグループを強制的に削除するには、
-Fオプションと-dオプションを指定します。
グループとユーザで同じ名前を使用することができます。例えば、グループとユーザで「charlotte」という名前を使用すると、以下に示すグループとユーザの両方が参照されます。
- 「Charlotte」という市に住んでいるメンバーが属しているグループ
- 「Charlotte」という名前のユーザ
ユーザ名とグループ名では個別のネームスペースが使用されるため、こうした動作が可能になります。
「グループ仕様の例」に記載されているように、サーバ間通信を行うサービスユーザは、Timeout:フィールドの値がunlimitedに設定されているグループに属している必要があります。こうしたグループに属していない場合、サービスユーザのチケットが無効になり、複製を実行できなくなる可能性があります。サービスユーザの詳細については、「p4 user」トピックの「ユーザのタイプ」を参照してください。
フォームフィールド
| フィールド名 | タイプ | 説明 |
|---|---|---|
|
|
読み取り専用 |
コマンドライン上で入力されたグループ名。 |
|
|
書き込み可能 |
グループのメンバーが1つのコマンドでサービスからアクセスできるデータの最大件数。
デフォルト値は |
|
|
書き込み可能 |
グループのメンバーがサービスから、1つのコマンドでスキャンできる列の最大数。
デフォルト値は |
|
|
書き込み可能 |
データスキャンの際、ある1つの操作で任意のデータベーステーブルを
ロックすることのできる最長時間(ミリ秒単位)。デフォルト値は |
|
|
書き込み可能 |
グループ内のメンバーが1つのコマンドを使用して作業状態にすることができる ファイルの最大数。「使用上の注意点」を参照してください。 |
|
|
書き込み可能 |
複数のグループに属しているユーザの場合、unsetが無視され、そのユーザが属しているグループの最大のtimeout値が使用されます。 有効期限が無期限のチケットを作成するには、
|
|
|
書き込み可能 |
このグループに属するユーザのパスワードの有効期間(秒単位)。 値を「
「使用上の注意点」を参照してください。 |
|
|
書き込み可能 |
LDAPクエリからグループのユーザのリストを作成するときに使用する
LDAPコンフィギュレーション。詳細については、「 |
|
|
書き込み可能 |
グループのメンバーの識別に使用するLDAPクエリ。詳細については、「 |
|
|
書き込み可能 |
ユーザの名前を表すLDAP属性。詳細については、「 |
|
|
書き込み可能、複数行 |
他のHelixサーバグループの名前。
既に定義済みのグループのユーザ全員を作業中のグループに追加するには、
|
|
|
書き込み可能、複数行 |
他のHelixサーバユーザの名前。
グループの所有者は必ずしもグループのメンバーでなくても構いません。
グループ所有者をグループのメンバーにするには、useridも 注意
指定する所有者は、 Helixサーバユーザである必要はありません。 ユーザがまだ存在していないため任意の名前を使用する場合や、 ユーザを削除してから仕様を新しいユーザに割り当てるまでの プレースホルダーが必要となる場合があります。 |
|
|
書き込み可能、複数行 |
グループメンバーの Helixサーバユーザ名。 1行につき1つのユーザ名を指定し、各ユーザ各をインデントする必要があります。 |
オプション
|
|
(スーパーユーザではない)グループ所有者によるグループの管理を可能にします。
そのユーザは、グループの |
|
|
|
|
|
グループgroupnameを削除します。グループのメンバーは、
このグループ削除の結果としてアクセスレベルまたは |
|
|
このフラグを指定する場合は、 |
|
|
エディタを起動せずに、標準入力からフォームを読み込みます。 新しいグループ仕様がそれまでの仕様に置き換わります。 |
|
|
ユーザのエディタを起動することなく、標準出力にフォームを書き出します。 |
|
|
「グローバルオプション」を参照してください。 |
使用上の注意点
| ファイル引数でリビジョン指定子を使用できるか? | ファイル引数でリビジョン範囲を使用できるか? | 最低限必要なアクセスレベル |
|---|---|---|
|
適用外 |
適用外 |
|
- グループ定義の中で(存在しない)ユーザを記述しても、ユーザは作成されず、
ライセンスも消費されません。ユーザを作成するには、
p4 userコマンドを使用します。 - 複数のグループに属するユーザのチケットの
TimeoutとPasswordTimeoutの値は、maxresults値と同様の方法で計算されます。 つまり、そのユーザが属するすべてのグループのtimeout値のうち (unlimitedは含めるがunsetは無視して) 最大の値が設定されます。どのグループにも属さないユーザには、 デフォルトのチケットのTimeout値に43200が設定され、PasswordTimeoutにunsetが設定されます。 無期限のチケットを作成するには、Timeoutをunlimitedに設定します。 PasswordTimeout:フィールドを使用してパスワード有効期限を設定する場合、 30日間でのタイムアウトは2,592,000秒です。-
ディポに保存されているファイルの数が増えてくると、ある種のコマンドをパラメータなしで、 あるいは制限のない引数を付けて実行したときに、サービスの動作が 大幅に遅くなることがあります。例えば、
p4 print //depot/...は、ディポに保存されている あらゆるファイルの内容をユーザの画面上に表示し、p4 filelog //depot/...は、ディポに保存されているあらゆるファイルの あらゆるリビジョンにおいて、データを取り込もうとします。Helixサーバスーパーユーザは、 ユーザのグループについて
MaxResults値を設定することにより、 Helixサーバがユーザに返すデータの量を 制限することができます。MaxScanRows値を設定することにより、スキャンされるデータの量(ユーザに返されるか 返されないかにかかわらず)を制限することもできます。また、MaxLockTime値により、 ある1つの操作で任意のデータベーステーブルをロックすることができる 時間の長さを設定することができます。 同様に、MaxOpenFilesフィールドを設定して、グループメンバーが任意の タイミングで作業状態にすることができるファイルの最大数を 指定することもできます。MaxResults、MaxScanRows、MaxLockTime、MaxOpenFilesのいずれかの値を超えた場合、 サーバへの要求が拒否され、ユーザによる問合せが制限されます。ユーザが複数のグループに属している場合、サーバは、そのユーザが 属しているすべてのグループに対する
MaxResults値の最大値を そのユーザのMaxResults値として計算します (設定値unlimitedに遭遇すると制限は削除されますが、デフォルト値unsetのままである 設定は無視されます)。 どのグループにも属さないユーザがいる場合、そのMaxResults値はunsetになります。 (そのユーザのMaxScanRows、MaxLockTime、MaxOpenFilesの制限も、 同じ方法で計算されます)通常のハードウェアの処理速度では、
MaxResultsを10,000以下に設定したり、MaxScanRowsを50,000以下に設定したり、MaxLockTimeを1,000以下に設定したりする必要はありません。一部のコマンドでは、これらの制限をコマンド単位で指定することにより、 ユーザ自身が制限を設定することができます。コマンド単位で指定した値により、 p4 groupコマンドで設定した値がオーバーライドされます。 p4groupコマンドで設定した値が上書きされないようにするには、server.commandlimits
=2を設定します。 - ワークスペースまたはラベルのアンロードを行うには、ユーザがワークスペースの
所有リストにあるすべてのファイルおよび/またはラベルによってタグ付けされている
ファイルをスキャンすることが可能でなければなりません。管理者は
MaxScanRowsおよびMaxResultsを十分な大きさの値に設定して、 ユーザがp4 unloadまたはp4 reloadの操作にサポートを 要求せずに済むようにする必要があります。 - 特定のグループの
maxresults、maxscanrows、maxlocktime、timeoutの制限を表示するには、p4 groups -v groupnameを使用します。 p4 help maxresultsを使用すると、これら4つの制限値のいずれかによって 影響を受けるコマンドのリストを取得することができます。- 詳細については、『Helix Coreサーバ管理者ガイド』に記載されている以下のトピックも参照してください。
グループ仕様の例
この例では、サービスユーザをグループ化し、接続やパスワードの有効期限によってサービスユーザがブロックされることがないようにする場合のベストプラクティスについて説明します。
$ p4 group service_users
グループ内のUsers:のリストにservice1を追加し、
Timeout:の値とPasswordTimeout:の値を「unlimited」に設定します。
Group: service_users
Timeout: unlimited
PasswordTimeout: unlimited
Subgroups:
Owners:
Users:
service1
関連コマンド
|
ユーザのアクセスレベルを変更する |
|
|
既存グループのリストを参照する |
|
|
LDAPとHelixサーバのグループを同期する |






