目录
总结:本章讲解了如何使用创建用户、密码、属性,添加、删除组成员,修改所属主和组以及修改文件、文件夹的权限。
一、Linux的用户账号和组账号概述
1.超级用户:root 用户是 Linux 操作系统中默认的超级用户账号,对本主机有最高权限。
超级用户uid为0
2.普通用户:账号需要由 root 用户或其他管理员用户创建,拥有的权限受 到一定限制。
centos6:500-60000
centos7:1000-60000
3.程序用户:在安装 Linux 操作系统及部分应用程序时,会产生这种程序用户,这些用户不允许登录到系统。
centos6:1-499
centos7:1-999
4.uid范围不是固定的可以修改。
5.组分为基本组(私有组)和附加组(公共组)
基本组:在建立账户时,如果没有指定账户所属的组,系统就会自动建立一个和用户名相同的组,这个组就是私有组这个组默认只容纳了一个用户,在用户所属组中的第一个组称为基本组,基本组在 /etc/passwd 文件中指定。
基本组有且唯一。
附加组:除了第一个组外的其他组皆为附加组或公共组,附加组在 /etc/group 文件中指定。
附加组可有可无,也可以有多个。
二、useradd添加用户命令
1.语法:useradd [选项] [用户名]
2.添加用户:查看是否在 passwd和shadow文件中生成信息。
3.选项
-s 修改默认shell类型/bin/bash /sbin/nologin
-u 指定uid
-M 不建立家目录
-d 指定家目录
-e 用户失效时间
-g 指定基本组
-G 指定附加组
-r 随机生成系统用户
三、passwd命令设置密码
1.语法passwd [选项] [用户名]
2.选项
-d 清除密码,不需要使用密码登录
-l 锁定用户
-S 查看用户的状态
-u 解锁用户账户
四、usermod命令修改用户账号的属性
1.语法usermod [选项] [用户名]
2.选项
-l 更改用户账号的登录名称(改名)
-L 锁定用户账号
-u 修改用户的uid号
-U 撤销用户锁定
-d 修改用户的家目录位置
-e 修改用户的账户失效时间
-g 修改用户的基本组名
-G 修改附加组名
-s 指定用户的登录shell
五、gpasswd命令添加、设置、删除组成员
1.语法gpasswd [选项] [用户] [组]
2.选项
-a 添加一个账号进组
-d 将用户删除出组
-M 批量加减
六、文件/目录的权限和归属
1.访问人群分三类
所属主(u)
所属组(g)
其他人(o)
2.权限分为三种
读(r,4)
写(w,2)
执行(x,1程序,脚本)
3.对文件的权限
r 可使用文件查,比如:cat,可以查看内容
w 可以修改内容
x 可以执行(运行)文件(文件内容必须是可执行的)
4.对目录的权限
r 可以使用ls查看目录中文件列表
w 可在目录中创建文件,也可以删除目录中的文件,和文件本身的权限无关
x 可以使用cd进入目录,可以使用ls -l查看目录中文件元数据(须配合r权限使用),属于目录的可访问最小权限。
5.文件和目录的最大权限
文件的最大权限是666
文件夹的最大权限是777
七、chmod命令添加或删除权限
1.语法chmod [对谁](所有者,所属组,其他)[操作](+ - =)[权限] [文件]
2.选项
-R 递归添加权限
八、chown改变所属主和所属组
1.语法chown [用户名].[用户组] [文件名]
2.选项
-R 递归改变所属主和所属组
九、umask
1.umask是用来确定新建立的文件或文件夹的权限。
新建文件的默认权限: 666-umask,如果所得结果某位存在执行(奇数)权限,则将其权限+1,偶数不变
新建目录的默认权限:777-umask
非特权用户的umask默认是002
root的umask默认是022
十、三种特殊权限
1.suid
2.guid
3.sticky:粘贴位,只对文件夹有效,对文件无效,作用是让访问的人拥有和文件的所有者同样的权限。