RMUSER(8) BSD System Manager's Manual RMUSER(8)
rmuser -- remove users from the system
rmuser [-yv] [-f file] [username ...]
The rmuser utility removes one or more users submitted on the command
line or from a file. In removing a user from the system, this utility:
1. Removes the user's crontab(1) entry (if any).
2. Removes any at(1) jobs belonging to the user.
3. Sends a SIGKILL signal to all processes owned by the user.
4. Removes the user from the system's local password file.
5. Removes the user's home directory (if it is owned by the user),
including handling of symbolic links in the path to the actual home
6. Removes the incoming mail and POP daemon mail files belonging to the
user from /var/mail.
7. Removes all files owned by the user from /tmp, /var/tmp, and
8. Removes the username from all groups to which it belongs in
/etc/group. (If a group becomes empty and the group name is the
same as the username, the group is removed; this complements
adduser(8)'s per-user unique groups.)
9. Removes all message queues, shared memory segments and semaphores
owned by the user.
The rmuser utility refuses to remove users whose UID is 0 (typically
root), since certain actions (namely, killing all the user's processes,
and perhaps removing the user's home directory) would cause damage to a
running system. If it is necessary to remove a user whose UID is 0, see
vipw(8) for information on directly editing the password file.
If rmuser was not invoked with the -y option, it will show the selected
user's password file entry and ask for confirmation that the user be
removed. It will then ask for confirmation to delete the user's home
directory. If the answer is in the affirmative, the home directory and
any files and subdirectories under it will be deleted only if they are
owned by the user. See pw(8) for more details.
As rmuser operates, it informs the user regarding the current activity.
If any errors occur, they are posted to standard error and, if it is pos-
sible for rmuser to continue, it will.
The options are as follows:
-f file The rmuser utility will get a list of users to be removed from
file, which will contain one user per line. Anything following
a hash mark ('#'), including the hash mark itself, is consid-
ered a comment and will not be processed. If the file is owned
by anyone other than a user with UID 0, or is writeable by any-
one other than the owner, rmuser will refuse to continue.
-y Implicitly answer ``yes'' to any and all prompts. Currently,
this includes prompts on whether to remove the specified user
and whether to remove the home directory. This option requires
that either the -f option be used, or one or more user names be
given as command line arguments.
-v Enable verbose mode. Normally, the output inlcudes one line
per removed user; however, with this option rmuser will be much
more chatty about the steps taken.
username Identifies one or more users to be removed; if not present,
rmuser interactively asks for one or more users to be removed.
at(1), chpass(1), crontab(1), finger(1), passwd(1), group(5), passwd(5),
adduser(8), pw(8), pwd_mkdb(8), vipw(8)
The rmuser utility appeared in FreeBSD 2.2.
The rmuser utility does not comprehensively search the file system for
all files owned by the removed user and remove them; to do so on a system
of any size is prohibitively slow and I/O intensive. It is also unable
to remove symbolic links that were created by the user in /tmp or
/var/tmp, as symbolic links on 4.4BSD file systems do not contain infor-
mation as to who created them. Also, there may be other files created in
/var/mail other than /var/mail/username and /var/mail/.pop.username that
are not owned by the removed user but should be removed.
The rmuser utility has no knowledge of YP/NIS, and it operates only on
the local password file.
BSD May 10, 2002 BSD