《初入linux》--第五部分-用户管理

一.对于用户的理解

用户,就是系统使用者的身份

在系统中,用户存储为若干串字符+若干个系统配置文件


1.用户相关目录

在linux中一般来说,一个用户会用到5个目录存放相关用户信息:

1)/etc/passwd

存放用户信息,其格式为:

用户:密码:uid:gid:说明:家目录:用户使用的shell

[root@localhost ~]# tail -n 5 /etc/passwd
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
mazha:x:1000:1000:mazha:/home/mazha:/bin/bash

2)   /etc/shadow

存放用户验证信息,其格式为:

用户:密码:最后一次密码修改该时间:最短有效期:最长有效期:警告期:非活跃期:帐号到期日

[root@localhost ~]# tail -n 5 /etc/shadow
sshd:!!:17078::::::
avahi:!!:17078::::::
postfix:!!:17078::::::
tcpdump:!!:17078::::::
mazha:$1$50CPLyN9$SbWMdqn.YcTSni8Iyv.L30:17083:0:99999:7:::
注:密码以hash加密后的字符串储存,系统对原密码不做保留

3)   /etc/group

存放用户组信息,格式为:

组名称:组密码:组id:附加组成员

[root@localhost ~]# tail -n 5 /etc/group
tcpdump:x:72:
stapusr:x:156:
stapsys:x:157:
stapdev:x:158:
mazha:x:1000:

4)   /etc/gshadow

存放用户组验证信息

5) /home/username

用户家目录,存放用户相关文件

[root@localhost ~]# cd /home/mazha/
[root@localhost mazha]# ls
[root@localhost mazha]# ls -a
.   .bash_history  .bash_profile  .cache   .mozilla
..  .bash_logout   .bashrc        .config


2.用户管理

1)用户建立

useradd   参数   用户名字

-u           指定用户uid

[root@localhost mazha]# useradd -u 8888 test
[root@localhost mazha]# tail -n 2 /etc/passwd
mazha:x:1000:1000:mazha:/home/mazha:/bin/bash
test:x:8888:8888::/home/test:/bin/bash

-g           指定用户初始组信息,这个组必须已经存在

[root@localhost mazha]# useradd -g mazha test
[root@localhost mazha]# tail -n 2 /etc/passwd
mazha:x:1000:1000:mazha:/home/mazha:/bin/bash
test:x:1001:1000::/home/test:/bin/bash

-G          指定附加组,这个组必须存在

[root@localhost mazha]# useradd -G mazha test
[root@localhost mazha]# tail -n 2 /etc/group
mazha:x:1000:test
test:x:1001:

-c           用户说明

[root@localhost mazha]# useradd -c handsome test
[root@localhost mazha]# tail -n 2 /etc/passwd
mazha:x:1000:1000:mazha:/home/mazha:/bin/bash
test:x:1001:1001:handsome:/home/test:/bin/bash

-d          用户家目录

[root@localhost mazha]# useradd -d /home/111 test
[root@localhost mazha]# tail -n 2 /etc/passwd
mazha:x:1000:1000:mazha:/home/mazha:/bin/bash
test:x:1001:1001::/home/111:/bin/bash

-s          用户所使用的shell,/etc/shells记录了用户能使用shell的名字


2)用户删除

userdel   -r   用户名称              -r表示删除用户信息及用户的系统配置(递归删除)

[root@localhost mazha]# tail -n 2 /etc/passwd
tcpdump:x:72:72::/:/sbin/nologin
mazha:x:1000:1000:mazha:/home/mazha:/bin/bash

3)用户管理

usermod  参数   用户名字

    -c<备注>             修改用户帐号的备注文字

[root@localhost mazha]# usermod -c super test
[root@localhost mazha]# tail -n 2 /etc/passwd
mazha:x:1000:1000:mazha:/home/mazha:/bin/bash
test:x:1001:1001:super:/home/test:/bin/bash

 -d<登入目录>     修改用户登入时的目录

 -e<有效期限>     修改帐号的有效期限 

 -f<缓冲天数>      修改在密码过期后多少天即关闭该帐号

 -g<群组>             修改用户所属的群组

 -G<群组>            修改用户所属的附加群组 

    -p                            修改用户密码

 -l<帐号名称>      修改用户帐号名称

[root@localhost mazha]# usermod -l quit test
[root@localhost mazha]# tail -n 2 /etc/passwd
mazha:x:1000:1000:mazha:/home/mazha:/bin/bash
quit:x:1001:1001:super:/home/test:/bin/bash

 -L                         锁定用户密码,使密码无效 

[root@localhost mazha]# usermod -L quit
[root@localhost mazha]# tail -n 2 /etc/shadow
mazha:$1$50CPLyN9$SbWMdqn.YcTSni8Iyv.L30:17083:0:99999:7:::
quit:!:17084:0:99999:7:::

 -s<shell>            修改用户登入后所使用的shell 

 -u<uid>              修改用户ID

 -U                        解除密码锁定

    注:使用  usermod -U   时,若当前用户没有密码,则会提示先使用usermod -p 添加一个密码,但

            usermod -p 修改密码,一般直接存入/etc/shadow,所以是存入了加密后的文档,是不能登陆的,只能作为消除密码使用。

           此时,建议使用passwd命令添加密码


加注: usermod -L 和passwd -l     都有锁定账号的功能,但是passwd -l强度更高,passwd -l 加锁后需要用两次 usermod -U来解锁

         

4)组的建立

groupadd -g  组号            建立组

[root@localhost mazha]# groupadd -g 6666 super
[root@localhost mazha]# tail -n 2 /etc/gro
groff/  group   group-  
[root@localhost mazha]# tail -n 2 /etc/group
mazha:x:1000:
super:x:6666:

groupdel 组名字       删除组

[root@localhost mazha]# groupdel super
[root@localhost mazha]# tail -n 2 /etc/group
stapdev:x:158:
mazha:x:1000:

注:进行以上实验时建议配合监控命令,更加直观

watch -n 1 'tail -n 3 /etc/passwd/etc/group;echo ====;ls -l /home;echo ===;ls -l /mnt'


5)用户id信息查看

id  参数  用户

[root@localhost mazha]# id quit
uid=1001(quit) gid=1001(test) groups=1001(test)

-u           用户uid

[root@localhost mazha]# id -u quit
1001

-g            用户初始组id

[root@localhost mazha]# id -g quit
1001

-G           用户所有所在组id

[root@localhost mazha]# id -G quit
1001

-n            显示名称而不是id数字(一般配合 -g一起使用)

[root@localhost mazha]# id -ng quit
test

-a            显示所有信息

[root@localhost mazha]# id -a quit
uid=1001(quit) gid=1001(test) groups=1001(test)





  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值