Linux系统基础知识基于linux系统下的用户管理操作以及文件操作补充

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux系统基础知识基于linux系统下的用户管理操作以及文件操作补充相关的知识,希望对你有一定的参考价值。

1、(思考)系统中为什么要有用户

1.1用户
??系统中最底层的安全设定,回收(限制)权利。
1.2组
??共享权利。分为以下两种:
??(1)附加组:由用户决定的组(每个用户不一定都有);
??(2)初始组:用户不能自己决定的组(每个用户都有)。

2、用户在系统中的存在形态

??系统中的数据+系统中的若干配置文件(表格+表格调用的配置文件)

3、用户配置文件

3.1用户信息文件(/etc/passwd)
??用户信息文件命令:?/etc/passwd
??组成:?用户名:密码:用户id:组id:用户说明:用户家目录:用户默认使用的shell
技术分享图片
3.2用户组信息(/etc/group)
??用户组信息命令:?/etc/group
??组成:?组:组密码:组id:附加组成员
技术分享图片
3.3用户家目录(/home/username)
??用户家目录:?/home/username
技术分享图片
3.4用户骨文件(用户环境配置,/etc/skel.*)
??用户骨文件(用户环境配置):?/etc/skel.*

4、用户的查看

??whoami:?查看当前用户的名称。
技术分享图片
??id?username:?查看用户的id信息。
技术分享图片
??id?-u?username:?查看用户的uid信息。
技术分享图片
??id?-g?username:?查看用户的gid(组id)信息。
技术分享图片
??id?-G?username:?查看用户所在的所有组的id信息。
技术分享图片
??id?-n?username:?以名称显示信息。
技术分享图片
??id?-un?username:?显示id对应的用户名称。
技术分享图片

5、用户/组的建立及删除

5.1用户删除
(1)userdel?username:?删除用户身份,其配置文件未删除。
技术分享图片
(2)userdel?-r?username:?删除用户身份及其配置文件。
技术分享图片
5.2用户建立
(1)useradd?username:?使用默认规则建立用户(规则查看etc/login.defs)
技术分享图片
(2)useradd?-u?uid username:?指定用户的uid。
技术分享图片
(3)useradd?-g?gid username:?指定用户的初始组id。
技术分享图片
(4)useradd?-G?附加组id username:?指定用户的附加组。
技术分享图片
(5)useradd?-c?“说明文字” username:?指定用户的说明文字。
技术分享图片
(6)useradd?-s?shell username:?指定用户的shell(用户可可以用的shell可在/etc/shells中查看)。
技术分享图片
(7)useradd?-d?目录 username:?指定用户的家目录。
技术分享图片
5.3组的建立和删除
(1)groupadd?groupname:?建立组。
技术分享图片
(2)groupadd?-g?groupname:?建立组并指定组id。
技术分享图片
(3)groupdel?groupname:?删除组。
技术分享图片
5.4查看用户和组的建立与删除情况命令
??watch?-n?1?‘tail?-n?4?/etc/passwd?/etc/group;ls ?-1?/home’

6、用户管理

(1)usermod?-l?newusername?oldusername:?修改用户名。
技术分享图片
(2)usermod?-u?uid?username:?修改用户uid。
技术分享图片
(3)usermod?-g?gid?username:?修改用户gid(初始组id)。
技术分享图片
(4)usermod?-G?附加组id?username:?更改附加组(替换原来的附加组)。
技术分享图片
(5)usermod?-G?“ ”?username:?清除所有附加组。
技术分享图片
(6)usermod?-aG?附加组id?username:?增加附加组。
技术分享图片
(7)usermod?-c?说明文字?username:?修改用户的说明文字。
技术分享图片
(8)usermod?-c?“ ”?username:?清除说明文字。
技术分享图片
(9)usermod?-d?目录?username:?更改用户家目录指向。
技术分享图片
(10)usermod?-md?目录?username:?更改用户家目录指向并重命名家目录。
技术分享图片
(11)usermod?-s?newshell?username:?更改用户shell。
技术分享图片
(12)查看用户管理情况命令
??watch?-n?1?‘tail?-n?4?/etc/passwd?/etc/group;ls ?-1?/home’

7、用户切换

7.1命令
??su?-?username:?切换用户。如果是高级用户切换到低级用户,无需密码;如果是低级用户切换到高级用户或平级用户,需要后者密码。
??超级用户切换到普通用户:
技术分享图片
??普通用户切换到超级用户:
技术分享图片
7.2注意事项(重要)
(1)用户切换时需要及时退出再切换到下一个用户。
(2)“su?-”表示切换用户身份及用户环境。如果去掉“-”只能切换用户身份,而不能切换用户环境。

