四.用户和组管理

2018-03-26  本文已影响0人  hitlipeng

(一).用户管理:

1.创建用户:  useradd 

#useradd    [选项]     用户名  

#useradd    ding1   

#useradd    -u  3000   ding2指定用户的uid为3000   

#useradd    -g  3000   ding3指定用户的gid为3000  

#useradd    -c  hello  ding4指定用户的描述信息为hello

#useradd    -d  /home/haha   ding5指定用户的家目录为/home/haha  

#useradd    -s  /sbin/nologin   ding6指定用户的登录shell为nologin 

#useradd    -M   ding7不去创建家目录  

#useradd    -r   ding8创建系统用户 

uid的取值范围: 0-65535  

rhel6:   

0:代表超级用户

1-499:代表了系统用户 

500-65535: 代表普通用户  

2.删除用户:userdel    

#userdel   [-r]用户名 

-r:删除用户的同时,还会删除家目录

#userdel   ding2不删除家目录  

#userdel   -r   ding3删除家目录   

3.管理用户:修改用户的基本信息   usermod    

#usermod   -u  4000  ding1   

#usermod   -g  3003  ding1  

#usermod   -c  welcome  ding1  

#usermod   -d  /home/douniwan  ding1  

#usermod   -s  /sbin/nologin   ding1    

除了命令修改,还可以直接去修改/etc/passwd文件

4.查看用户:

验证用户是否存在: 

#id用户名    

#id   ding1   

uid=505(ding1) gid=506(ding1)组=506(ding1)    该用户存在

#id   ding2   

id: ding2 :  no  such  user用户不存在 

5.存放用户基本信息的文件: /etc/passwd  

#tail   -1   /etc/passwd    

ding1:x:505:506::/home/ding1:/bin/bash

该文件用冒号分隔为了7段: 

第1段:用户名   

第2段:用户的密码,仅仅是用来占位

第3段:用户的uid号

第4段:用户的gid号

第5段:描述信息,用来说明用户的作用,自己任意给定 

第6段:用户家目录  

第7段:用户登录shell,/bin/bash代表可登录系统,/sbin/nologin不可登录

6.修改用户的密码: passwd  

第一种:交互式修改  

#passwd修改当前用户的密码  

#passwd用户名       修改其它用户的密码  

注意: 只有root可以修改其它用户的密码;普通用户只能修改自己的密码  

存放密码的位置:/etc/shadow  

#tail   /etc/shadow  

loring:!!:17610:0:99999:7:::

按冒号分隔为了9段: 

第1段: 用户名  

第2段: 密码位置;!!还没有设定密码 

第3段: 修改密码的时间,距离1970年1月1日有多少天;数据元年

第4段:密码的最小使用周期,代表必须用多久后才能再次修改密码,0代表可以随意修改 

第5段:密码的最大使用周期,99999代表永不过期

第6段:密码到期前的提醒时间

第7段:密码到期-->失效;宽限时间

第8段:密码失效-->过期;一旦过期就不能使用了

第9段:保留位

#passwd   loring修改loring用户的密码   

#tail   /etc/shadow  

loring:$6$1taIIucH$huv1ji9CJExLLT8jLVTG/DL5CeiWrvtBSMUQnQt8KrxtOPtRbMu3IQHhlga64wNWRJ2jHIvvcVFzs0sXPjwZo.:17614:0:99999:7:::

修改密码后,以冒号分隔的第二段,存放了密码:

第二段中,用可以使用$分隔为3列:

第1列:加密的算法,6-->sha算法   1-->MD5算法  

第2列: salt,杂质

第3列:加密的密码(只是密码的特征)

注意:密码都是靠单向加密存放,只是保存了密码的特征;只能加密,不能解密

扩展: 单向加密的命令:md5sum

#cp   /etc/fstab   /tmp/fstab   

#md5sum     /tmp/fstab  

#md5sum     /tmp/fstab  

#md5sum     /tmp/fstab  

发现每次加密后的字符串都是一样的;单向加密是定长输出

单向加密,具有雪崩效应,对原内容的细小改变,会导致加密字符的巨大变化

