adduser和useradd有什么区别?

364

Ubuntu上的命令 adduseruseradd 之间有什么区别?

    
Joe Cabezas 15.09.2013 - 22:32

6 答案

317
  

useradd 是使用系统编译的本机二进制文件。但是, adduser 是   一个在后端使用 useradd 二进制文件的perl脚本。

     

adduser 比其后端更加用户友好和互动   %码%。所提供的功能没有区别。

来源:"adduser"与"useradd"有什么区别?

    
给出答案 Radu Rădeanu 15.09.2013 - 22:56
132

从命令行创建新用户时,始终使用 adduser (删除用户时为 deluser )。 (如果您正在编写脚本,特别是如果您的目标是可移植性,则可能需要使用低级实用程序 - 而 adduser / deluser 可能并非在所有发行版上都可用,例如在SuSE上。)

useradduserdelusermod 命令是由于历史原因而存在的低级实用程序,而 adduser/deluser Do Do Right Thing™。 (我记得通过认为 user* 来自字母表中的 adduser/deluser 之后使用哪个,因此"更糟"。)

根据相应的联机帮助页(在Ubuntu 12.04精确穿山甲上,即Debian派生系统)。

adduser 的手册页说:

(强调补充。)

  

adduseraddgroup 根据命令行将用户和组添加到系统    /etc/adduser.conf 中的选项和配置信息。 他们更友好   前端到低级别工具,如 useraddgroupaddusermod 程序,   默认情况下,选择符合Debian策略的UID和GID值,创建一个主页   具有骨架配置的目录,运行自定义脚本和其他功能。    adduseraddgroup 可以以五种模式之一运行:

useradd 的手册页说:

  

useradd 是用于添加用户的低级实用程序。在Debian上,管理员应该   通常使用 adduser(8)

另请参阅:"adduser"和"useradd"之间有什么区别?(在SuperUser上)

    
给出答案 zrajm 24.11.2013 - 18:42
14

adduser :添加完整个人资料和信息的用户(通过,配额,权限等)

useradd :仅添加具有其姓名的用户(如果您要添加仅具有名称的临时用户,则不需要其他信息)

    
给出答案 mandm 02.07.2014 - 13:00
7

adduser 更友好,因为它设置了帐户的主文件夹和其他设置(例如,在登录时自动加载系统统计信息和通知),而 useradd 只是创建用户。

    
给出答案 Paul 15.09.2013 - 23:05
7

另外两个差异导致了useradd可能更适合的特定场景。

  1. 在一些较新的发行版中,包括Ubuntu 14.4,adduser会提示输入密码和"gecos"等信息(finger命令的数据)。这意味着它不太适合从脚本调用(信用:已经在Wernight的评论中提到过)。

    可以通过传递空参数来抑制提示:

    adduser --disabled-password --gecos "" USER
    
  2. useradd 允许您通过 -G 选项传递多个其他组以添加用户。 adduser 似乎要求您为要添加的每个组调用一次命令。

给出答案 AdamS 29.09.2015 - 23:38
3

基本区别是"adduser"会创建主目录&将骨架文件添加到该目录,其中"useradd"不会创建任何主目录&骨架文件!

adduser尝试:

Adding user 'try' ...
Adding new group 'try' (1001) ...
Adding new user 'try' (1001) with group 'try' ...
Creating home directory '/home/try' ...
Copying files from '/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for try
Enter the new value, or press ENTER for the default
        Full Name []:
        Room Number []:
        Work Phone []:
        Home Phone []:
        Other []:
Is the information correct? [Y/n] y

useradd try1:

# ll /home/
total 20
drwxr-xr-x  5 root    root    4096 Oct 26 15:52 ./
drwxr-xr-x 22 root    root    4096 Oct 26 15:47 ../
drwx------  8 ashishk ashishk 4096 Oct 26 15:50 ashishk/
drwxr-xr-x  3 root    root    4096 Oct 14 13:02 .ecryptfs/
drwxr-xr-x  2 try     try     4096 Oct 26 15:52 try/
[email protected]:/home/ashishk#
    
给出答案 Ashish Karpe 26.10.2015 - 15:10

阅读有关标签的其他问题