useradd 与adduser的区别

原创 2015年07月06日 20:36:49

一直以来都搞不清在Ubuntu下useradd和adduser的区别。网上也大多的帖子说其实两个就是实现一样的功能,但是我自己在做得时候,却问题多多,现在在总结之后写一写备忘,也让大家参考一下。
useradd是一个linux命令,但是它提供了很多参数在用户使用的时候根据自己的需要进行设置;而adduser是一个perl 脚本,在使用的时候会出现类似人机交互的界面,提供选项让用户填写和选择,这个命令比起useradd来说比较简单,也比较傻瓜。
一.adduser的使用详解
在使用adduser命令的时候,系统会添加这个用户名,并且还会自动地创建与这个用户名名字一样的用户组作为这个用户的初始用户组。此外,还会自动地在/home目录下面创建一个与用户同名的目录,接着执行"cp /etc/skel  /home/用户名"的操作,实现新增用户的主目录的初始化。
用adduser这个命令创建的账号是系统账号,可以用来登录到我们的ubuntu系统。
二.useradd的使用详解
useradd有大量的参数供我们进行个性化设置,但是,也有比较多的默认设置是我们不知道的,所以,在进行这个参数选择的时候还是需要谨慎和细心,不然的话可能会得到跟我们预想中不一样的结果。useradd的参数如下:
        -c 备注 加上备注。并会将此备注文字加在/etc/passwd中的第5项字段中
        -d 用户主文件夹。指定用户登录所进入的目录,并赋予用户对该目录的的完全控制权
        -e 有效期限。指定帐号的有效期限。格式为YYYY-MM-DD,将存储在/etc/shadow
        -f 缓冲天数。限定密码过期后多少天,将该用户帐号停用
        -g 主要组。设置用户所属的主要组
        -G 次要组。设置用户所属的次要组,可设置多组
        -M 强制不创建用户主文件夹
       -m 强制建立用户主文件夹,并将/etc/skel/当中的文件复制到用户的根目录下
        -p 密码。输入该帐号的密码
        -s shell。用户登录所使用的shell
        -u uid。指定帐号的标志符user id,简称uid
useradd这个命令创建的是普通账号,并不能用来登录系统。
于是我得出了一个结论:当使用参数"-m"的时候,系统会自动地在/home目录下建立一个与新建用户同名的用户主文件夹;如果不使用"-m"的话,那么就默认是使用“-M”参数,不创建主文件夹,即使你使用了"-d"这个参数。所以,"-d"这个参数是跟"-m"一起使用的,让用户自己选择主文件夹的路径。


添加用户:useradd -m -s  用户名  然后设置密码  passwd 用户名

删除用户:userdel  -r  用户名

 

1. 在root权限下如果没有在root权限下,会出现:useradd: cannot lock /etc/passwd; try again later. 

useradd只是创建了一个用户名,如 (useradd  +用户名 ),它并没有在/home目录下创建同名文件夹,也没有创建密码,因此利用这个用户登录系统,是登录不了的,为了避免这样的情况出现,可以用 (useradd -m +用户名)的方式创建,它会在/home目录下创建同名文件夹,然后利用( passwd + 用户名)为指定的用户名设置密码。

2. 可以直接利用adduser创建新用户(adduser +用户名)这样在/home目录下会自动创建同名文件夹

 

3.  删除用户,只需使用一个简单的命令“userdel 用户名”即可。不过最好将它留在系统上的文件也删除掉,你可以使用“userdel -r 用户名”来实现这一目的。 

 

 Linux系统如何添加用户这个问题到网上问一下或者搜一下,很多人可能会说useradd实际这是不对的。useradd只会添加一个用户,没有创建它的主目录,除了添加一个新用户之外什么都没有。这个用户甚至不能登录,因为没有密码。正确的做法是man page里说的,adduser,这个命令实际是一个perl脚本,是useradd等类似底层命令的更友好的前端,它会用交互性的方式建立新用户,使用它可以指定新用户的家目录,登录密码,是否加密主目录等等,它会:

1.建立一个新目录作为家目录
2.建立同名新组
3.把用户的主要组设为该组(除非命令选项覆盖以上默认动作,比如–disall-homdirecry之类)
4.从/etc/SKEL目录下拷贝文件到家目录,完成初始化
5.建立新用户的密码
6.如果其存在的话,还会执行一个脚本。

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

linux用户管理(1)----创建用户(adduser和useradd)和删除用户(userdel)

http://www.2cto.com/os/201412/357346.html 一、常用命令: (1)创建用户命令两条: adduser useradd ...

useradd 与adduser的区别

添加用户:useradd -m 用户名  然后设置密码  passwd 用户名 删除用户:userdel  -r  用户名   1. 在root权限下,useradd只是创建了一个用户名,如 (...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

Linux用户管理:addgroup、adduser、usermod

addgroup和 groupadd是一个命令。student@student16-x1:~$ groupadd -help Usage: groupadd [options] GROUPOption...

linux useradd(adduser)命令参数及用法详解(linux创建新用户命令)

功能说明:建立用户帐号。  语  法:useradd [-mMnr][-c ][-d ][-e ][-f ][-g ][-G ][-s ][-u ][用户帐号] 或 useradd -D [-b...

linux用户管理(1)----创建用户(adduser和useradd)和删除用户(userdel)

一、常用命令: (1)创建用户命令两条: adduser useradd (2)用户删除命令: userdel 二、两个用户创建命令之间的区别 adduser: 会自动为创建的用户指定主目录、系统...

linux做代理服务器的方法

Squid是一个Linux系统下优秀的代理服务器软件。Squid可以配置普通上网代理(正向代理)、反向代理、透明代理。系统是CentOS6.2。Squid主机IP为192.168.1.100。 安装s...

Chromium网页Layer Tree绘制过程分析

网页绘图表面创建完成之后,调度器就会请求绘制CC Layer Tree,这样网页在加载完成之后就能快速显示出来。通过CC Layer Tree可以依次找到Graphics Layer Tree、Ren...

linux 增加用户 useradd 用法小结及配置文件说明 .

在Linux 系统中,所有的用户和组像一个国家。如果国家要繁荣昌盛的话,需要治理得当,需要有主席或者总统,以及地方官员和老百姓组成。在linux 中如果你对安全需求比较苛刻,完全可以限制用户的各种行为...

centos7系统备份与还原

1. 前言在使用Ubuntu之前,相信很多人都有过使用Windows系统的经历。如果你备份过Windows系统,那么你一定记忆犹新:首先需要找到一个备份工具(通常都是私有软件),然后重启电脑进入备份工...

Chromium网页绘图表面(Output Surface)创建过程分析

在Chromium中,Render进程在绘制网页之前,要为网页创建一个绘图表面。绘图表面描述的是网页经过渲染之后得到的输出。这个输出需要交给Browser进程处理,才能显示在屏幕上。在硬件加速渲染条件...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)