Linux - useradd/mod/del groupadd/mod/del



 ◆ 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」に変更
 # usermod -g sales mike


 ◆ 実行例 : ユーザー「mike」の所属するグループを「manage」に変更
 # usermod -G manage mike


 ◆ 実行例 : ユーザー「mike」のアカウントを一時的に無効化
 # usermod -L mike



 既存のユーザーアカウントを削除するためには、userdelコマンドを使用します。

 ◆ 構文 : userdel [ オプション ] ユーザー名

オプション 説明
 -r  ホームディレクトリも削除する際に指定


 ◆ 実行例 : ユーザー「mike」のアカウントを、ホームディレクトリも含めて削除
 # userdel -r mike


 ◆ groupaddコマンド、groupmodコマンド、groupdelコマンド

 グループアカウントを新規作成するためには、
groupaddコマンドを使用します。

 ◆ 構文 : groupadd [ オプション ] グループ名

オプション 説明
 -g グループID  グループIDの指定


 ◆ 実行例 : グループ「sales」の作成
 # groupadd sales



 作成済みのグループアカウントの情報を変更するためには、groupmodコマンドを使用します。

 ◆ 構文 : groupmod [ オプション ] グループ

オプション 説明
 -g グループID  指定したグループIDへ変更
 -n グループ名  指定したグループ名へ変更


 ◆ 実行例 : グループ「sales」の名称を「salesmarketing」に変更
 # groupmod -n salesmarketing sales



 作成済みのグループアカウントを削除するためには、groupdelコマンドを使用します。

 ◆ 構文 : groupdel グループ名

 ◆ 実行例 : グループ「sales」の削除
 # 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:::




Linux 技術入門

Copyright(C) 2002-2024 ネットワークエンジニアとして All Rights Reserved