ユーザを作成する
adduser
コマンドでユーザーを作成する。
useradd
というコマンドもあるらしいが、そちらはホームディレクトリが作成されない。
$ sudo adduser USER_NAME
Adding user `USER_NAME' ...
Adding new group `USER_NAME' (1004) ...
Adding new user `USER_NAME' (1002) with group `USER_NAME' ...
Creating home directory `/home/USER_NAME' ...
Copying files from `/etc/skel' ...
Enter new UNIX password: # パスワードを入力
Retype new UNIX password: # 再度パスワードを入力
passwd: password updated successfully
Changing the user information for USER_NAME
Enter the new value, or press ENTER for the default
Full Name []: # 空白でもOK
Room Number []: # 空白でもOK
Work Phone []: # 空白でもOK
Home Phone []: # 空白でもOK
Other []: # 空白でもOK
Is the information correct? [Y/n] Y
ドキュメント
ユーザーをグループに追加する
ユーザーをグループに追加するには、gpasswd
を使用する。
$ sudo gpasswd -a USER_NAME GROUP_NAME
ユーザーをroot
グループに追加するには、以下のようにする。
$ sudo gpasswd -a USER_NAME sudo
Adding user USER_NAME to group sudo
ドキュメント
ユーザーを確認する
ユーザーの確認は、ホームディレクトリが存在するかで確認するか、パスワードの有無で確認する。
前者はわかりやすいが、ホームディレクトリがないユーザーを見逃してしまうので注意。
$ ls -l /home
$ cat /etc/group
$ getent passwd
ユーザーを削除する
ユーザーが不要になったら、userdel
コマンドでユーザーを削除する。
-r
コマンドは、ホームディレクトリも削除するオプション。
deluser
というコマンドもあるらしい。
$ sudo userdel -r USER_NAME
所属するグループを確認する
対象のユーザーが所属するグループを確認するには、groups
コマンドを使用する。
$ groups USER_NAME
ユーザーを削除できない場合
ユーザーがログイン中や、対象ユーザーが所有者のプロセスが動いている場合、user XXX is currently logged in
というエラーで削除ができない。
そんな時は、who
コマンドでログイン状況を確認するか、ps
コマンドで対象ユーザーが所有者のプロセスを探し、kill
コマンドでプロセスを終了してから、削除を行う。