◆ useraddコマンド
ユーザアカウントを作成するためには、useraddコマンドを使用します。
◆ 構文 : useradd [ オプション ] ユーザー名
オプション |
説明 |
-c コメント |
ユーザー情報を表すコメントの指定 |
-d ディレクトリ名 |
ホームディレクトリの指定 |
-g グループ名 or GID |
プライマリグループの指定 |
-G グループ名 or GID |
プライマリグループ以外に所属するグループの指定 |
-s ログインシェル |
ログインシェルの指定 |
-u UID |
UIDの指定 |
-m |
ホームディレクトリの自動的な作成 |
◆ 実行例 : 「mike」という新規ユーザを作成し、ホームディレクトリ、ログインシェルを指定する設定
# useradd -d /home/mike -s /bin/bash mike |
作成するホームディレクトリに配布したいファイルを、ひな形として/etc/skelディレクトリに置くことで
ホームディレクトリに自動的にコピーされます。例えば、ユーザーの新規作成時にホームディレクトリに
.bash_profileファイル、.bash_logoutファイル、.bashrcファイルをコピーしたい場合、/etc/skelディレ
クトリには、これらのファイルを格納します。以下では、/etc/skelディレクトリの中身を確認しています。
◆ 実行例 : /etc/skel ディレクトリに格納されているファイルの確認
# ls -la /etc/skel
.bash_profile
.bash_logout
.bashrc
|
◆ usermodコマンド、userdelコマンド
既存のユーザーアカウントを変更するためにはusermodコマンドを使用します。なお、usermodコマンド
を使用しなくても、/etc/passwdファイルで該当フィールドを編集すれば同じ結果となります。
◆ 構文 : usermod [ オプション ] ユーザー名
オプション |
説明 |
-c コメント |
ユーザー情報を表すコメントの変更 |
-d ディレクトリ名 |
ホームディレクトリの変更 |
-g グループ名 or GID |
プライマリグループの変更 |
-G グループ名 or GID |
プライマリグループ以外に所属するグループの変更 |
-s ログインシェル |
ログインシェルの変更 |
-u UID |
UIDの変更 |
-L |
パスワードをロックして一時的に無効化 |
-U |
パスワードのロックを解除 |
◆ 実行例 : ユーザー「mike」の所属するプライマリグループを「sales」に変更
◆ 実行例 : ユーザー「mike」の所属するグループを「manage」に変更
◆ 実行例 : ユーザー「mike」のアカウントを一時的に無効化
既存のユーザーアカウントを削除するためには、userdelコマンドを使用します。
◆ 構文 : userdel [ オプション ] ユーザー名
オプション |
説明 |
-r |
ホームディレクトリも削除する際に指定 |
◆ 実行例 : ユーザー「mike」のアカウントを、ホームディレクトリも含めて削除
◆ groupaddコマンド、groupmodコマンド、groupdelコマンド
グループアカウントを新規作成するためには、groupaddコマンドを使用します。
◆ 構文 : groupadd [ オプション ] グループ名
オプション |
説明 |
-g グループID |
グループIDの指定 |
◆ 実行例 : グループ「sales」の作成
作成済みのグループアカウントの情報を変更するためには、groupmodコマンドを使用します。
◆ 構文 : groupmod [ オプション ] グループ
オプション |
説明 |
-g グループID |
指定したグループIDへ変更 |
-n グループ名 |
指定したグループ名へ変更 |
◆ 実行例 : グループ「sales」の名称を「salesmarketing」に変更
# groupmod -n salesmarketing sales |
作成済みのグループアカウントを削除するためには、groupdelコマンドを使用します。
◆ 構文 : groupdel グループ名
◆ 実行例 : グループ「sales」の削除
なお、削除対象のグループをプライマリグループとするユーザーがいる場合は削除することができません。
# groupdel sales
groupdel: cannot remove user's primary group.
|
ユーザがどのグループに所属しているのかは、idコマンドで調べることができます。以下の例では
ユーザー「mike」は、salesグループとmanageグループに所属していることが分かります。
# id mike
uid=501(mike) gid=501(sales) 501(sales), 502(manage)
|
◆ passwdコマンド
ユーザーのログインパスワードを変更するためには、passwdコマンドを使用します。一般ユーザは自身の
パスワードを変更できます。スーパーユーザーは全てのユーザーのパスワードを変更することができます。
また、usermodコマンドと同様にユーザーアカウントをロックすることもできます。パスワードの文字列
は大文字と小文字を区別します。また、一般的な英単語などの文字列はパスワードとして設定できません。
◆ 構文 : passwd [ オプション ] [ ユーザ名 ]
オプション |
説明 |
-l |
指定したユーザーアカウントのロック |
-u |
指定したユーザーアカウントのロックを解除 |
◆ 実行例 : スーパーユーザーがユーザー「mike」のパスワード変更 ( Linuxでは大文字・小文字を区別する )
# passwd mike
Changing password for mike
New UNIX password: ← 新しいパスワードを入力
Retype new UNIX password: ← 新しいパスワードを、再入力
passwd: all authentication tokens updated successfully ← パスワード変更の成功メッセージ
|
◆ シャドウパスワード
現在のシステムではシャドウパスワードが採用されており、パスワードは/etc/passwdファイルではなく、
/etc/shadowファイルにパスワードが保存されているので、rootユーザーしか読み取れずセキュアです。
シャドウパスワードを採用されている場合、/etc/passwdファイルではパスワード部分がxと表示されます。
◆ 実行例 : /etc/passwdファイルの表示結果 (暗号化されたパスワードが第2フィールドに格納されていると分かる)
# more /etc/passwd
mike:x:502:502::/home/mike:/bin/bash
|
◆ 実行例 : /etc/shadowファイルの表示結果
# more /etc/shadow
mike:!!:16020:0:99999:7:::
|
|