usermod コマンド
目的
ユーザー属性を変更します。
構文
usermod [ -u uid ] [ -g pgroup ] [ -G group1,group2 ... ] [ -d dir [ -m ]] [ -s shell ] [ -c comment ] [ -l new_name ] [ -e 期限切れ ] [ -r role1,role2 ...] ログイン
説明
重要: ご使用のシステムに Network Information Service (NIS) データベースがインストールされている場合は、 usermod コマンドを使用しないでください。
usermod コマンドは、 login パラメーターによって識別されるユーザーの属性を変更します。 ユーザー名は既に存在していなければなりません。 属性を変更するには、フラグおよび新規の値を指定します。 以下のファイルには、このコマンドによって設定されたローカル・ユーザー属性が入っています。
- /etc/passwd
- /etc/security/environ
- /etc/security/limits
- /etc/security/user
- /etc/security/user.roles
- /etc/security/audit/config
- /etc/group
- /etc/security/group
システム・セキュリティーが損なわれないように、アカウントの ID の変更は回避します。 ただし、ID が usermod コマンドを使用して変更された場合、ID 衝突検査は、 /etc/security/login.cfg ファイルの usw スタンザの dist_uniqid 属性によっても制御されます。 ID 衝突制御の動作は、 mkuser コマンドで説明した動作と同じです。
フラグ
| 項目 | 説明 |
|---|---|
| -c コメント | login パラメーターによって指定されたユーザーに関する概要を提供します。 comment パラメーターは、コロン (:) 文字が埋め込まれていないストリングであり、文字 '#!'で終了することはできません。 |
| -d ディレクトリー | ホーム・ディレクトリーを、dir パラメーターによって指定されたディレクトリーに変更します。 |
| -g pgroup | 1 次グループを識別します。 pgroup パラメーターは、有効なグループ名または ID でなければなりません。 |
| -e 有効期限切れ | アカウントの有効期限を識別します。 expire パラメーターは、MMDDhhmmyy 形式の 10 文字の文字列です。ここで、MM は月、DD は日、hh は時間、mm は分、yy は 1939 年から 2038 年の下 2 桁です。 文字はすべて数字です。 expire パラメーターが 0 の場合、アカウントは期限切れになりません。 デフォルトは 0 です。 詳しくは、 date コマンドを参照してください。 |
| -G group1,group2,... | ユーザーの所属先のグループを識別します。 group1,group2, ... parameter は、グループ名のコンマ区切りリストです。 |
| -l 新規名 | ユーザーの新しい名前を指定します。 |
| -m | ユーザーの現在のホーム・ディレクトリーの内容を、新規ホーム・ディレクトリーに移動します。 -d フラグと一緒にのみ使用されます。 |
| -r role1,role2,... | このユーザーの管理ロールをリストします。 role1,role2, ... parameter は、コンマで区切られたロール名のリストです。 |
| -s シェル | セッション開始時にユーザー用に実行されるプログラムを定義します。 shell パラメーターは絶対パス名です。 |
| -u uid | ユーザー ID を指定します。 uid パラメーターは固有の整数文字列です。 システム・セキュリティーが損なわれないように、この属性の変更は回避します。 |
終了状況
| 項目 | 説明 |
|---|---|
| 0 | コマンドは正常に完了しました。 |
| >0 | エラーが発生しました。 |
例
- ユーザー
davisをsystemグループのメンバーに変更するには、次のコマンドを入力します。usermod -G system davis
制約事項
ユーザー情報の保全性を確保するために、usermod コマンドを使用するときにはいくつかの制限が適用されます。 root ユーザーまたは UserAdmin 権限を持つユーザーのみが、 usermod コマンドを使用して以下のタスクを実行できます。
- 管理者属性を真に設定して、ユーザーを管理ユーザーにします。
- 管理ユーザーの属性があれば変更します。
- ユーザーを管理グループに追加します。
管理グループは、 admin 属性が True に設定されたグループです。 セキュリティー・グループのメンバーは非管理ユーザーの属性を変更し、非管理グループにユーザーを追加できます。
usermod コマンドは、ローカル・ユーザー・データのみを操作します。 これは、NIS および DCE のようなレジストリー・サーバーのデータを変更する場合には使用できません。
場所
/usr/sbin/usermod
ファイル
usermod コマンドには、以下のファイルに対する読み取り権限と書き込み権限があります。
| 項目 | 説明 |
|---|---|
| /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 | 拡張グループ属性が入っています。 |