Linux下用户的创建与删除

YoungLinux 2020-09-16

我们在Linux下创建用户主要有两种方式:adduser和useradd,它们的区别以及主要用法如下:

Linux下用户的创建与删除

adduser

adduser的用法很简单,只需adduser+username即可,如下:

sudo adduser alvin 

这个命令其实是个perl脚本,它的底层还是调用useradd命令。网上很多教程说它会进行人机交互,但现在有些发行版(比如centOS)其实已经改进了,无需繁琐的交互,只需以上一条命令即可创建用户。

adduser命令会自动创建用户家目录,指定shell版本。但是,有些发行版在创建用户的同时,会要求你设定用户密码,而有些不会,需要手动设置密码。

为用户创建密码方法如下:

sudo passwd alvin 

useradd

useradd是一个相对复杂一些的命令,而且它的自由度更高。如果只是运行useradd+username的话,它会创建一个三无用户,即:无用户家目录,无指定shell版本,无密码。

为了顺利创建一个用户,我们还需通过一些选项来完善它的参数。useradd命令常用的选项如下:

  • -c<备注>:加上备注文字。备注文字会保存在passwd的备注栏位中;
  • -d<登入目录>:指定用户登入时的启始目录;
  • -D:变更预设值;
  • -e<有效期限>:指定帐号的有效期限;
  • -f<缓冲天数>:指定在密码过期后多少天即关闭该帐号;
  • -g<群组>:指定用户所属的群组;
  • -G<群组>:指定用户所属的附加群组;
  • -m:自动建立用户的登入目录;
  • -M:不要自动建立用户的登入目录;
  • -n:取消建立以用户名称为名的群组;
  • -r:建立系统帐号;
  • -s:指定用户登入后所使用的shell;
  • -u:指定用户id。

对于我们普通用户而言,更常用的选项是以上标红的三个。而对于管理人员而言,则以上所有的选项都需要掌握。我们目前重点介绍以上标红的三个选项。

-d选项用于指定用户家目录,也就是用户登录时所进来的目录。比如:-d /home/alvin,就是指定用户的家目录是/home/alvin。通常-d选项与-m选项一起使用,-m选项的作用是,如果指定目录不存在时,则自动创建。

而-s选项则是指定用户默认shell版本。如果不设定的话,它的默认版本是/bin/sh。所以,我们使用useradd创建新用户时的经典用法如下:

sudo useradd alvin -m -d /home/alvin -s /bin/bash 

通过这种方式用户可以成功创建,但还是没有密码。创建密码的方式依然使用passwd命令,在此不再赘述。

userdel

相关推荐