一、Linux用户和权限
在linux系统中,总共有三种用户类型
1.超级管理员(权限最高的用户)root
2.普通用户(权限受限的用户)
3.程序用户 不是给人登录用的 给程序使用的
1.用户属性
uid:用户的身份证号
gid:用户组的身份证号
系统靠用户的uid号来区分用户身份
uid范围 0-60000
用户类型 /系统版本 | centos7 | centos6 |
---|---|---|
超级管理员 | 0 | 0 |
普通用户 | 1000-60000 | 500开始 |
程序用户 | 1-999 | 1-499 |
一个用户必须有一个基本组,附加组可有可无,也可以有多个
2.用户相关文件
用户信息文件:/etc/passwd 保存用户信息,不存密码
用户密码文件:/etc/shadow 用于存放密码,以及密码策略
组账户:/etc/group
组密码: /etc/gshadow
通过man 5 文件名 可以查看文件内容每段含义
例:root用户信息文件
不同信息之间用冒号隔开
3.文件权限
文件权限有三种
r:可读
文件:可以看里面的内容
文件夹:可以用ls 看文件中的文件列表
w:写
文件:可以修改文件的内容
文件夹:新建文件夹,删除文件夹,移动文件夹
x:执行
文件:可以运行文件颜色是绿色
文件夹:对文件夹来说执行是最小权限,没有执行 读写无法使用
通过数字表示权限
4表示可读,2表示可写,1表示可执行
例:
有可读写权限就是4+2+1=7
二、管理用户的Linux命令
1.useradd
用来新建一个用户,并且修改新建用户的属性
当使用useradd命令时,会自动建立一个同名的基本组以及自动建立一个同名的家目录
命令选项
-u 指定用户uid
-s 指定登录的shell类型
-M 不建立家目录
-g 指定基本组
-G 指定附加组
-d 设置用户主目录,默认值为用户的登录名,并放在“/home”目录下
-e 用YYYY-MM-DD格式设置账号过期日期
例:useradd lisi -u 1111 -s /sbin/nologin -M
2.passwd
passwd命令被用于更改用户密码
普通用户可以更改自己的密码,管理员则可以更改其他用户的密码
使用passwd命令时 后面不加用户名时 默认修改当前用户密码
命令选项
-d 清空用户密码
-l 锁定用户
-u 解锁用户
-S 查看用户是否被锁定
-f 强制执行
-e 强制要求用户在下次登录时修改密码
免交互设置密码
例:echo “123123” |passwd lisi --stdin
3.usermod
作用是对已有用户的属性进行修改
格式: usermod [选项]用户名
选项
-u 修改用户uid
-s 修改登录的shell类型
-g 修改指定基本组
-G 修改指定附加组
-d 修改用户主目录
-e 修改账号的有效期限
-c 修改用户的备注文字
-l 更改用户的名称 先写新名字 再写旧名字
4.userdel
userdel 命令的作用是删除与指定用户有关的数据信息。
格式:userdel 用户名
选项 -r 连着家目录一起删除
三、管理文件权限的命令
1.chmod
作用:chmod命令的作用主要是给文件修改读写执行的权限
加上:+ 减去:- 赋予:=
对象 | 对应字母 |
---|---|
属主 | u |
属组 | g |
其他人 | o |
所有人 | a |
格式一
chmod [选项] 指明对象(属主/属组/其他人/所有人) 赋予/加上/减去 权限 文件
格式二:用数字来表示权限
chmod 数字一 数字二 数字三 文件名
(数字一表示属主权限,数字二表示属组的权限,数字三表示其他人的权限)
2.chown
作用:用来改变文件的属主和属组
chown 属主 文件名 只改变文件的属主
chown :属组 文件名 只改变文件的属组
chown 属主:属组 文件名 属主属组都改变
选项:
-R 递归改变属主和属组
umask
umask就是对文件、文件目录权限控制的预设值(注意这个预设值是要被减掉的)
用户创建文件夹权限值=初始创建文件夹默认值-umask的预设值
如:
775=777-002
用户创建文件权限值=初始创建文件默认值-umask的预设值
664=666-002
注:新建普通文件时umask为203 的话 权限是 666-202=464
因为普通文件默认其他人没有执行权限