1、文件权限
![](https://i-blog.csdnimg.cn/blog_migrate/25d26b49c67dfc0a330378d26de1c2d8.png)
1)红框内各位的意义
<1> 第一位:代码文件类型:
-
:普通文件
d
:目录文件
l
:链接文件
b
:块设备文件
c
:字符设备文件
p
:管道文件
<2> 2~4位:代表文件拥有者对文件拥有的权限,三位一次为r(只读)、w(写)和x(执行,目录的话需要有该权限才能进入到该录)。
<3> 5~7为:代表文件所在组其他用户对文件拥有的权限,三位一次为r(只读)、w(写) 和x(执行,目录的话需要有该权限才能进入到该录)。
<4>8~10位:代表文件用户者组以外其他用户所拥有的权限,三位一次为r(只读)、w(写)和x(执行,目录的话需要有该权限才能进入到该录)。
2)文件颜色的意义
<1>
蓝色文件:目录
<2>白色文件:一般性文件,如文本文件,配置文件,源码文件等
<3> 浅蓝色文件:链接文件,主要是使用ln命令建立的文件
<4> 绿色文件:可执行文件,可执行的程序
<5> 红色文件:压缩文件或者包文件
<6> 红色闪烁:表示链接的文件有问题了
<7> 黄色:设备文件
3)其他信息
红框后的列意思依次是:文件数、拥有者、所属组、文件大小、建档日期、文件名
4)查看具体文件的用户权限:ls -l 文件名
5)权限分配
<1> chmod:普通文件或目录的权限控制
* chmod 755 file 4:读 2:写 1:执行
![](https://i-blog.csdnimg.cn/blog_migrate/d3f351a6c955a3d6c5c347ceb30695b9.png)
![](https://i-blog.csdnimg.cn/blog_migrate/22d07c02e4d41029c10e357c5e972024.png)
* chmod u+x file -> chmod u+x, u+w , o+w file
![](https://i-blog.csdnimg.cn/blog_migrate/c135c3019d240a027e1b64c72d695b68.png)
<2> acl:普通目录或文件的权限控制(
仅仅是对文件内容的读写执行)
*setfacl:设置文件权限 -m 修改 u:用户
![](https://i-blog.csdnimg.cn/blog_migrate/140c46f160469c3573049520a78813a0.png)
*getfacl:查看文件权限
![](https://i-blog.csdnimg.cn/blog_migrate/0591bdfa6a070925aa2a50900b13736a.png)
*删除文件权限 -x 删除
setfacl -x user:username file
*清空文件权限
setfacl -b file 恢复到最原始的状态
*文件创建和删除的权限
对目录设置权限即可:setfacl -m u:user1:rwx /目录名
*对文件目录以及子目录和文件权限一块设置(-R 标识递归)
setfacl -m u:user1:rwx -R /目录名/
*继承父目录权限(子目录后期新添加的文件或目录权限不足)
setfacl -m u:user1:rwx -R /目录名/
setfacl -m d:u:user1:rwx -R /目录名/ (d: ->意思是继承)
<3> sudo:控制某一用户对某一文件或脚本拥有某些权限;可以理解为对应用程序或命令的权限;
*执行visudo
*添加 username localhost=/user/bin/useradd
未设置sudo
![](https://i-blog.csdnimg.cn/blog_migrate/600b017fe92ce12d8589bcc9ac63f6eb.png)
设置sudo
![](https://i-blog.csdnimg.cn/blog_migrate/d6921c7b17b36d8f20980778481add87.png)
添加一行用户权限行
![](https://i-blog.csdnimg.cn/blog_migrate/dede6f271fcc53fe190c7de2a7f9f573.png)
localhost:代表本机(
远程机器执行该命令时会报:user1 is not allowed to run sudo on。。。)
![](https://i-blog.csdnimg.cn/blog_migrate/92298fcc9f0dd9a26eb5e8234e84a037.png)
ALL:代表所有机器
![](https://i-blog.csdnimg.cn/blog_migrate/d04c282ef8a7792fa405c6e74e740966.png)
2、用户管理
1)用户分类
<1> u:所有者
<2> g:所属组
<2> 0:其他用户
<4> a:所有用户
2)用户管理
<1> 添加:useradd username
<2> 删除:userdel username
<3> 查看:id [username]
<4> 设置密码: passwd username
添加示例:
![](https://i-blog.csdnimg.cn/blog_migrate/508164dfb57abeccb6768b6e06f0bc12.png)
删除示例:
![](https://i-blog.csdnimg.cn/blog_migrate/b3a6c77331f2d535fb15b322cca8c0ef.png)
3)涉及用户的文件目录
<1> /etc/passwd:存放用户信息
<2> /etc/group:存放组信息
<3> /etc/shadow:存放用户密码
未设置密码:
![](https://i-blog.csdnimg.cn/blog_migrate/c4c7874e30887390e8f641add8199659.png)
已设置密码:
![](https://i-blog.csdnimg.cn/blog_migrate/293c7ae9e33f2ce3ff086dc65e6950d0.png)
<4> /home:除root用户在根目录下的/root 下,其他用户都会在home下有一个以用户名命名的文件夹。
3、用户与组
1)将用户加入组
gpasswd -a username groupname
![](https://i-blog.csdnimg.cn/blog_migrate/d3b2228aa5a8ced4c526e1154b7f0be6.png)
2)将用户移除组
gpasswd -a username groupname
![](https://i-blog.csdnimg.cn/blog_migrate/714a822255fb3f1899a8958c79cde5be.png)
3) 添加一个空组
groupadd groupname