2017-12-20 2周3次课 权限管理
2017-12-20 20:37
190 查看
2.14 文件和目录权限chmod
1.txt这个文件的权限,从第二个位开始是权限 rw-r--r--.
9位权限共划为三段。第一段是指所有者,第二段是指所属组,第三段是指除了所有者和所属组之外所有用户
-rw-r--r--. 最后有点,受制于selinux,如果selinux后再创建文件,就没有最后的点了
(彻底关闭selinux在配置文件/etc/selinux/config中)
r是否可读
w是否可写
x是否可执行
-不可读写执行
用数字来表示权限:
r=4,w=2,x=1
rwx=7,rw-=6,--x=1
所以 rw-r--r-- =644
·chmod对目录操作仅仅是目录本身,如果想对目录里文件全部更改则chmod -R
chmod u=rw,g=r,o=r (chmod 644)(不可以写成u=rw-,g=r--,o=r--)
chmod a+x 全部加上x权限
chmod a-x 全部去掉x权限
chmod g+x 所属组加上x权限
chmod g-x 所属组去掉x权限
以此类推,u,g,o 都一样
2.15 更改所有者和所属组chown
改变文件所有者 chown 用户名 文件名(绝对路径)
改变文件所属组 chgrp 文件名 文件名
用chown改所属组 chown 用户名:所属组 文件名 (同时更改所有者和所属组)
只改所属组:chown :root /tmp/yum.log (把所有者省略掉,可以只更改所属组)
更改目录下所有文件所有者和所属组
chown -R username:group filename
2.16 umask
·root用户的umask值 0022
·更改umask值 umask 数值 (第一个数字一般可以省略)
·root用户创建文件默认权限755
目录必须要有x权限,不然无法打开进入到目录中
·root用户创建目录默认权限644
·umask并不能直接用数字减,要用权限位去减
目录:777-003=(rwxrwxrwx) - (-------wx) = rwxrwxr-- = 774
文件:666-003=(rw-rw-rw-) - (-------wx) = rw-rw-r-- = 664
2.17 隐藏权限lsattr/chattr
2.17 隐藏权限lsattr / chattr
·i权限 (隐藏权限)
`设置隐藏权限 chattr +i xxx(设置隐藏权限后无法写入数据)
·查看隐藏权限 lsattr xxx
编辑有隐藏权限的文件时,会生成一个和该文件名称类似的缓存文件,例如1.txt的缓存文件为1.txt~,那么在保存退出后,该缓存文件会覆盖原文件,但是由于增加了隐藏权限,退出时无法保存,自然也无法覆盖原文件,所以多出一个缓存文件*
去除隐藏权限 chattr -i xxx
·给目录增加i权限(不能删除、不能改名,不能再目录下增加子目录和文件,但可以更改目录下文件内容)
·a权限 (可以追加、可以更改时间信息(touch);不能更改文件内容、不能删除、不能改名字)
·设置追加权限 chattr +a 1.txt
·给目录增加a权限,可以在目录下增加子目录和子文件
·查看全部文件权限,包括隐藏文件 lsattr -a
·查看目录下的子目录和子目录下文件的权限 lsattr -R
·查看目录本身权限 lsattr -d
[root@aming-01 ~]# ll 总用量 20 -rw-r--r--. 1 root root 10208 12月 17 20:21 1.txt -rw-r--r--. 1 root root 928 12月 17 16:51 2.txt -rw-------. 1 root root 1546 12月 13 06:40 anaconda-ks.cfg
1.txt这个文件的权限,从第二个位开始是权限 rw-r--r--.
9位权限共划为三段。第一段是指所有者,第二段是指所属组,第三段是指除了所有者和所属组之外所有用户
-rw-r--r--. 最后有点,受制于selinux,如果selinux后再创建文件,就没有最后的点了
(彻底关闭selinux在配置文件/etc/selinux/config中)
r是否可读
w是否可写
x是否可执行
-不可读写执行
用数字来表示权限:
r=4,w=2,x=1
rwx=7,rw-=6,--x=1
所以 rw-r--r-- =644
[root@aming-01 tmp]# ll 总用量 120 drwxr-xr-x. 2 root root 19 12月 18 21:52 aming drwxr-xr-x. 4 root root 29 12月 17 17:07 aminglinux -rwx------. 1 root root 836 12月 13 06:40 ks-script-DvfSzK -rwxr-xr-x. 1 root root 117656 12月 17 16:01 ls2 drwx------. 3 root root 17 12月 18 21:27 systemd-private-62968b6af9c246c2ae27c92ac649c9e5-chronyd.service-gUSnYe drwx------. 3 root root 17 12月 18 21:27 systemd-private-62968b6af9c246c2ae27c92ac649c9e5-vgauthd.service-Jnue5d drwx------. 3 root root 17 12月 18 21:27 systemd-private-62968b6af9c246c2ae27c92ac649c9e5-vmtoolsd.service-JWoIJH -rw-------. 1 root root 0 12月 13 06:14 yum.log [root@aming-01 tmp]# cd aming/ [root@aming-01 aming]# ll 总用量 0 -rw-r--r--. 1 root root 0 12月 18 21:52 1.txt [root@aming-01 aming]# cd .. [root@aming-01 tmp]# chmod 777 aming/ [root@aming-01 tmp]# ll 总用量 120 drwxrwxrwx. 2 root root 19 12月 18 21:52 aming drwxr-xr-x. 4 root root 29 12月 17 17:07 aminglinux -rwx------. 1 root root 836 12月 13 06:40 ks-script-DvfSzK -rwxr-xr-x. 1 root root 117656 12月 17 16:01 ls2 drwx------. 3 root root 17 12月 18 21:27 systemd-private-62968b6af9c246c2ae27c92ac649c9e5-chronyd.service-gUSnYe drwx------. 3 root root 17 12月 18 21:27 systemd-private-62968b6af9c246c2ae27c92ac649c9e5-vgauthd.service-Jnue5d drwx------. 3 root root 17 12月 18 21:27 systemd-private-62968b6af9c246c2ae27c92ac649c9e5-vmtoolsd.service-JWoIJH -rw-------. 1 root root 0 12月 13 06:14 yum.log [root@aming-01 tmp]# cd aming/ [root@aming-01 aming]# ll 总用量 0 -rw-r--r--. 1 root root 0 12月 18 21:52 1.txt
·chmod对目录操作仅仅是目录本身,如果想对目录里文件全部更改则chmod -R
[root@aming-01 tmp]# chmod -R 777 aming/ [root@aming-01 tmp]# ll aming/ 总用量 0 -rwxrwxrwx. 1 root root 0 12月 18 21:52 1.txt
chmod u=rw,g=r,o=r (chmod 644)(不可以写成u=rw-,g=r--,o=r--)
[root@aming-01 tmp]# chmod u=rwx,g=r,o=r aming/ [root@aming-01 tmp]# ll 总用量 120 drwxr--r--. 2 root root 19 12月 18 21:52 aming drwxr-xr-x. 4 root root 29 12月 17 17:07 aminglinux -rwx------. 1 root root 836 12月 13 06:40 ks-script-DvfSzK -rwxr-xr-x. 1 root root 117656 12月 17 16:01 ls2 drwx------. 3 root root 17 12月 18 21:27 systemd-private-62968b6af9c246c2ae27c92ac649c9e5-chronyd.service-gUSnYe drwx------. 3 root root 17 12月 18 21:27 systemd-private-62968b6af9c246c2ae27c92ac649c9e5-vgauthd.service-Jnue5d drwx------. 3 root root 17 12月 18 21:27 systemd-private-62968b6af9c246c2ae27c92ac649c9e5-vmtoolsd.service-JWoIJH -rw-------. 1 root root 0 12月 13 06:14 yum.log
chmod a+x 全部加上x权限
chmod a-x 全部去掉x权限
chmod g+x 所属组加上x权限
chmod g-x 所属组去掉x权限
以此类推,u,g,o 都一样
2.15 更改所有者和所属组chown
改变文件所有者 chown 用户名 文件名(绝对路径)
[root@aming-01 tmp]# ll aming/ 总用量 0 -rwxrwxrwx. 1 root root 0 12月 18 21:52 1.txt [root@aming-01 tmp]# chown user1 aming/1.txt [root@aming-01 tmp]# !ll ll aming/ 总用量 0 -rwxrwxrwx. 1 user1 root 0 12月 18 21:52 1.txt
改变文件所属组 chgrp 文件名 文件名
[root@aming-01 tmp]# chgrp user1 aming/1.txt [root@aming-01 tmp]# !ll ll aming/ 总用量 0 -rwxrwxrwx. 1 user1 user1 0 12月 18 21:52 1.txt
用chown改所属组 chown 用户名:所属组 文件名 (同时更改所有者和所属组)
[root@aming-01 tmp]# ll aming/ 总用量 0 -rwxrwxrwx. 1 user1 user1 0 12月 18 21:52 1.txt -rw-r--r--. 1 root root 0 12月 18 22:15 2.txt [root@aming-01 tmp]# chown user1:aming aming/2.txt [root@aming-01 tmp]# !ll ll aming/ 总用量 0 -rwxrwxrwx. 1 user1 user1 0 12月 18 21:52 1.txt -rw-r--r--. 1 user1 aming 0 12月 18 22:15 2.txt
只改所属组:chown :root /tmp/yum.log (把所有者省略掉,可以只更改所属组)
[root@aming-01 tmp]# chown :root aming/2.txt [root@aming-01 tmp]# !ll ll aming/ 总用量 0 -rwxrwxrwx. 1 user1 user1 0 12月 18 21:52 1.txt -rw-r--r--. 1 user1 root 0 12月 18 22:15 2.txt
更改目录下所有文件所有者和所属组
chown -R username:group filename
2.16 umask
·root用户的umask值 0022
[root@aming-01 tmp]# umask 0022
·更改umask值 umask 数值 (第一个数字一般可以省略)
[root@aming-01 tmp]# umask 002 [root@aming-01 tmp]# umask 0002
[root@aming-01 tmp]# touch 1.txt [root@aming-01 tmp]# mkdir 123/ [root@aming-01 tmp]# ll 总用量 120 drwxr-xr-x. 2 root root 6 12月 18 22:39 123 -rw-r--r--. 1 root root 0 12月 18 22:38 1.txt drwxr--r--. 2 root root 32 12月 18 22:15 aming drwxr-xr-x. 4 root root 29 12月 17 17:07 aminglinux -rwx------. 1 root root 836 12月 13 06:40 ks-script-DvfSzK -rwxr-xr-x. 1 root root 117656 12月 17 16:01 ls2 drwx------. 3 root root 17 12月 18 21:27 systemd-private-62968b6af9c246c2ae27c92ac649c9e5-chronyd.service-gUSnYe drwx------. 3 root root 17 12月 18 21:27 systemd-private-62968b6af9c246c2ae27c92ac649c9e5-vgauthd.service-Jnue5d drwx------. 3 root root 17 12月 18 21:27 systemd-private-62968b6af9c246c2ae27c92ac649c9e5-vmtoolsd.service-JWoIJH -rw-------. 1 root root 0 12月 13 06:14 yum.log [root@aming-01 tmp]# umask 002 [root@aming-01 tmp]# touch 2.txt [root@aming-01 tmp]# mkdir 234/ [root@aming-01 tmp]# ll 总用量 120 drwxr-xr-x. 2 root root 6 12月 18 22:39 123 -rw-r--r--. 1 root root 0 12月 18 22:38 1.txt drwxrwxr-x. 2 root root 6 12月 18 22:39 234 -rw-rw-r--. 1 root root 0 12月 18 22:39 2.txt drwxr--r--. 2 root root 32 12月 18 22:15 aming drwxr-xr-x. 4 root root 29 12月 17 17:07 aminglinux -rwx------. 1 root root 836 12月 13 06:40 ks-script-DvfSzK -rwxr-xr-x. 1 root root 117656 12月 17 16:01 ls2 drwx------. 3 root root 17 12月 18 21:27 systemd-private-62968b6af9c246c2ae27c92ac649c9e5-chronyd.service-gUSnYe drwx------. 3 root root 17 12月 18 21:27 systemd-private-62968b6af9c246c2ae27c92ac649c9e5-vgauthd.service-Jnue5d drwx------. 3 root root 17 12月 18 21:27 systemd-private-62968b6af9c246c2ae27c92ac649c9e5-vmtoolsd.service-JWoIJH -rw-------. 1 root root 0 12月 13 06:14 yum.log
·root用户创建文件默认权限755
目录必须要有x权限,不然无法打开进入到目录中
·root用户创建目录默认权限644
·umask并不能直接用数字减,要用权限位去减
目录:777-003=(rwxrwxrwx) - (-------wx) = rwxrwxr-- = 774
文件:666-003=(rw-rw-rw-) - (-------wx) = rw-rw-r-- = 664
2.17 隐藏权限lsattr/chattr
2.17 隐藏权限lsattr / chattr
·i权限 (隐藏权限)
`设置隐藏权限 chattr +i xxx(设置隐藏权限后无法写入数据)
[root@aming-01 ~]# chattr +i 1.txt [root@aming-01 ~]# vi 1.txt -- INSERT -- W10: Warning: Changing a readonly file [root@aming-01 ~]# head -n2 /etc/passwd > 1.txt -bash: 1.txt: 权限不够
·查看隐藏权限 lsattr xxx
[root@aming-01 ~]# lsattr 1.txt ----i----------- 1.txt
编辑有隐藏权限的文件时,会生成一个和该文件名称类似的缓存文件,例如1.txt的缓存文件为1.txt~,那么在保存退出后,该缓存文件会覆盖原文件,但是由于增加了隐藏权限,退出时无法保存,自然也无法覆盖原文件,所以多出一个缓存文件*
去除隐藏权限 chattr -i xxx
[root@aming-01 ~]# chattr -i 1.txt [root@aming-01 ~]# lsattr 1.txt ---------------- 1.txt
·给目录增加i权限(不能删除、不能改名,不能再目录下增加子目录和文件,但可以更改目录下文件内容)
[root@aming-01 ~]# rm -r 123/ rm:是否进入目录"123/"? y rm:是否删除目录 "123/456"?y rm: 无法删除"123/456": 权限不够 [root@aming-01 ~]# mv 123/ 234/ mv: 无法将"123/" 移动至"234/": 不允许的操作 [root@aming-01 ~]# chattr +i 123/ [root@aming-01 ~]# lsattr -d 123/ ----i----------- 123/ [root@aming-01 ~]# head -n2 /etc/passwd > 123/1.txt [root@aming-01 ~]# cat 123/1.txt root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin
·a权限 (可以追加、可以更改时间信息(touch);不能更改文件内容、不能删除、不能改名字)
·设置追加权限 chattr +a 1.txt
[root@aming-01 ~]# touch 1.txt [root@aming-01 ~]# ll 总用量 20 -rw-r--r--. 1 root root 10208 12月 19 21:41 1.txt -rw-r--r--. 1 root root 928 12月 19 20:30 2.txt -rw-------. 1 root root 1546 12月 13 06:40 anaconda-ks.cfg [root@aming-01 ~]# rm 1.txt rm:是否删除普通文件 "1.txt"?y rm: 无法删除"1.txt": 不允许的操作 [root@aming-01 ~]# mv 1.txt 3.txt mv: 无法将"1.txt" 移动至"3.txt": 不允许的操作 [root@aming-01 ~]# vi 1.txt "1.txt" E212: Can't open file for writing [root@aming-01 ~]# head -n2 /etc/passwd > 1.txt -bash: 1.txt: 不允许的操作 [root@aming-01 ~]# head -n2 /etc/passwd >> 1.txt [root@aming-01 ~]# cat 1.txt root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin [root@aming-01 ~]# touch 1.txt [root@aming-01 ~]# ll 1.txt -rw-r--r--. 1 root root 65 12月 19 22:31 1.txt #时间更改
·给目录增加a权限,可以在目录下增加子目录和子文件
[root@aming-01 ~]# chattr +a 123/ [root@aming-01 ~]# lsattr -d 123/ -----a---------- 123/ [root@aming-01 ~]# mkdir 123/234/ [root@aming-01 ~]# ll 123/ 总用量 4 -rw-r--r--. 1 root root 65 12月 19 22:16 1.txt drwxr-xr-x. 2 root root 6 12月 19 22:26 234 drwxr-xr-x. 2 root root 6 12月 19 21:52 456 [root@aming-01 ~]# touch 123/2.txt [root@aming-01 ~]# ll 123/ 总用量 4 -rw-r--r--. 1 root root 65 12月 19 22:16 1.txt drwxr-xr-x. 2 root root 6 12月 19 22:26 234 -rw-r--r--. 1 root root 0 12月 19 22:27 2.txt drwxr-xr-x. 2 root root 6 12月 19 21:52 456 [root@aming-01 ~]# cat 123/1.txt [root@aming-01 ~]# head -n2 /etc/passwd >123/1.txt [root@aming-01 ~]# cat 123/1.txt root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin
·查看全部文件权限,包括隐藏文件 lsattr -a
[root@aming-01 ~]# lsattr -a /root/ ---------------- /root/. ---------------- /root/.. ---------------- /root/.bash_logout ---------------- /root/.bash_profile ---------------- /root/.bashrc ---------------- /root/.cshrc ---------------- /root/.tcshrc ---------------- /root/.bash_history ---------------- /root/.ssh ---------------- /root/anaconda-ks.cfg ---------------- /root/2.txt ---------------- /root/.lesshst ---------------- /root/1.txt ---------------- /root/1.txt~ ----i----------- /root/123
·查看目录下的子目录和子目录下文件的权限 lsattr -R
[root@aming-01 ~]# lsattr -R 123/ ---------------- 123/456 123/456: ---------------- 123/1.txt
·查看目录本身权限 lsattr -d
[root@aming-01 ~]# mkdir 123/ [root@aming-01 ~]# mkdir 123/456/ [root@aming-01 ~]# lsattr 123 ---------------- 123/456 [root@aming-01 ~]# lsattr -d 123/ ---------------- 123/
相关文章推荐
- 一步步教你如何用疯狂.NET架构中的通用权限系统 -- 分级管理
- (转) MVC身份验证及权限管理-1
- AgileEAS.NET之权限管理
- 用户组与权限管理
- 拜师鸟哥之linux学习体会(13)——linux账号管理与ACL权限设定
- Android 6.0: 动态权限管理的解决方案
- MySQL权限管理
- oracle用户、权限、角色管理
- Oracle12C--权限管理(二十一)
- 8 权限管理
- RBAC权限管理及使用原生PHP实现
- Membership角色与权限管理 [5]
- 持续集成学习笔记-入门篇(9)团队管理:成员&权限设置、成果追踪与结果通知
- Vue + Element UI 实现权限管理系统 前端篇(六):更换皮肤主题
- 通用数据权限管理系统设计
- 权限管理系统数据库搭建
- 企业级开发的权限管理
- PostgreSQL 用户和权限管理
- Vue + Element UI 实现权限管理系统 前端篇(九):接口格式定义
- ASP.NET Identity “角色-权限”管理 9