useradd コマンド

目的

新しいユーザー・アカウントを作成します。

構文

useradd [ -c comment ] [ -d dir ] [ -e expire ] [ -g group ] [ -G group1,group2 ... ] [ -m [ -k スケルトン _dir ]] [ -u uid ] [ -s shell ] [ -r role1,role2 ...] ログイン

説明

useradd コマンドは、新規ユーザー・アカウントを作成します。 login パラメーターは、固有のストリングでなければなりません (その長さは、管理者が chdev コマンドを使用して構成できます)。 ユーザー名には ALL または default キーワードは使用できません。

useradd コマンドは、ユーザーのパスワード情報を作成しません。 これは、 password フィールドをアスタリスク (*) で初期化します。 後で、このフィールドは passwd または pwdadm コマンドで設定されます。 認証情報を /etc/security/passwd ファイルに追加するために passwd または pwdadm コマンドが使用されるまで、新規アカウントは使用不可になります。

useradd コマンドは、常にターゲット・ユーザー・レジストリーを検査して、新規アカウントの ID がターゲット・レジストリーに対して固有であることを確認します。 useradd コマンドは、 dist_uniqid システム属性を使用してシステムのすべてのユーザー・レジストリーを検査するように構成することもできます。 dist_uniqid システム属性は、 /etc/security/login.cfg ファイルの usw スタンザの属性であり、 chsec コマンドを使用して管理することができます。

dist_uniqid システム属性には、以下の値があります。
never
非ターゲット・レジストリーとの ID 衝突の検査は行いません。 これがデフォルト設定です。
always
他のすべてのレジストリーとの ID 衝突の検査を行います。 ターゲット・レジストリーと他のレジストリー間の衝突が検出されると、アカウントの作成または変更は失敗します。
uniqbyname
他のすべてのレジストリーとの ID 衝突の検査を行います。 レジストリー間の衝突が許可されるのは、作成されるアカウントの名前が既存のアカウントと同じである場合に限られます。
注: ターゲット・レジストリーでの ID 衝突検出は、 dist_uniqid システム属性に関係なく常に実施されます。

uniqbyname システム属性設定は、2 つのレジストリーに対して適切に機能します。 3 つ以上のレジストリーがあり、2 つのレジストリー間で既に ID 衝突が存在している場合、競合する ID 値を使用して 3 番目のレジストリーに新規アカウントを作成すると、 useradd コマンドの動作は指定されません。 新規アカウント作成の成否は、レジストリーを検査する順序によって決まります。

ID 衝突の検査は、ローカル・レジストリーとリモート・レジストリー間、またはリモート・レジストリー間の ID の一意性のみに影響します。 リモート・レジストリー上で新しく作成されたアカウントと、同じリモート・レジストリーを使用する他のシステム上の既存ローカル・ユーザーとの間では、ID の固有性は保証されません。 コマンドの実行時にリモート・レジストリーに到達できない場合、 useradd コマンドはリモート・レジストリーをバイパスします。

フラグ

項目 説明
-c コメント login パラメーターによって指定されたユーザーに関する概要を提供します。 comment パラメーターは、コロン (:) 文字が埋め込まれていないストリングであり、文字 '#!'で終了することはできません。
-d ディレクトリー login パラメーターによって指定されたユーザーのホーム・ディレクトリーを識別します。 dir パラメーターは絶対パス名です。
-e 有効期限切れ アカウントの有効期限を識別します。 expire パラメーターは、MMDDhhmmyy 形式の 10 文字の文字列です。ここで、MM は月、DD は日、hh は時間、mm は分、yy は 1939 年から 2038 年の下 2 桁です。 文字はすべて数字です。 expire パラメーターが 0 の場合、アカウントは期限切れになりません。 デフォルトは 0 です。 詳しくは、 date コマンドを参照してください。
-g グループ ユーザーの 1 次グループを識別します。 group パラメーターには有効なグループ名が含まれていなければならず、ヌル値にはできません。
-G group1,group2,... ユーザーの所属先のグループを識別します。 group1,group2, ... parameter は、グループ名のコンマ区切りリストです。
-k スケルトン _dir デフォルト・ファイルを、skel_dir からユーザーのホーム・ディレクトリーにコピーします。 -m フラグと一緒にのみ使用されます。
-m ユーザーのホーム・ディレクトリーが存在しない場合、それを作成します。 デフォルトでは、ホーム・ディレクトリーを作成しません。
-r role1,role2,... このユーザーの管理ロールをリストします。 role1,role2, ... parameter は、コンマで区切られたロール名のリストです。
-s シェル セッション開始時にユーザー用に実行されるプログラムを定義します。 shell パラメーターは絶対パス名です。
-u uid ユーザー ID を指定します。 uid パラメーターは固有の整数文字列です。 システム・セキュリティーが損なわれないように、この属性の変更は回避します。

終了状況

項目 説明
0 コマンドは正常に完了しました。
>0 エラーが発生しました。

セキュリティー

RBACユーザーおよびTrustedAIXユーザーに注意:このコマンドは特権操作を実行できます。 特権命令を実行できるのは特権ユーザーのみです。 権限と特権の詳細については、セキュリティの特権コマンドデータベースを参照してください。 このコマンドに関連した特権および権限のリストについては、lssecattr コマンドまたは getcmdattr サブコマンドの項を参照してください。

  1. davis ユーザー・アカウントをデフォルト値で作成するには、次のように入力します。
    useradd davis
    

制約事項

ログインの不整合を防ぐために、ユーザー名全体を大文字の英字で合成することは避けてください。 useradd コマンドはマルチバイト・ユーザー名をサポートしますが、ユーザー名は POSIX移植可能ファイル名文字セットの文字に制限されます。

ユーザー・データベースが壊れていない状態を保つには、ユーザー名は慎重に付ける必要があります。 ユーザー名は、ハイフン (-)、正符号 (+)、アットマーク (@)、または波形記号 (~) で始めることはできません。 ユーザー名にキーワード ALL または default を使用することはできません。 さらに、ユーザー名文字列の中では、次のどの文字も使用してはなりません。
項目 説明
: コロン
" 二重引用符
# ポンド記号
, コンマ
= 等号
\ 円記号
/ スラッシュ
? 疑問符
' 単一引用符
ˋ 逆引用符

最後に、login パラメーターには、スペース、タブ、または改行文字を含めることはできません。

場所

/usr/sbin/useradd

ファイル

useradd コマンドには、以下のファイルに対する読み取り権限と書き込み権限があります。

項目 説明
/etc/passwd ユーザーの基本属性が入っています。
/etc/security/user ユーザーの拡張属性が入っています。
/etc/security/user.roles ユーザーの管理ロール属性が入っています。
/etc/security/limits ユーザーごとのリソース・クォータおよび制限を定義します。
/etc/security/environ ユーザーの環境属性が入っています。
/etc/security/audit/config 監査構成情報が入っています。
/etc/security/lastlog ユーザーの最新ログイン属性が入っています。
/etc/group グループの基本属性が入っています。
/etc/security/group 拡張グループ属性が入っています。