#echo   redhat   |  md5sum给redhat字符串加密 

非交互式修改: 

#echo密码   |  passwd  --stdin   用户名   

例: 

#echo  redhat  |  passwd  --stdin  loring 

修改loring的密码为redhat

7.查看当前登录的用户: 

#whoami  

8.切换用户: su  

非完全切换:

#su   loring    

$pwd  

完全切换:  加-

#su   -    loring   

$pwd会切换到用户的家目录中  

注意:非完全切换会保留原用户的一部分环境变量;但是完全切换不会保留环境变量

退出切换:  

$exit  

9.用户登录:  

第一种:物理终端tty就是物理终端 

切换物理终端:ctrl+alt+[F1-F7]

F1:图形化终端  

剩下的为字符界面

第二种:虚拟终端(图像化中开启的terminal,xshell,secureCRT..)

输入账号和密码,就可以登录

10.查看当前都有哪些用户登录: 

#users  

loring  root   root     3个人登录   

#who  

root     tty3         2018-03-24 18:20

loring   tty2         2018-03-24 18:19

root     pts/0        2018-03-24 16:47 (192.168.0.100)

第1列:用户名  

第2列:登录的终端 

第3列:登录时间和登录的地址

#w  

18:25:30 up  1:48,  6 users,  load average: 0.03, 0.01, 0.00

当前时间  登录的时长  用户数量     平均负载:第1分钟  第5分钟  第15分钟

USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT

root     tty3     -                18:20    5:09   0.02s  0.02s -bash

loring   tty2     -                18:19    6:13   0.02s  0.02s -bash

root     pts/0    192.168.0.100    16:47    1:37m  0.06s  0.06s -bash

用户名   终端     登录位置         登录时间  使用多久    占用cpu时间  动作

11.查看当前使用的是哪个终端:

#tty  

/dev/pts/2

12.向某个终端,发送消息: 

#echo内容  >  终端  

例:  

#tty    

/dev/pts/2  

#echo  hello  loring  >  /dev/pts/3  

将hello  loring发送到pts/3上

13.将某个用户,从终端中踢出:

#pkill  -kill  -t终端  

例: 

#pkill  -kill  -t   pts/3

注意: 不用加/dev,直接写终端名  

(二).组管理:

1.创建:groupadd   

#groupadd组名   

#groupadd    group1 

#groupadd   -g  10008  group2创建时,指定gid号

2.查看: /etc/group文件存放组的基本信息

#tail  /etc/group    

验证用户组,是否添加成功

group11:x:10004:

用冒号分隔为了4段: 

第1段:组名称 

第2段:组密码,只是用来占位 

第3段:组的ID号,gid

第4段:组中的成员(注意:该成员,是把该组当作附属组)

3.修改:groupmod  

#groupmod   -g  11000   group11修改组的gid 

#tail  /etc/group    

4.删除: groupdel  

#groupdel    group11   

5.给用户组修改密码: 

#gpasswd用户组名  

#gpasswd   group1修改group1组的密码  

存放组密码的文件:/etc/gshadow 

#tail  /etc/gshadow    

group2:!::  

用冒号分隔为4段: 

第1段: 组名称

第2段: 组密码,!代表还没有修改密码 

第3段: 组的管理员

第4段: 组中成员(附加组的身份)

6.给组添加管理员:

#gpasswd   -A用户名   组名   

#gpasswd  -A  loring   group1   

#cat  /etc/gshadow  

7.给组添加成员:

#gpasswd    -a用户名    组名  

#gpasswd   -a    jerry    group1   

#cat   /etc/gshadow   

第二种方式: 

添加用户的同时,指定用户的附属组: 

#useradd   -G组名(gid)   用户名  

#useradd   -G   group1     tom    

修改用户的附属组: 

#usermod    -G组名   用户名 

#usermod   -G   group2   tom  

#id  tom    

注意:如果没加-a的选项,那么原来所有的附属组会被替换掉

给用户增加一个附属组: 

#usermod   -a   -G组名   用户名    

#usermod   -a   -G  group1   tom   

#id  tom   

上一篇下一篇

猜你喜欢

热点阅读