deluser, delgroup - 从系统中删除用户或组
概要
deluser [--backup] [--backup-suffix str] [--backup-to dir] [--conf file] [--debug]
[--remove-all-files] [--remove-home] [--quiet] [--verbose] [--stdoutmsglevel prio]
[--stderrmsglevel prio] [--logmsglevel prio] user
deluser [--system] [--backup] [--backup-suffix str] [--backup-to dir] [--conf file] [--debug]
[--remove-all-files] [--remove-home] [--quiet] [--verbose] [--stdoutmsglevel prio]
[--stderrmsglevel prio] [--logmsglevel prio] user
deluser [--group] [--conf file] [--debug] [--only-if-empty] [--quiet] [--verbose]
[--stdoutmsglevel prio] [--stderrmsglevel prio] [--logmsglevel prio] group
delgroup [--system] [--conf file] [--debug] [--only-if-empty] [--quiet] [--verbose]
[--stdoutmsglevel prio] [--stderrmsglevel prio] [--logmsglevel prio] group
deluser [--conf file] [--debug] [--quiet] [--verbose] [--stdoutmsglevel prio]
[--stderrmsglevel prio] [--logmsglevel prio] user group
deluser --help
deluser --version
描述
deluser 和 delgroup 根据命令行选项以及 /etc/deluser.conf 和 /etc/adduser.conf 中的配置信息,从系统中删除用户和组。
它们是 Debian 特定的 userdel 和 groupdel 程序的界面,这两个程序更具跨发行版的通用性。deluser 和 delgroup 可以选择性地删除主目录,甚至删除系统中属于要删除的用户的所有文件,运行自定义脚本,并具有其他功能。
有关所有选项的完整列表和说明,请参见“选项”部分。
deluser 和 delgroup 可以以三种模式之一运行:
删除用户
如果使用一个非选项参数调用,并且没有使用 --group 选项,则 deluser 将删除非系统用户。
默认情况下,deluser 将删除用户,而不删除主目录、邮件池或系统上属于该用户的所有其他文件。可以使用 --remove-home 选项来删除主目录和邮件池。
--remove-all-files 选项删除系统中属于该用户的所有文件。请注意,如果同时激活 --remove-home 和 --remove-all-files 选项,则 --remove-home 选项将不再生效,因为所有文件(包括主目录和邮件池)都已经包含在 --remove-all-files 选项中。
如果您想在删除文件之前备份所有文件,可以使用 --backup 选项,该选项将在 --backup-to 选项指定的目录中创建一个名为 username.tar(.gz|.bz2) 的文件。
默认情况下,备份存档使用 gzip(1) 进行压缩。要更改此设置,可以使用 --backup-suffix 选项设置为 tar --auto-compress 支持的任何后缀。
deluser 将拒绝删除 root 帐户。
如果命令行中给出了 --system 选项,则仅当用户是系统用户时才执行删除操作。这可以避免意外删除非系统用户。此外,如果用户不存在,则不会返回错误值。Debian 包维护脚本可以使用此标志来删除系统用户或组,同时忽略删除操作已发生的这种情况。
删除组
如果使用 --group 选项调用 deluser,或者调用 delgroup,则将删除一个组。 现有用户的基本组不能被删除。如果给出了 --only-if-empty 选项, 并且该组仍有成员,则该组将不会被删除。
--system 选项添加与用户相同的附加功能。
从特定组中删除用户
如果使用两个非选项参数调用,deluser 将从特定组中删除用户。
选项
deluser 的不同模式允许使用不同的选项。如果某个选项没有列出有效的模式,则它会被所有模式接受。
某些选项可能存在较短的版本,这是出于历史原因。这些较短的版本将继续受到支持,但已从文档中删除。建议用户迁移到选项的较长版本。
--backup
备份用户主目录和邮件池文件中包含的所有文件到名为 username.tar.bz2 或 username.tar.gz 的文件中。有效模式:deluser、deluser --system。
--backup-suffix str
选择用于主目录备份的压缩算法。可以设置为 tar --auto-compress 识别的任何后缀。默认为 .gz。有效模式:deluser、deluser --system。
--backup-to dir
将备份文件放置在当前目录而不是 dir 中。这会隐式设置 --backup 选项。默认为当前工作目录。有效模式:deluser、deluser --system。
--conf file
使用 file 代替默认文件 /etc/deluser.conf 和 /etc/adduser.conf。可以给出多个 --conf 选项。
--debug
与 --stdoutmsglevel=debug 同义。已弃用。
--group
删除一个组。如果程序作为 delgroup 调用,则这是默认操作。有效模式:deluser。
--help
显示简短的说明。
--only-if-empty
仅在没有剩余成员时才删除。有效模式:deluser --group、delgroup。
--quiet
与 --stdoutmsglevel=warn 同义。已弃用。
--remove-all-files
删除系统上属于该用户的所有文件。请注意,--remove-home 不再生效。如果指定了 --backup,则在执行备份后删除文件。有效模式:deluser、deluser --system。
--remove-home
删除用户的主目录及其邮件池。如果指定了 --backup,则在执行备份后删除文件。有效模式:deluser、deluser --system。
--system
仅当用户/组是系统用户/组时才删除。如果用户不存在,则不会返回错误值。有效模式:deluser、deluser --system。
--verbose
与 --stdoutmsglevel=info 同义。已弃用。
--stdoutmsglevel prio
--stderrmsglevel prio
--logmsglevel prio
将最小优先级设置为分别记录到 syslog/journal 和控制台的消息。值包括 trace、debug、info、warn、err 和 fatal。具有此处或更高优先级的消息将打印到相应的介质。打印到 stderr 的消息不会在 stdout 上重复。这允许本地管理员控制 adduser 在控制台上和日志中的详细程度,从而独立地控制,同时将可能令人困惑的信息保留在日志中,同时仍将有用的信息保留在日志中。
--version
显示版本和版权信息。
记录
deluser 使用可配置的、广泛的日志记录,以根据系统管理员的需求和愿望定制其详细程度。
这与 adduser 类似。有关所有详细信息,请参见 adduser(8)。
退出值
adduser(8) 中记录的退出值也适用于 deluser。
安全
deluser 需要 root 权限,并且通过 --conf 命令行选项提供,可以使用不同的配置文件。不要使用 sudo(8) 或类似工具来为 deluser 提供部分权限,并使用受限的命令行选项。
请参阅
adduser(8)、deluser.conf(5)、deluser.local.conf(8)、groupdel(8)、userdel(8)