ユーザーの作成について
ユーザーを作成したい場合に、useradd
コマンドを使用します。
useradd 作成したいユーザー
と実行する事でユーザーが作成されます。
コマンドが実行出来れば、/etc/passwd
や/etc/shadow
にユーザー情報が反映されます。
設定によりますが、ホームディレクトリも作成されていると思います。(デフォルトの設定であれば、/home
配下に作成されていると思われます。)
[root@localhost ~]# useradd test_user
[root@localhost ~]# id test_user
uid=1002(test_user) gid=1002(test_user) groups=1002(test_user)
[root@localhost ~]# tail -1 /etc/passwd
test_user:x:1002:1002::/home/test_user:/bin/bash
[root@localhost ~]# tail -1 /etc/shadow
test_user:!!:19447:0:99999:7:::
[root@localhost ~]# ll /home
drwx------ 2 test_user test_user 62 3月 31 16:05 test_user
useradd
コマンドには、/etc/default/useradd
にデフォルトで使用される設定値があります。
useradd 作成したいユーザー
で実行した場合は、上記の設定値をもとにユーザーが作成されます。
この設定値については、/etc/default/useradd を閲覧する Or useradd -D
で確認する事が出来ます。
[root@localhost ~]# useradd -D
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
[root@localhost ~]# cat /etc/default/useradd
# useradd defaults file
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
設定値の編集
設定値は以下のような項目がございます。
この設定値を編集する事で、どのような挙動になるのかを確認したいと思います。
※INACTIVE・EXPIRE・SKELを除く。(INACTIVE・EXPIREは後日検証予定です。SKELは雛形が置いてある場所を指定しているだけなので、検証しません。)
項目 | 説明 |
---|---|
GROUP | ユーザー作成時のグループID |
HOME | ホームディレクトリの場所 |
INACTIVE | パスワードの使用期限が過ぎて、アカウントが使えなくなるまでの日数 |
EXPIRE | アカウント失効日 |
SHELL | ログインシェル |
SKEL | ファイルの雛形が配置されている場所 |
CREATE_MAIL_SPOOL | メールスプールの作成 |
GROUPの変更
/etc/login.defs
ファイルのUSERGROUPS_ENAB
の値をno
に変更します。※yesだと、ユーザーとグループが同時に生成されます。
試しに、USERGROUPS_ENAB yes
の状態でユーザーを作成致しました。
[root@localhost /]# cat /etc/login.defs | grep "USERGROUPS_ENAB"
USERGROUPS_ENAB yes
[root@localhost /]# useradd test_user
[root@localhost /]# id test_user
uid=1002(test_user) gid=1002(test_user) groups=1002(test_user)
no
に変更後に、ユーザーを追加致しました。
グループIDが100となっています。これは、GROUP
の値が100となっている為です。
[root@localhost /]# cat /etc/login.defs | grep "USERGROUPS_ENAB"
USERGROUPS_ENAB no
[root@localhost /]# useradd test_user
[root@localhost /]# id test_user
uid=1002(test_user) gid=100(users) groups=100(users)
[root@localhost /]# useradd -D | grep "GROUP"
GROUP=100
HOMEの変更
HOME
の設定を/test
に変更してみます。
/test
配下に、ホームディレクトリが作成された事を確認しました。
[root@localhost /]# cat /etc/default/useradd | grep "HOME"
HOME=/test
[root@localhost /]# useradd test_user
[root@localhost /]# ll /test
合計 0
drwx------ 2 test_user test_user 62 4月 6 00:04 test_user
SHELLの変更
SHELL
の設定を/bin/sh
に変更してみます。
/bin/sh
となっている事を確認しました。
[root@localhost ~]# useradd -D | grep "SHELL"
SHELL=/bin/sh
[root@localhost /]# useradd test_user
[root@localhost ~]# su - test_user
最終ログイン: 2023/04/06 (木) 02:18:28 JST日時 pts/0
-sh-4.2$ echo $SHELL
/bin/sh
CREATE_MAIL_SPOOLの変更
CREATE_MAIL_SPOOL
の設定をno
に変更します。
メールのファイルが生成されていない事を確認しました。
[root@localhost /]# useradd -D | grep "CREATE_MAIL_SPOOL"
CREATE_MAIL_SPOOL=no
[root@localhost /]# useradd test_user
[root@localhost /]# cd /var/spool/mail
[root@localhost mail]# ll
合計 8
-rw-------. 1 root mail 6784 3月 26 22:23 root