⼀、常⽤命令:
(1)创建⽤户命令两条:adduseruseradd
(2)⽤户删除命令:userdel
⼆、两个⽤户创建命令之间的区别
adduser: 会⾃动为创建的⽤户指定主⽬录、系统shell版本,会在创建时输⼊⽤户密码。
useradd:需要使⽤参数选项指定上述基本设置,如果不使⽤任何参数,则创建的⽤户⽆密码、⽆主⽬录、没有指定shell版本。
三、使⽤adduser例如:
$ adduser apple输出显⽰:
这样在创建⽤户名时,就创建了⽤户的主⽬录以及密码。
默认情况下:
adduser在创建⽤户时会主动调⽤ /etc/adduser.conf;
在创建⽤户主⽬录时默认在/home下,⽽且创建为 /home/⽤户名
如果主⽬录已经存在,就不再创建,但是此主⽬录虽然作为新⽤户的主⽬录,⽽且默认登录时会进⼊这个⽬录下,但是这个⽬录并不是属于新⽤户,当使⽤userdel删除新⽤户时,并不会删除这个主⽬录,因为这个主⽬录在创建前已经存在且并不属于这个⽤户。
为⽤户指定shell版本为:/bin/bash
因此常⽤参数选项为:
(1) --home: 指定创建主⽬录的路径,默认是在/home⽬录下创建⽤户名同名的⽬录,这⾥可以指定;如果主⽬录同名⽬录存在,则不再创建,仅在登录时进⼊主⽬录。
(2) --quiet: 即只打印警告和错误信息,忽略其他信息。
(3) --debug: 定位错误信息。
(4) --conf: 在创建⽤户时使⽤指定的configuration⽂件。
(5) --force-badname: 默认在创建⽤户时会进⾏/etc/adduser.conf中的正则表达式检查⽤户名是否合法,如果想使⽤弱检查,则使⽤这个选项,如果不想检查,可以将/etc/adduser.conf中相关选项屏蔽。如:
四、使⽤useradd
注意: 在使⽤useradd命令创建新⽤户时,不会为⽤户创建主⽬录,不会为⽤户指定shell版本,不会为⽤户创建密码。例如:
1、不使⽤任何参数选项创建⽤户:例如创建新⽤户 tt$ sudo useradd tt
(1)需要为⽤户指定登录密码:
(2)需要为⽤户指定shell版本和⽤户登录主⽬录
如上图所⽰,最后⼀⾏⾏⾸只出现:$
查看shell版本,发现是/bin/sh:
说明这是没有指定shell版本
⽤户登录后的所在⽬录为根⽬录: /虽然$HOME环境变量为/home/tt
2、为⽤户指定参数的useradd命令:常⽤命令⾏选项:
(1) -d: 指定⽤户的主⽬录
(2) -m: 如果存在不再创建,但是此⽬录并不属于新创建⽤户;如果主⽬录不存在,则强制创建; -m和-d⼀块使⽤。(3) -s: 指定⽤户登录时的shell版本(4) -M: 不创建主⽬录
例如:
$ sudo useradd -d \"/home/tt\" -m -s \"/bin/bash\" tt解释: -d “/home/tt\" :就是指定/home/tt为主⽬录 -m 就是如果/home/tt不存在就强制创建 -s 就是指定shell版本
修改tt密码:$ sudo passwd tt
五、删除⽤户命令
userdel
(1)只删除⽤户:sudo userdel ⽤户名
(2)连同⽤户主⽬录⼀块删除:sudo userdel -r ⽤户名
如果创建时主⽬录已经存在,即主⽬录不属于当前要删除的⽤户,则⽆法删除主⽬录,例如:
可以看出⽆法删除已有主⽬录/home/tt。
六、相关⽂件:
/etc/passwd - 使 ⽤ 者 帐 号 资 讯,可以查看⽤户信息 /etc/shadow - 使 ⽤ 者 帐 号 资 讯 加 密 /etc/group - 群 组 资 讯
/etc/default/useradd - 定 义 资 讯 /etc/login.defs - 系 统 ⼴ 义 设 定 /etc/skel - 内 含 定 义 档 的 ⽬ 录
————————————————
版权声明:本⽂为CSDN博主「录事参军」的原创⽂章,遵循CC 4.0 BY-SA版权协议,转载请附上原⽂出处链接及本声明。原⽂链接:https://blog.csdn.net/beitiandijun/article/details/41678251
因篇幅问题不能全部显示,请点此查看更多更全内容