passwd:存储所有用户的相关信息,该文件也被称为用户信息数据库(Database)。
passwd路径:/etc/passwd
/etc/passwd文件每个字段的具体含义:
第1个字段(列)记录的是这个用户的名字(在创建用户时root用户起的)。
第2个字段(列)如果是x,表示该用户登录Linux系统时必须使用密码;如果为空,则该用户在登录时无须提供密码。
第3个字段(列)记录的是这个用户的uid。
第4个字段(列)记录的是这个用户所属群组的gid。
第5个字段(列)记录的是有关这个用户的注释信息(如全名或通信地址)。
第6个字段(列)记录的是这个用户的家目录的路径。
第7个字段(列)记录的是这个用户登录后,第一个要执行的进程。
shadow文件:存储所有用户的密码,每一个用户占用一行记录,该文件实际上就是存放用户密码的数据库(Database)。
shadow路径:/etc/shadow
第1个字段(列)是用户名。
第2个字段(列)是密码,这个密码是经过MD5加密算法加密过的密码。
群组及group文件:存放了Linux系统中所有群组的信息,它实际上就是一个存放群组信息的数据库(Database)。
group路径: /etc/group
第1个字段是这个群组的名字。
第2个字段中的x表示这个群组在登录Linux系统时必须使用密码。
第3个字段记录的是这个群组的gid。
第4个字段记录的是这个群组里还有哪些群组成员。
新建用户:useradd
参数:
–u:指定用户的UID
–g:指定用户所属的群组
–d:指定用户的家目录
–c:指定用户的备注信息
–s:指定用户所用的shell
修改用户账户:usermod
参数:
–u:修改用户的UID
–g:修改用户的GID
–G:将一个用户加入到指定的群组中
–d:修改用户的家目录
–c :修改用户的备注信息
–s:修改用户所用的shell
删除用户账号:userdel
参数:
–r:删除用户的同时删除这个用户的所有。
创建一个新的群组账号:groupadd
- –g:指定群组的GID
修改一个群组账号的信息:groupmod
- –g:修改群组的GID
- –n:修改群组的名称
删除一个群组账号:groupdel
使用ls –l命令查看文件上所设定的权限
- ls –l命令的显示结果中的第一列分成4组,如图:
ls –l命令的显示结果中的第三列、第四列为文件的属主和属组
Linux系统中用户分类:
第1类:所有者
第2类:同组用户(修正:所属组,因为你创建一个用户的过程会以为这个用户名为名字创建一个同名的组)
第3类:非同组的其他用户
文件操作权限包括读(read)、写(write)和执行(execute)
掌握Linux操作系统在显示权限时,使用如下4个字符来表示文件操作权限:
r:表示read权限,也就是可以阅读文件或者ls命令列出目录内容的权限。
w:表示write权限,也就是可以编辑文件或者在一个目录中创建和删除文件的权限。
x:表示execute权限,也就是可以执行程序或者使用cd命令切换到这个目录以及使用带有-l选项的ls命令列出这个目录中详细内容的权限等。
-:表示没有相应的权限(与所在位置的r、w或x相对应)。
修改文件的属主:chown
使用方式:
chown 属主:属组 文件
chown :属组 文件
chown 属主 文件
修改文件的属组:chgrp
使用方式:
chgrp 属组 文件
修改文件的属组:chgrp
chgrp 属组 文件
设定或更改文件或目录上的权限:chmod
-R 选项:不但设置(或更改)该目录权限,而且还要递归地设置(或)更改该目录中所有文件或子目录的权限。
符号表示法的定义:
符号表示法是使用几个特定的符号来设定权限的状态。
掌握权限状态可以分为3个部分:
第1个部分,表示要设定或更改谁的权限状态。其中的具体表示如下:
u:表示所有者(owner)的权限。
g:表示群组(group)的权限。
o:表示既不是owner也不与owner在同一个group的其他用户(other)的权限。
表示以上3组,也就是所有用户(all)的权限。
第2部分,是运算符(operator),也有人称为操作符,其中的具体表示如下:
+:表示加入权限
-:表示去掉权限
=:表示设定权限
第3部分,表示权限(permission),其中的具体表示如下:
r:表示read(读)权限。
w:表示write(写)权限。
X:表示execut(执行)权限。
使用数字表示法设定文件或目录上的权限
掌握数字表示法的定义:
数字表示法是指使用一组三位数的数字来表示文件或目录上的权限状态。其中:
第1个数字代表所有者(owner)的权限(u)。
第2个数字代表群组(group)的权限(g)。
第3个数字代表其他用户(other)的权限(o)。
数字代表的资源权限状态:
4:表示具有读(read)权限。
2:表示具有写(write)权限。
1:表示具有执行(execute)权限。
0:表示没有相应的权限。