linux命令useradd添加用户和删除用户详解,用户组

linux命令useradd添加用户详解
1.作用
useradd或adduser命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户。

2.格式
linux命令useradd添加用户详解
1.作用
useradd或adduser命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户。

2.格式

useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name

3.主要参数

-c:加上备注文字,备注文字保存在passwd的备注栏中。

-d:指定用户登入时的主目录,替换系统默认值/home/<用户名>

-D:变更预设值。

-e:指定账号的失效日期,日期格式为MM/DD/YY,例如06/30/12。缺省表示永久有效。

-f:指定在密码过期后多少天即关闭该账号。如果为0账号立即被停用;如果为-1则账号一直可用。默认值为-1.

-g:指定用户所属的群组。值可以使组名也可以是GID。用户组必须已经存在的,期默认值为100,即users。

-G:指定用户所属的附加群组。

-m:自动建立用户的登入目录。

-M:不要自动建立用户的登入目录。

-n:取消建立以用户名称为名的群组。

-r:建立系统账号。

-s:指定用户登入后所使用的shell。默认值为/bin/bash。

-u:指定用户ID号。该值在系统中必须是唯一的。0~499默认是保留给系统用户账号使用的,所以该值必须大于499。

4.说明

useradd可用来建立用户账号,它和adduser命令是相同的。账号建好之后,再用passwd设定账号的密码。使用useradd命令所建立的账号,实际上是保存在/etc/passwd文本文件中。

5.应用实例

建立一个新用户账户testuser1,并设置UID为544,主目录为/usr/testuser1,属于users组:

代码如下 复制代码

useradd -u 544 -d /usr/testuser1 -g users -m testuser1

加-m 如果主目录不存在则自动创建

6.例

使用管理员账号登陆系统,建立用户tmp_3452 密码3sdt5:Eawhg

添加用户命令:

代码如下 复制代码
[root@ptr228 ~]# adduser tmp_3452

修改密码命令:

[root@ptr228 ~]# passwd tmp_3452

在系统出现提示输入密码是输入密码:3sdt5:Eawhg 系统提示输入确认密码后再输入一次。OK添加成功。

7.useradd批量添加用户

使用useradd时,如果后面不添加任何参数选项,例如:#sudo useradd test创建出来的用户将是默认“三无”用户:一无Home Directory,二无密码,三无系统Shell。

步骤如下:

(1)建立用户名列表文件username.txt (同上)

(2)创建用户密码对应文件serc.txt,格式为username:password (注意文件的格式)

代码如下 复制代码
stu1:tt1
stu2:tt2
stu3:tt3
stu4:tt4
stu5:tt5
stu6:tt6

(3)批量添加的脚本文件aa.sh

代码如下 复制代码
##添加用户,并且在/home/ 下为用户生成用户目录。cat < username.txt | xargs -n 1 useradd -m##批处理模式下更新密码
chpasswd < serc.txt##将上述的密码转换到密码文件和组文件
pwconv##结束验证信息
echo “OK 新建完成”(4)执行该脚本文件,查看执行过程

root@liu:/home/liu/Desktop/Dos# sh aa.sh

新建完成 useradd命令,在执行没有出错的情况下,不会输出任何的信息,不会与用户交互。但是用户必须要记住那些设置项目,否则添加的用户可能出现一些预想不到的结果。

8.新创建一个oracle用户,这初始属于oinstall组,且同时让他也属于dba组。

#useradd oracle -g oinstall -G dba

新创建一个oracle用户,这初始属于oinstall组,且同时让他也属于dba组。

9.无法使用shell,且其用户目录至/var/servlet/service

#useradd tomcat -d /var/servlet/service -s /sbin/nologin

无法使用shell,且其用户目录至/var/servlet/service

二,userdel删除用户

删除刚创建的账号 tmp_3452

删除用户命令:

代码如下 复制代码
[root@ptr228 ~]# userdel tmp_3452
或者连同用户目录一并删除:

代码如下 复制代码
[root@ptr228 ~]# userdel -f tmp_3452

注意:这里如果用户还在登陆的话,会提示,用户正在登陆无法删除。此时可能需要先强制用户退出。

  1. 强制退出已经登陆用户

查看当前登陆用户的命令:

代码如下 复制代码
[root@ptr228 ~]# w

会输入如下结果:

