ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

ll(ls -l)命令下界面解析,用户和用户组,passwd相关

2021-07-27 20:01:36  阅读:216  来源: 互联网

标签:oldboy passwd 用户组 用户 1002 tech root ll littleboy


一、每个部分含义

类型、权限                      硬链接数      用户               组                              大小      月                日             时间                文件名

1.第一个字符就是类型:

(1)d                 目录

(2)-                  普通文件

b      block (buffered) special                     块设备(硬盘光驱)

c      character (unbuffered) special           字符设备

d      directory                                             查找目录

l      symbolic link                                        软连接:快捷方式

s      socket                                                 和应用程序之间通信有关

2.用户

User分类                                  身份证(唯一标识)      

超级用户:root                         UID:0

普通用户:(例)oldboy           UID:随机(1000-60000)

(虚拟用户)傀儡用户             UID:1-499       对应文件和进程,不能登陆

(1)普通用户切可以换到root:

su - root                                      #角色改变,由普通用户变成了root(农民起义,当皇帝。)

(2)oldboy不切换到root,可以使用root的权限去做事,按命令给权限,赋予普通用户一部分权限

sudo    useradd    oldboy

(3)与用户相关命令

useradd             添加用户

usermod            修改用户

userdel              删除用户

1)useradd 添加用户

-u      指定UID

-g      指定属于的组

-M     不创建家目录

-s      指定登录的解释器

-u      指定uid添加用户

[root@oldboy ~]# useradd    -u    1111    test

[root@oldboy ~]# id    test                                      #用户信息

uid=1111(test) gid=1111(test) 组=1111(test)

[root@oldboy ~]# tail -1 /etc/passwd                     #查看用户文件

test:x:1111:1111::/home/test:/bin/bash

-g  指定用户属于哪个组

[root@oldboy ~]# groupadd        tech

[root@oldboy ~]# tail    -1    /etc/group

tech:x:1002:

[root@oldboy ~]# useradd    littleboy    -g    tech            #添加一个littleboy 属于tech组

[root@oldboy ~]# id    littleboy

uid=1002(littleboy) gid=1002(tech) 组=1002(tech)

#      

[root@oldboy ~]# ls -l /home

总用量 0

drwx------. 2 littleboy tech    62 8月  30 01:14 littleboy

drwx------. 2 oldboy    oldboy  99 8月  30 00:59 oldboy

drwx------. 2 oldgirl   oldgirl 62 8月  30 01:11 oldgirl

drwx------. 2 test      test    62 8月  30 01:19 test

-M 不生成家目录

[root@oldboy ~]# useradd    test1    -M

[root@oldboy ~]# ls    /home/

littleboy     oldboy     oldgirl     test                       #无text1家目录

-s 指定解释器

[root@oldboy ~]# useradd    test2    -s    /sbin/nologin    -M          #用于给应用软件运行提供用户,只给个用户,不让其登陆,并且不给他家目录

[root@oldboy ~]# tail    -1    /etc/passwd

test2:x:1113:1113::/home/test2:/sbin/nologin               #不能登陆

[root@oldboy ~]# su    -    test2

su: 警告:无法更改到 /home/test2 目录: 没有那个文件或目录

This account is currently not available.

查看解释器:

[root@oldboy ~]# cat    /etc/shells

/usr/bin/sh

/usr/bin/bash

   

2)usermod         修改用户

-u      指定UID

-g      指定属于的组

-M     不创建家目录

-s      指定登录的解释器

例1:test2解释器改成bash

[root@oldboy ~]# grep    -w    test2    /etc/passwd         #-w   相当于按单词过滤

test2:x:1113:1113::/home/test2:/sbin/nologin

       

[root@oldboy ~]# usermod   -s    /bin/bash    test2

[root@oldboy ~]# grep    -w    test2    /etc/passwd

test2:x:1113:1113::/home/test2:/bin/bash

     

例2:更改littleboy用户,属于oldboy组

[root@oldboy ~]# grep    littleboy    /etc/passwd

littleboy:x:1002:1002::/home/littleboy:/bin/bash

[root@oldboy ~]# id    littleboy

uid=1002(littleboy) gid=1002(tech) 组=1002(tech)

[root@oldboy ~]# usermod    -g    oldboy    littleboy      #让littleboy属于oldboy组

例3:修改uid为6666

[root@oldboy ~]# id    littleboy

