龙空技术网

Linux-用户和组管理(二)

不寐旋律 140

前言:

如今小伙伴们对“linux怎么删除用户组命令”大概比较关切,你们都想要学习一些“linux怎么删除用户组命令”的相关知识。那么小编在网摘上搜集了一些有关“linux怎么删除用户组命令””的相关资讯,希望大家能喜欢,兄弟们一起来学习一下吧!

话接上回。。。

内容概述:

3 用户和组管理命令

3.1 用户创建

3.2 用户属性修改

3.3 删除用户

3.4 查看用户相关的ID信息

3.5 切换用户或以其他用户身份执行命令

3.6 设置密码

3.7 创建组

3.8 修改组

3.9 组删除

3.10 更改组密码

3 用户和组管理命令

用户管理命令

useraddusermoduserdel

组帐号维护命令

groupaddgroupmodgroupdel

3.1 用户创建

useradd 命令可以创建新的Linux用户

格式:

useradd [选项 选项的参数 ...] 用户名

常见选项:

-u :指定用户的uid

-o :配合-u 选项,不检查UID的唯一性

-g :GID 指明用户所属基本组,可为组名,也可以GID

-c :"COMMENT“ 用户的注释性的描述信息

-d :HOME_DIR 以指定的路径(不存在)为家目录

-s :SHELL 指明用户的默认shell程序,可用列表在/etc/shells文件中

-G :GROUP1[,GROUP2,...] 为用户指明附加组,组须事先存在

-N :不创建私用组做主组,使用users组做主组

-r :创建系统用户 CentOS 6之前: ID<500,CentOS 7以后: ID<1000

-m :创建家目录,用于系统用户

-M :不创建家目录,用于非系统用户

-p :指定加密的密码

案例:

#创建user1用户,要求uid 1500,初始组root,家目录在/tmp/user1,描述信息为“this a test user”。 [root@nginx ~]#useradd -u 1500 -g root -d /tmp/user1 -c "this a test user" user1

说明:

#useradd 命令默认值设定由  /etc/default/useradd  定义[root@nginx ~]# cat /etc/default/useradd# useradd defaults fileGROUP=100HOME=/homeINACTIVE=-1   #对应/etc/shadow文件第7列,即用户密码过期的宽限期EXPIRE=       #对应/etc/shadow文件第8列,即用户帐号的有效期SHELL=/bin/bashSKEL=/etc/skelCREATE_MAIL_SPOOL=yes[root@nginx ~]# 

显示或更改默认设置

useradd -D

useradd –D -s SHELL

useradd –D –b BASE_DIR

useradd –D –g GROUP

新建用户的相关文件

