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 コマンドを使用して管理することができます。
- never
- 非ターゲット・レジストリーとの ID 衝突の検査は行いません。 これがデフォルト設定です。
- always
- 他のすべてのレジストリーとの ID 衝突の検査を行います。 ターゲット・レジストリーと他のレジストリー間の衝突が検出されると、アカウントの作成または変更は失敗します。
- uniqbyname
- 他のすべてのレジストリーとの ID 衝突の検査を行います。 レジストリー間の衝突が許可されるのは、作成されるアカウントの名前が既存のアカウントと同じである場合に限られます。
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 | エラーが発生しました。 |
セキュリティー
例
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 | 拡張グループ属性が入っています。 |