8、用户的认证信息

8.1/etc/shadow
??用户认证信息。
8.2用户认证信息的组成
??用户名称:用户密码:密码最后一次被修改时间:密码最短有效期:密码最长有效期:密码过期警告:密码非活跃期:账号到期日:未设定用户自定义
??普通用户bighead的认证信息:
技术分享图片
??超级用户root的认证信息:
技术分享图片
(1)密码最后一次被修改时间
??当此位数字为0时,用户在首次登录系统时会被强制修改密码。
??例如:分别设置最后一次被修改时间为8和0,用两种命令分别设置:
??chage?-d?8?username
技术分享图片
??passwd?-e?username
技术分享图片
(2)修改密码命令
??passwd?username?:只有超级用户可用的修改密码命令(超级用户即可修改自身密码,也可修改普通用户密码)
??超级用户修改自身密码:
技术分享图片
??超级用户修改普通用户密码:
技术分享图片
??passwd?:普通用户修改自身密码。
技术分享图片
(3)用户账号的冻结与解锁
??usermod?-L?username?:冻结账号
技术分享图片
??usermod?-U?username?:解锁
技术分享图片
??passwd?-l?username?:冻结账号
技术分享图片
??passwd?-u?username?:解锁
技术分享图片
??在上述两种冻结账号与解锁的方式中,passwd方式冻结与解锁强度强于usermod方式。
(4)密码最短有效期
??例如:两种命令分别设置密码最短有效期为1和3:
??chage?-m?1?username
技术分享图片
??passwd?-n?3?username
技术分享图片
(5)密码最长有效期
??例如:两种命令分别设置密码最长有效期为30和40:
??chage?-M?30?username
技术分享图片
??passwd?-x?40?username
技术分享图片
(6)密码最长有效期
??可超过规定时间的时限。
??例如:两种命令分别设置密码非活跃期为2和0:
??chage?-I?2?username
技术分享图片
??passwd?-i?0?username
技术分享图片

(7)密码过期警告
??距离密码过期还有多久给用户发出警告。
??例如:两种命令分别设置密码过期警告为2和0:
??chage?-W?2?username
技术分享图片
??passwd?-w?0?username
技术分享图片
(8)账号到期日
??账号到什么时候过期。
??例如:设置账号到期日为2018年12月12日:
??chage?-E?“2018-12-12”?username
技术分享图片
(9)清空密码
??passwd?-d?username
技术分享图片
(10)查看用户认证信息更改情况命令
??watch?-n?1?‘tail?/etc/shadow’

9、用户权力下放

9.1配置文件
??/etc/sudoers
9.2配置命令
??visudo(此命令提供语法检查)
??赋予普通用户超级用户的权利,有两种命令方式如下:
(1)需要普通用户身份验证的命令方式:
??用户名?主机名称=(执行程序身份)?命令
??例如,赋予普通用户bighead增加用户和删除用户的权利:
技术分享图片
??权利测试:
添加用户:
技术分享图片
删除用户:
技术分享图片
(2)不需要普通用户进行身份验证的命令方式:
??用户名?主机名称=(执行程序身份)?NOPASSWD:命令
??例如,赋予普通用户bighead增加用户和删除用户的权利:
技术分享图片
9.3下放权力测试命令
??首先将超级用户切换到普通用户:?su?-?用户名
??其次测试权利,例如测试添加用户的权利:?sudo?useradd?username

10、(补充)linux系统下的文件操作

