Linux下用户的创建与删除

Linux下用户的创建与删除

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

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

删除用户,“userdel 用户名”即可。最好将它留在系统上的文件也删除掉,可以使用“userdel -r 用户名”来实现。

sudo userdel -r alvin

---------------

我是良许,世界500强外企 Linux 开发工程师,专业生产 Linux 干货。