代码如下 复制代码
12:10:27 up 21:13, 1 user, load average: 0.00, 0.01, 0.08
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 *..*. 11:33 0.00s 0.08s 0.00s w
tmp_3254 ps1 *..*. 11:33 0.00s 0.08s 0.00s ls

这里知道了登陆用户的tty是ps1执行强制退出命令pkill:

命令原型: pkill -kill -t [TTY]

代码如下 复制代码
[root@ptr228 ~]# pkill -kill -t ps1

执行之后再执行名w 可以看到用户已经退出。

重复执行第二步的删除用户命令,删除成功。
3.主要参数

-c:加上备注文字,备注文字保存在passwd的备注栏中。

-d:指定用户登入时的主目录,替换系统默认值/home/<用户名>

-D:变更预设值。

-e:指定账号的失效日期,日期格式为MM/DD/YY,例如06/30/12。缺省表示永久有效。

-f:指定在密码过期后多少天即关闭该账号。如果为0账号立即被停用;如果为-1则账号一直可用。默认值为-1.

-g:指定用户所属的群组。值可以使组名也可以是GID。用户组必须已经存在的,期默认值为100,即users。

-G:指定用户所属的附加群组。

-m:自动建立用户的登入目录。

-M:不要自动建立用户的登入目录。

-n:取消建立以用户名称为名的群组。

-r:建立系统账号。

-s:指定用户登入后所使用的shell。默认值为/bin/bash。

-u:指定用户ID号。该值在系统中必须是唯一的。0~499默认是保留给系统用户账号使用的,所以该值必须大于499。

4.说明

useradd可用来建立用户账号,它和adduser命令是相同的。账号建好之后,再用passwd设定账号的密码。使用useradd命令所建立的账号,实际上是保存在/etc/passwd文本文件中。

5.应用实例

建立一个新用户账户testuser1,并设置UID为544,主目录为/usr/testuser1,属于users组:

代码如下 复制代码
  #useradd -u 544 -d /usr/testuser1 -g users -m testuser1

加-m 如果主目录不存在则自动创建

6.例

使用管理员账号登陆系统,建立用户tmp_3452 密码3sdt5:Eawhg

添加用户命令:

代码如下 复制代码
[root@ptr228 ~]# adduser tmp_3452

修改密码命令:

[root@ptr228 ~]# passwd tmp_3452

在系统出现提示输入密码是输入密码:3sdt5:Eawhg 系统提示输入确认密码后再输入一次。OK添加成功。

7.useradd批量添加用户

使用useradd时,如果后面不添加任何参数选项,例如:#sudo useradd test创建出来的用户将是默认“三无”用户:一无Home Directory,二无密码,三无系统Shell。

步骤如下:

(1)建立用户名列表文件username.txt (同上)

(2)创建用户密码对应文件serc.txt,格式为username:password (注意文件的格式)

代码如下 复制代码
stu1:tt1
stu2:tt2
stu3:tt3
stu4:tt4
stu5:tt5
stu6:tt6

(3)批量添加的脚本文件aa.sh

代码如下 复制代码
##添加用户,并且在/home/ 下为用户生成用户目录。cat < username.txt | xargs -n 1 useradd -m##批处理模式下更新密码
chpasswd < serc.txt##将上述的密码转换到密码文件和组文件
pwconv##结束验证信息
echo “OK 新建完成”(4)执行该脚本文件,查看执行过程

root@liu:/home/liu/Desktop/Dos# sh aa.sh

新建完成 useradd命令,在执行没有出错的情况下,不会输出任何的信息,不会与用户交互。但是用户必须要记住那些设置项目,否则添加的用户可能出现一些预想不到的结果。

8.新创建一个oracle用户,这初始属于oinstall组,且同时让他也属于dba组。

#useradd oracle -g oinstall -G dba

新创建一个oracle用户,这初始属于oinstall组,且同时让他也属于dba组。

9.无法使用shell,且其用户目录至/var/servlet/service

#useradd tomcat -d /var/servlet/service -s /sbin/nologin

无法使用shell,且其用户目录至/var/servlet/service

二,userdel删除用户

删除刚创建的账号 tmp_3452

删除用户命令:

代码如下 复制代码
[root@ptr228 ~]# userdel tmp_3452
或者连同用户目录一并删除:

代码如下 复制代码
[root@ptr228 ~]# userdel -f tmp_3452

注意:这里如果用户还在登陆的话,会提示,用户正在登陆无法删除。此时可能需要先强制用户退出。

  1. 强制退出已经登陆用户

查看当前登陆用户的命令:

代码如下 复制代码
[root@ptr228 ~]# w

会输入如下结果:

代码如下 复制代码
12:10:27 up 21:13, 1 user, load average: 0.00, 0.01, 0.08
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 *..*. 11:33 0.00s 0.08s 0.00s w
tmp_3254 ps1 *..*. 11:33 0.00s 0.08s 0.00s ls

这里知道了登陆用户的tty是ps1执行强制退出命令pkill:

命令原型: pkill -kill -t [TTY]

代码如下 复制代码
[root@ptr228 ~]# pkill -kill -t ps1

执行之后再执行名w 可以看到用户已经退出。

重复执行第二步的删除用户命令,删除成功。

查看所有组的简单信息

more group

1
设置新的组

groupadd  新的组名

1
创建新用户并把它放在新的组里,不在默认的组

useradd  新用户名  -g   新的用户组

1
把旧用户改变组

usermod -g  旧用户名  需要放在的组的名

1
删除组

userdel  组名

1
但是它的目录还没有被删除
所以还需要一步,删除它的目录

rm  -rf  被删除的组名

1
切换用户

su  别的用户名

passwd修改用户口令
passwd 选项 用户名
-l 锁定口令,即禁用账号。
-u 口令解锁。
-d 使账号无口令。
-f 强迫用户下次登录时修改口令。

例1:

$ passwd

Old password:******
New password:*******
Re-enter new password:*******
假设当前用户是sam,则上面的命令修改该用户自己的口令。

如果是超级用户,可以用下列形式指定任何用户的口令:

passwd sam

New password:*******
Re-enter new password:*******
例2:

passwd -d sam

将用户sam的口令删除,这样用户sam下一次登录时,系统就不再询问口令。

passwd -l sam

锁定sam用户,使其不能登录。

cat /etc/shadow

可以查看用户名。

cat /etc/group
可以查看组。

groupadd命令
groupadd 选项 用户组

-g 指定新用户组的组标识号(GID)。
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。

例1:

groupadd group1

此命令向系统中增加了一个新组group1,新组的组标识号是在当前已有的最大组标识号的基础上加1。

例2:

#groupadd -g 101 group2
此命令向系统中增加了一个新组group2,同时指定新组的组标识号是101。

groupdel,groupmod,等命令和用户命令相类似,不再细说。

newgrp命令
$ newgrp root
将当前用户切换到root用户组,前提条件是root用户组确实是该用户的主组或附加组。

chown命令
chown 选项 所有者:组 文件
-c 显示更改的部分的信息
-f 忽略错误信息
-h 修复符号链接
-R 处理指定目录以及其子目录下的所有文件
-v 显示详细的处理信息
-deference 作用于符号链接的指向,而不是链接文件本身

chown -R hadoop:hadoop /home/hadoop/
将/home/hadoop下所有目录以及其子目录下的所有文件用户和用户组改为hadoop。

如何让普通用户拥有root权限
修改/etc/passwd即可,把用户名的ID和ID组修改成0

adduser命令
在Ubuntu下adduser在使用该命令创建用户是会在/home下自动创建与用户名同名的用户目录,系统Shell版本,会在创建时会提示输入密码,更加友好。

有资料介绍,有时用户不能登陆的另一种情况没测试过
登陆会发现无法登陆ftp

还需要关闭pam过度验证。

vim /etc/pam.d/vsftpd

注释掉下面这句话。
###################################

#auth required /lib/security/pam_shells.so
其它情况
在这里插入图片描述
解决办法:

编辑配置文件,加入

allow_writeable_chroot=YES
这样一行

问题原因:新版析vsfptd加入了安全需求,切根不允许写,要加这个选项。才可以

连接慢的原因:阿里云是封随机端口的,所以要采用直连模式,也就是取消被动模式

编辑配置文件 加入

pasv_enable=no
这个选项是关闭被动模式,不启用随机端口,如果不关闭,会启用随机端口,因阿里拦截,就会有一个超时等待,这就是慢的原因。

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yueyecheshou1980

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值