uid=1002(littleboy)   gid=1000(oldboy)   组=1000(oldboy)

[root@oldboy ~]# usermod    -u    6666    littleboy

[root@oldboy ~]# id    littleboy

uid=6666(littleboy)   gid=1000(oldboy)   组=1000(oldboy)

3)userdel 删除用户

-r 连带家目录一起删除

[root@oldboy ~]# userdel    -r    test        #一般不用该项

[root@oldboy ~]# ls   /home

littleboy     oldboy     oldgirl                     #text家目录已删除

[root@oldboy ~]# userdel    oldgirl         #删oldgirl用户

[root@oldboy ~]# ls    /home

littleboy     oldboy     oldgirl                    #未删除家目录

3.组

唯一标识:GID(Group Identify)

组名:oldboy

用户的用户组 类似于【人】的家庭,学校等组织

1个用户可以在多个组里。

1个组可以有多个用户。

用户组怎么产生的?

1)创建用户的时候默认产生的,创建一个oldboy,默认情况就会生成oldboy组,

用户和组同名,且UID和GID相同

[root@oldboy ~]# useradd oldgirl              #添加用户

[root@oldboy ~]# tail -1 /etc/passwd         #存放用户的文件

oldgirl:x:1001:1001::/home/oldgirl:/bin/bash

[root@oldboy ~]# tail -1 /etc/group              #存放用户组的文件

oldgirl:x:1001:                                              #创建oldgirl用户的时候,同时创建oldgirl用户组

2)由root用户直接创建用户组

[root@oldboy ~]# groupadd tech

[root@oldboy ~]# tail -1 /etc/group

tech:x:1002:

[root@oldboy ~]# useradd littleboy -g tech               #添加一个littleboy 属于tech组

[root@oldboy ~]# id littleboy

uid=1002(littleboy) gid=1002(tech) 组=1002(tech)

 4.用户和组相关的配置文件

直接相关的有4个

/etc/passwd           #用户主配置文件,用户的各种属性(UID,GID,家目录,登录SHELL)

/etc/shadow          #用户密码文件,存放密码及密码的属性(失效时间,修改密码时间等)

/etc/group             #组文件,存放用户组及属性

/etc/gshadow        #用户组的密码文件(废弃)

详细说明:

用户文件:

/etc/passwd

[root@oldboy ~]# tail -1 /etc/passwd

littleboy:      x:                                                       1002:1002:                      :/home/littleboy     :/bin/bash

用户     密码(此处隐藏,在shadow文件里)       UID  GID        说明            家目录                 登录解释

5.用户组相关命令

1)创建用户组:groupadd

[root@oldboy ~]# groupadd    tech

[root@oldboy ~]# tail    -1    /etc/group

tech:x:1002:

[root@oldboy ~]# useradd    littleboy    -g    tech            #添加一个littleboy 属于tech组

[root@oldboy ~]# id    littleboy

uid=1002(littleboy) gid=1002(tech) 组=1002(tech)

2)删除用户组:groupdel

[root@oldboy ~]# groupadd    abc

[root@oldboy ~]# tail    -1    /etc/group

abc:x:1114:

[root@oldboy ~]# groupdel    abc

6.密码相关:passwd

(一)修改指定用户密码:

root用户:可以改任何用户密码

[root@oldboy ~]# passwd    oldboy

普通用户:只能改自己的密码

[oldboy@oldboy ~]$ passwd                    ##更改用户oldboy的密码

(二)非交互式修改密码:- - stdin

echo 123456|passwd --stdin root             #将root密码改为123456

[root@oldboy ~]# echo    123456|passwd    --stdin    root

更改用户 root 的密码 。

passwd:所有的身份验证令牌已经成功更新。

[root@oldboy ~]# history

231  echo 123456|passwd --stdin root              #历史记录可以查到要改的密码,留痕迹

232  history

[root@oldboy ~]# history    -d    231                #按编号把带密码的命令删除

[root@oldboy ~]# history                                  #已经删除了痕迹

批量设置密码而且不留痕迹

[root@oldboy ~]# cat    /tmp/a.txt

oldboy:123456

test1:890

以下命令相同

[root@oldboy ~]# chpasswd    </tmp/a.txt

[root@oldboy ~]# cat    /tmp/a.txt|chpasswd

标签:oldboy,passwd,用户组,用户,1002,tech,root,ll,littleboy
来源: https://blog.csdn.net/m0_54666999/article/details/119147582

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有