用户和组命令的简单使用

用户和组管理命令:

用户管理命令:useradd usermod userdel

组管理命令:groupadd groupmod groupdel

用户创建:useradd

-u:uid 定义在/etc/login.defs

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

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

-c:用户的诠释信息

-d;指定用户的主目录

-s:用户指定的默认shell类型。可用shell列表在/etc/shells文件中

-G:为用户指定附加组,组必须事先存在

-N:不创建私有组做主组,使用user组做主组。

-r:创建系统用户时,用到的参数。CentOS 6: ID<500,CentOS 7: ID<1000

系统默认值:/etc/default/useradd文件中。

显示或更改默认设置:

useradd -D:显示默认设置

useradd -D -s shell :新用户的shell。对应:/etc/default/useradd文件中的SHELL项

useradd -D -b:新用户主目录的路径。对应:/etc/default/useradd文件中的HOME项

useradd -D -g:新用户初始组的祖名或id,组必须事先存在,组id也必须有一个已经存在的项。对应:/etc/default/useradd文件中的GROUP项。

新建用户的相关文件和命令:

/etc/default/useradd

/etc/skel/*

/etc/login.defs

用户属性修改:usermod

-u uid:新的uid

-g gid:新的gid

-G group1,group2,group3: 新的附加组,原来的附加组会被覆盖,如果保留原有,则同时使用-a选项,表示append

-a:添加用户到指定组,只能和-G配合使用。

-s  SHELL:shell 新的默认shell

-c  "诠释信息":新的注释信息

-d home:新家目录,不会自动创建,原家目录的文件不会同时移动到新的家目录;

如果要创建新的家目录并移动原来家目录的数据,同时使用-m选项

-l login_name : 新的名字

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

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

-e yyyy-mm-dd :指明用户账号过期日期

-f inactive :设定非活动期限

用户删除:userdel

-r:删除用户家目录

查看用户相关的id信息

id [option]…. [USER]

-u:uid

-g:gid

-G:groups

-n :name(需要配合ugG来使用)

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

su [options…] [-] [user [args…]]

切换用户的方式:

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

su – UserName:登录式切换,会读取目标用户的配置 文件,切换至家目录,完全切换

root su至其他用户无须密码;普通用户切换时需要密码。

换个身份执行命令:

su -l UserName 相当于 su – UserName  选项:-l  –login:

设置密码

passwd  [OPTIONS] UserName : 修改指定用户的密码。(只有管理员有权限修改用户的密码)

passwd: 修改自己的密码

passwd -e username :强制用户密码过期,下次登陆修改密码,与chage -d 0 username命令功能相同。

常用选项:

-l:锁定指定用户

-u:解锁指定用户

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

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

-x maxdays:指定最大使用期限

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

-i inactivedays: 非活动期限

–stdin : 从标准输入接受用户密码  ,不用和用户交互。

          eg1:echo "新密码" | passwd –stdin 用户名

修改用户密码策略:

chage [OPTION]… LOGIN

常用选项:

-d  LAST_DAY    最近日期

-E, –expiredate EXPIRE_DATE 过期日期

-I, –inactive INACTIVE  : 设置账号失效日期。(账户禁用功能)

-m, –mindays MIN_DAYS

-M, –maxdays MAX_DAYS

-W, –warndays WARN_DAYS

–l,显示密码策略

用户和组命令的简单使用eg1:          chage            -d 0                      tom : 下一次登录强制重设密码

         最近日期为0,意思是密码立即到期,需要修改   用户名

eg2:chage -m 0        –M 42              –W 14                   –I 7                tom 

                  随时更改    最大天数42天       过期前14天警告               过期7天禁用          用户名称

eg3:chage  -E  2016-09-10  tom  

               tom账户到2016-09-10到期

用户相关的其他命令:

chfn:交互式指定个人信息 。(就是/etc/passwd中的诠释信息)

chsh:指定shell。(chsh -s /bin/csh   tom:指定tom的shell类型为csh)

finger:查看用户的个人信息。(就是/etc/passwd中的诠释信息)

创建组:

groupadd  [OPTION]… group_name

-g gid:指明gid号

-r:创建系统组  centos6 gid<500   centos7 gid< 1000

修改和删除组:

组属性修改:groupmod  [OPTION]… group

-n  group_name : 新的组名

-g  gid:新的gid号

删除组: groupdel group

更改组密码:gpasswd  [OPTION] GROUP

-a user : 将user添加到指定组中。

-d user: 删除组中的指定用户user。

-A user1,user2,…..: 设置有管理权限的用户列表。

newgrp命令:临时切换基本组

如果用户不属于此组,则需要组密码。

更改和查看组成员: groupmems [options] [action]

options: -g, –group groupname 更改为指定组 (只有root)

Actions: -a, –add username      指定用户加入组

-d, –delete username    从组中删除用户

-p, –purge                从组中清除所有成员

-l, –list                   显示组成员列表

groups [OPTION].[USERNAME]… 查看用户所属组列表


知识点梳理:

1、文件格式说明:

passwd文件格式:

login name passwd uid gid gecos home directory shell
登入用户名 密码 用户身份ID 用户组ID 用户诠释信息 用户主目录 默认使用shell类型
root x 0 0 root /root /bin/bash
      yhb          x        1000      1000        yhb     /home/yhb /bin/bash
     tom           x        1000      1000       tom     /home/tom /bin/csh

shadow文件格式:

以:为分隔符,共8个:,解释各个字段的含义

bin : * : 17095 : 0 : 99999 : 7 :3 : :预留

yhb : 密码 : 17095 : 0 : 99999  :  7  :   密码过期几天后账号会被锁定   :  从1970年1月1日起,多少天后账号失效 :预留

登陆用户:

用户密码:一般用sha512加密 :

从1970年1月1日起到密码最近一次被修改的时间 :

密码在过几天可以被变更(0表示随时可被更改) :

密码在过几天必须被变更(99999表示永不过期) :

密码过期前几天系统提示用户变更密码(7天,系统默认的) :

密码过期几天后账号会被锁定 :

从1970年1月1日起,多少天后账号失效 :

密码加密:

单向加密:哈希算法,原文不同,密文必不同。

      相同算法定长输出,获得密文不可逆推出原始数据。

      雪崩效应:初始条件的微小变化,引起结果的巨大变化

      MD5: 128bit 

      sha1: 160bit

     sha224,sha256,sha384,sha512

更改加密算法命令:

   authconfig –passalgo=sha256 –update

group文件格式: cat /etc/group

用户和组命令的简单使用群组名称:组名

组密码:通常不需要设定,密码是被记录在/etc/gshadow中

GID:组的id号

以当前组为附加组的用户列表(分隔符为逗号)

用户和组命令的简单使用gshadow文件格式: cat /etc/gshadow

用户和组命令的简单使用群组名称:组名

组密码:通常不需要设定,密码是被记录在/etc/gshadow中

组管理员列表:组管理员的列表,更改组密码和成员

以当前组为附加组的用户列表(分隔符为逗号)

2、pwunconv和pwconv命令:

image.png

3、添加用户到指定的组:                        从组中删除用户:

一、usermod -aG 用户名 组名            一、groupmems -d 用户名 -g 组名

二、gpasswd  -a 用户名   组名           二、  groupmems -p -g 组名(清楚所有成员)

三、groupmems -a 用户名 -g 组名

4、用户的修改、删除、加解锁

修改用户名:

usermod -l newname oldname

用户加锁与解锁:

usermod -L yi   :会在/etc/passwd中,yi用户密码字段前,添加1个!号。

usermod -U yi   :会将在/etc/passwd中,yi用户密码字段前的!号去掉。

    或者

passwd -l yi  :会在/etc/passwd中,yi用户密码字段前,添加2个!号。

passwd -u yi  :会将在/etc/passwd中,yi用户密码字段前的一个!号弃掉。

用户删除

userdel   username:  只是删除了该用户,用户的家目录和邮箱等数据都还在。

userdel -r username : 将用户的家目录和邮箱等一起删除滴。

5、强制用户需改密码

passwd -e tom        

或者     

chage -d0 tom

::强制tom用户下次登入修改密码

6、批量添加用户和组

第一步、需要和passwd文件格式一样的文件 名字usere.txt

image.png用户和组命令的简单使用

执行命令,如下图所示:

image.png

用户增加完成。

第二步、编辑一个文件,名字p.txt,其内容格式为:用户名:密码  如图所示:

image.png

完成文件编辑后,执行chpasswd命令,如图:

image.png

密码修改完成。

注意:

通过上述操作可以批量添加用户和设置用户密码,但是不会创建新用户家目录下的配置文件,需要手动复制。




原创文章,作者:cxhzcxhz,如若转载,请注明出处:http://www.178linux.com/53928

(0)
cxhzcxhzcxhzcxhz
上一篇 2016-10-24
下一篇 2016-10-24

相关推荐

  • 马哥教育网络班22期+第2周课程练习

    1、Linux上文件/目录相关命令有哪些? 1)目录管理类命令:mkdir、rmdir (1)mkdir:make directorise 创建文件夹  使用格式:      mkdir [OPTION]… DIRECTORY…    &nb…

    Linux干货 2016-09-08
  • Linux简单的磁盘分区、格式化和挂载

     一.分区: 1.查看分区fdisk -l 通过fdisk -l 查看机器所挂硬盘个数及分区情况   2.通过上面的信息,我们知道此机器中挂载两个硬盘分别是:/dev/sda和/dev/sdb, 其中sda有两个主分区/dev/sda1和sda2; 其中sdb有1个扩展类型/dev/sdb3和3个逻辑分区sd…

    Linux干货 2016-02-28
  • linux作业管理

    作业管理 kill kill命令:     向进程发送控制信号,以实现对进程管理     显示当前系统可用信号:kill -l     常用信号:man 7 signal    &…

    Linux干货 2016-09-09
  • 程序包管理:rpm、yum以及(make)源代码编译安装

    程序包管理:rpm、yum以及(make)源代码编译安装 在Linux上安装程序一般都有三种方法:源代码编译安装,rpm包安装和rpm包的前端安装yum, (rpm,和yum程序包管理器是针对CentOS6平台的) 程序包管理方式都大同小异:  源代码–>目标二进制格式(二进制程序、库文件、配置文件、帮助文件)–&gt…

    Linux干货 2017-01-10
  • CentOS通过bind配置DNS服务器

    一、创建DNS主服务器 1、安装bind并配置主配置文件     主服务器为CentOS 7,主服务地址为172.16.11.55     安装bind [root@xinfeng ~]# yum install bind  &n…

    Linux干货 2016-04-18
  • Linux终端类型

    适用对象:本文适用于初学Linux以及有志于学习Linux的朋友们。   一、         什么是终端 计算机体系中,终端主要是指与计算机连接,并可以与用户(人类)进行交互的设备。 二、      &nbs…

    Linux干货 2016-10-14