/etc/default/useradd/etc/skel/*/etc/login.defs

批量创建用户

格式:

newusers filename

filename是包含以下信息的文本文件,执行该命令即可创建新的用户和组。

编辑一个文本文件,里面包含了要创建的用户名和密码等信息,每行一个用户,格式如下:

username:password:uid:gid:comment:homedir:shell

其中:

username:用户名,必填;

password:密码,必填;

uid:用户ID,可选,如果不填,则系统会自动分配;

gid:组ID,可选,如果不填,则系统会自动分配;

comment:用户描述,可选;

homedir:用户家目录,可选;

shell:用户登录时使用的shell,可选。

批量修改用户口令

echo username:passwd | chpasswd

3.2 用户属性修改

usermod 命令可以修改用户属性

格式:

usermod【选项】 【用户名】

常见选项:

-u :UID: 新UID

-g :GID: 新主组

-G :GROUP1[,GROUP2,...[,GROUPN]]]:新附加组,原来的附加组将会被覆盖;若保留原有,则要同时使用-a选项

-s :SHELL:新的默认SHELL

-c :'COMMENT':新的注释信息

-d :HOME: 新家目录不会自动创建;若要创建新家目录并移动原家数据,同时使用-m选项

-l :login_name: 新的名字

-L : lock指定用户,在/etc/shadow 密码栏的增加 !

-U : unlock指定用户,将 /etc/shadow 密码栏的 ! 拿掉

-e :YYYY-MM-DD: 指明用户账号过期日期

-f :INACTIVE: 设定非活动期限,即宽限期

更改登录目录

[root@nginx ~]#  usermod -d /home/zhangsan  zhangsan

改变用户的uid

[root@nginx ~]#  usermod -u 777 zhangsan

3.3 删除用户

userdel可删除用户帐号与相关的文件;若不加参数,则仅删除用户帐号,而不删除相关文件

格式:

userdel  [选项]  [用户帐号]

常见选项:

-f, --force 强制-r, --remove 删除用户家目录和邮箱

案例:

[root@nginx ~]#userdel -r zhangsan

3.4 查看用户相关的ID信息

id 命令可以查看用户的UID,GID等信息

格式:

id 【选项】【用户名】

常用选项:

-u : 显示UID-g : 显示GID-G : 显示用户所属的组的ID-n : 显示名称,需配合ugG使用

案例:

[root@nginx ~]# id lisiuid=1002(lisi) gid=1002(lisi) 组=1002(lisi)[root@nginx ~]# id -g lisi1002

3.5 切换用户或以其他用户身份执行命令

su: 即 switch user,命令可以切换用户身份,并且以指定用户的身份执行命令

格式:

su [选项] [-] [用户名 [参数]...]

常用选项:

-l 或 - -login 这个参数加了之后,就好像是重新 login 为该使用者一样,大部份环境变数(HOME SHELL USER等等)都是以该使用者(USER)为主,并且工作目录也会改变,如果没有指定 USER ,内定是 root-c command 或 --command=command 变更为帐号为 USER 的使用者并执行指令(command)后再变回原来使用者

切换用户的方式:

su [用户名]:非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录,即不完

全切换:

su - [用户名]:登录式切换,会读取目标用户的配置文件,切换至自已的家目录,即完全切换

说明:root su至其他用户无须密码;非root用户切换时需要密码

注意:su 切换新用户后,使用 exit 退回至旧的用户,而不要再用 su 切换至旧用户,否则会生成很多的bash子进程,环境可能会混乱。

切换个身份执行命令:

su [-] [用户名] -c '命令'

案例:

#用lisi用户以root身份执行ls /tmp目录下有什么东西[lisi@nginx ~]$ su - root -c 'ls /tmp'密码:all.log all.txt file.log ts1.txt ts_slink  #查看自己当前是哪个用户[lisi@nginx ~]$ whoamilisi#切换到lisi用户[root@nginx ~]# su - lisi

3.6 设置密码

passwd命令用来更改使用者的密码

格式:

passwd [选项] [用户名]

常用选项:

-d:删除指定用户密码

-l:锁定指定用户

-u:解锁指定用户

-e:强制用户下次登录修改密码

-f:强制操作

-n :mindays:指定最短使用期限

-x :maxdays:最大使用期限

-w :warndays:提前多少天开始警告

-i :inactivedays:非活动期限

--stdin:从标准输入接收用户密码,Ubuntu无此选项

案例:非交互式修改用户密码

#给lisi用户设置密码为123[root@nginx ~]#echo '123' | passwd --stdin lisi 

案例:交互式修改用户密码

[root@nginx ~]# passwd lisi更改用户 lisi 的密码 。         新的 密码:                      #输入密码123,这里不会显示输入的密码无效的密码: 密码少于 8 个字符  #由于密码太短会提示,可以不用管重新输入新的 密码:          #继续输入123passwd:所有的身份验证令牌已经成功更新。[root@nginx ~]# #显示密码信息[root@nginx ~]# passwd -S lisilisi PS 2023-06-24 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)#

3.7 创建组

groupadd实现创建组

格式:

groupadd [选项] [组名]

常见选项:

-g GID 指明GID号;[GID_MIN, GID_MAX]-r 创建系统组,CentOS 6之前: ID<500,CentOS 7以后: ID<1000

案例:

#创建一个新的组,并添加组GID。[root@nginx ~]#groupadd -g  344  test

3.8 修改组

groupmod 组属性修改

格式:

groupmod [选项] [组名]

常见选项:

-n group_name: 新名字-g GID: 新的GID

案例:

[root@nginx ~]# groupadd test[root@nginx ~]# tail -1 /etc/grouptest:x:1003:[root@nginx ~]# groupmod -n tschange test[root@nginx ~]# tail -1 /etc/grouptschange:x:1003:[root@nginx ~]#

3.9 组删除

groupdel 可以删除组

格式:

groupdel [选项] [组名]

常见选项:

-f, --force 强制删除,即使是用户的主组也强制删除组

案例:

[root@nginx ~]# groupdel tschange[root@nginx ~]# tail -1 /etc/group #已经把先前创建的组删除了lisi:x:1002:[root@nginx ~]#

3.10 更改组密码

gpasswd命令,可以更改组密码,也可以修改附加组的成员关系

格式;

gpasswd [选项] [组名]

常用选项:

-a :user 将user添加至指定组中-d :user 从指定附加组中移除用户user-A :user1,user2,... 设置有管理权限的用户列表

案例:

#添加用户和组成员[root@nginx ~]# useradd zhangsan[root@nginx ~]# tail -1 /etc/passwdzhangsan:x:1003:1003::/home/zhangsan:/bin/bash[root@nginx ~]# id zhangsanuid=1003(zhangsan) gid=1003(zhangsan) 组=1003(zhangsan)[root@nginx ~]# [root@nginx ~]# groupadd test[root@nginx ~]# tail -1 /etc/grouptest:x:1004:[root@nginx ~]# gpasswd -a zhangsan test正在将用户“zhangsan”加入到“test”组中[root@nginx ~]# id zhangsanuid=1003(zhangsan) gid=1003(zhangsan) 组=1003(zhangsan),1004(test)[root@nginx ~]# [root@nginx ~]# groups zhangsanzhangsan : zhangsan test#删除组成员[root@nginx ~]# gpasswd -d zhangsan test正在将用户“zhangsan”从“test”组中删除[root@nginx ~]# id zhangsanuid=1003(zhangsan) gid=1003(zhangsan) 组=1003(zhangsan)[root@nginx ~]# [root@nginx ~]# groups zhangsanzhangsan : zhangsan[root@nginx ~]#

未完待续~~~

标签: #linux怎么删除用户组命令