10.1显示文件信息(ls)
(1)ls
??显示当前目录下所有非隐藏文件与目录。
技术分享图片
(2)ls?-l
??以长列表显示目录(或文件)信息/属性(输出的信息包括文件名,文件类型、权限模式、硬连接数、所有者、组、文件大小和文件的最后修改时间等)
技术分享图片
(3)ls?-a
??显示所有文件,包括隐藏文件(以“.”开头的)
技术分享图片
(4)ls?-s
??显示文件大小
技术分享图片
(5)ls?-S
??按照文件大小排序
技术分享图片
(7)ls?-d
??显示文件目录(显示文件名或目录名,不显示目录下的内容)
技术分享图片
(8)ls?-s?-ld
??显示目录本身属性
技术分享图片
(9)ls?-R
??递归显示
技术分享图片
(10)ls?-da?.*
??显示隐藏文件
技术分享图片
10.2通配符
(1)*
??匹配0~任意字符(除隐藏文件外)。
??ls?/ect/*.conf显示etc目录下,所有以.conf结尾的文件(除隐藏文件外):
技术分享图片
(2)?
??匹配单个字符
??例如:ls?fil?:显示当前目录下所有以fi开头,后面为单个字符的文件名称(除隐藏文件)。
技术分享图片
(3)[[:alpha:]]
??单个字母
??例如:ls?fi[[:alpha:]]le:显示当前目录下所有以fi开头,中间为单个字母,后面为le的文件名称(除隐藏文件)
技术分享图片
(4)[[:upper:]]
??单个大写字母
??例如:ls?fi[[:upper:]]le:显示当前目录下所有以fi开头,中间为单个大写字母,后面为le的文件名称(除隐藏文件)
技术分享图片
(5)[[:lower:]]
??单个小写字母
??例如:ls?fi[[:lower:]]le:显示当前目录下所有以fi开头,中间为单个小写字母,后面为le的文件名称(除隐藏文件)
技术分享图片
(6)[[:digit:]]
??单个数字
??例如:ls?fi[[:digit:]]le:显示当前目录下所有以fi开头,中间为单个数字,后面为le的文件名称(除隐藏文件)
技术分享图片
(7)[[:alnum:]]
??单个数字或字母
??例如:ls?fi[[:alnum:]]le:显示当前目录下所有以fi开头,中间为单个字母或数字,后面为le的文件名称(除隐藏文件)
技术分享图片
(8)[[:space:]]
??单个空格
??例如:ls?fi[[:space:]]le:显示当前目录下所有以fi开头,中间为单个空格,后面为le的文件名称(除隐藏文件)
技术分享图片
(9)[[:punct:]]
??单个符号
??例如:ls?fi[[:punct:]]le:显示当前目录下所有以fi开头,中间为单个符号,后面为le的文件名称(除隐藏文件)
技术分享图片
(10){ }
??精确匹配。例如:{1..3}表示1和2和3。
(11)[ ]
??模糊匹配。例如:[1-3]表示1或2或3。
(12)^/!
??非。例如:[^ac]或[!ac]都表示非a并且非c(除了a并且除了c)。
(13)[[:alpha:][:punct:]]
??符号或字母
??例如:ls?fi[[:alpha:][:punct:]]le:显示当前目录下所有以fi开头,中间为单个符号或字母,后面为le的文件名称(除隐藏文件)
技术分享图片
(14)[![:alpha:][:punct:]]
??除了符号或字母
??例如:ls?fi[![:alpha:][:punct:]]le:显示当前目录下所有以fi开头,中间除了单个符号或字母,后面为le的文件名称(除隐藏文件)
技术分享图片

11、linux小知识补充

11.1元数据
(1)什么是元数据
??任何文件系统中的数据分为数据和元数据。数据是指普通文件中的实际数据,而元数据指用来描述一个文件的特征的系统数据,诸如访问权限、文件拥有者以及文件数据块的分布信息(inode...)等等。在集群文件系统中,分布信息包括文件在磁盘上的位置以及磁盘在集群中的位置。用户需要操作一个文件必须首先得到它的元数据,才能定位到文件的位置并且得到文件的内容或相关属性。
(2)元数据管理方式
??元数据管理有两种方式。集中式管理和分布式管理。集中式管理是指在系统中有一个节点专门司职元数据管理,所有元数据都存储在该节点的存储设备上。所有客户端对文件的请求前,都要先对该元数据管理器请求元数据。分布式管理是指将元数据存放在系统的任意节点并且能动态的迁移。对元数据管理的职责也分布到各个不同的节点上。大多数集群文件系统都采用集中式的元数据管理。因为集中式管理实现简单,一致性维护容易,在一定的操作频繁度内可以提供较满意的性能。缺点是单一失效点问题,若该服务器失效,整个系统将无法正常工作。而且,当对元数据的操作过于频繁时,集中的元数据管理成为整个系统的性能瓶颈。
??分布式元数据管理的好处是解决了集中式管理的单一失效点问题, 而且性能不会随着操作频繁而出现瓶颈。其缺点是,实现复杂,一致性维护复杂,对性能有一定影响。
11.2强制结束进程
??kill?-q?进程号
11.3搜索关键字
??/-关键字
??例如,搜索关键字u:?/-u
11.4家目录
??系统中默认的目录

以上是关于Linux系统基础知识基于linux系统下的用户管理操作以及文件操作补充的主要内容,如果未能解决你的问题,请参考以下文章

python基础——Linux系统下的文件目录结构

linux 下的小知识

Linux自学笔记:Linux系统基础入门

Linux(内核剖析):13---系统调用的实现与解析

Mac系统是基于linux的。。为啥Mac上有非常非常多精美的软件,而不能移植到Linux.

linux 基础储备