本次给大家介绍的是LINUX系统中的权限管理中的一些简单操作,希望可以帮助到大家!
目录
一.权限查看及读取
ls -l file #查看文件权限
ls -ld dir #查看目录权限
”文件的属性被叫做文件的元数据(meta data)“
“一种元数据用一个byte来巨鹿内容“
文件权限信息:
示例如下(注释对应‘|’中间的内容)
- |rw-r--r--| . | 1 | root | root | 0 | Apr 12 10:57 | westos
文件类型|读取权限|安全上下文|文件链接个数|文件拥有者|文件拥有组|文件大小|文件内容被修改的时间|文件名称
目录权限信息
d | rw-r--r-- | . | 2 | root | root | 0 | Apr 12 10:57 | westosdir
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
# 对于每一位的解释 #
[1] ####文件类型####
# - 普通文件
# d 目录
# l 软连接(快捷方式)
# b 快设备(硬盘类的存储设备)
# c 字符设备——shell
# s socket套接字(对内对外的程序接口)
# p 管道 |
[2] #用户权限#
#rw- |r--|r--
#u用户 g主组 o其他
[3] #系统的linux开启#
[4] #对于文件:文件内容被系统记录的次数(硬链接个数)
对于目录:目录中子目录的个数
[5] #文件拥有者
[6] #文件拥有组
[7] #对于文件:文件内容大小
对于目录:目录中子目录的大小
[8] #文件内容被修改的时间
[9] #文件名称
二.普通权限的类型及作用
u——————user 文件的拥有者, ls -l====[5]
g——————group 文件拥有组, ls -l====[6]
o——————other 既不是拥有组也不是拥有组成员的其他用户的通称
a——————all 全部
rwx|r--|r--
u g o
user>group>other
- #权限未开启
r #可读
#对于文件:可读取文件内容
#对于目录:可ls列出目录中的文件
w #可写
#对于文件:可以更改文件内容
#对于目录:可以在目录中新建或者删除文件
x #可执行
#对于文件:可以用文件名称调用文件内记录的程序
#对于目录:可以进入目录中
三.文件用户及用户组的管理
chown username file ##更改文件拥有者 注意:ls -lR 才可以看到子目录的属性
[westos@westos_student40 Desktop]$ chown westos /mnt/westosfile1
chgrp groupname file ##更改文件拥有组 [westos@westos_student40 Desktop]$ chgrp linux /mnt/westosfile2
chown username:groupname file ##同时更改文件的拥有者和拥有组————拥有者和拥有组之间的“ : "也可以换成"."
[westos@westos_student40 Desktop]$ chown root.root /mnt/westosfile1
[westos@westos_student40 Desktop]$ chown root:root /mnt/westosfile1
chown -R username group dir ##更改目录本身及目录中文件的拥有者
[westos@westos_student40 Desktop]$ chown -R root /mnt/westosdir
# 四.设定普通权限的方法
## 1.chmod指令设定文件权限
chomd 复制权限
chmod --reference=/mnt/westosdir /mnt/westosfile1
复制/mnt/westosdir的权限到/mnt/westosfile1上
chmod --reference=/tmp /mnt/westosdir
复制/tmp的权限到/mnt/westosdir上
chmod -R --reference=/tmp /mnt/westosdir
复制/tmp的权限到/mnt/westosdir及目录中的子文件上(-R代表 第归操作)
## 2.字符方式设定权限
chmod a/u/g/o /+/-/= file
示例: chmod a-rmx /mnt/westosfile1——————————————>file1权限变为--- --- ---
chmod u-w,g+w,o-x /mnt/westosfile1
chmod u=rwx,g=r,o=--- /mnt/westosfile2
chmod -R u=rwx,g=rx,o=--- /mnt/westosdir (-R 第归 目录中的其他文件一起更改)
## 3.chmod数字方式设定权限
权限波尔值表示方式
rwx=111
---=000
例如: chmod 777 /mnt/westosfile1——————————则表示把ugo都改为了rwx
# 五.系统中默认权力的设定
## 用户的“umask”值的更改
————在/etc/profile 当中查看umask的信息 /etc/bashrc 当中更改shell中设定的umsk值
更改umask的初始值之后,需要新建shell加载信息 或者在已打开的shell当中输入以下代码加载信息
—"source" /etc/profile
—"source" /etc/bashrc
普通用户的umask=002 建立文件777-002=775 建立目录775-111=664
超级用户的umask=022 建立文件777-022=755 建立目录755-111=644
# 六.特殊权限
用watch -n 1 ls -lR /mnt 进行监控查看文件权限
#stickyid 粘制位 (---t---)
#针对目录: #如果一个目录stickyid开启,那么这个目录中的文件只能被文件所有人删除
chmod 1源文件权限 dir(源文件权限=777)
chmod o+t dir = chmod 1777 dir ——————————打开stickyid (因为stickyid=1,所以这里o+t=1777)
sgid 强制位
针对目录: 把目录中新建的文件自动归属到目录的所属组中
设定:
chmod 2源文件权限 dir
chmod g+s dir
mkdir目录/mnt/pub---->watch-n 1 ls -lR /mnt/监控面板观察更直观--->建立目录/mnt/pub--->groupadd建立用户组qq--->chgrp更改目录所在用户组为qq---->chmod 777 /mnt/pub更改目录权限--->su - westos 建立文件/mnt/pub/file1---->观察新建文件所在主组--->exit切换到root 执行命令chmod g+s /mnt/pub--->su - westos 切换到westos用户再次建立新文件/mnt/pub/file2--->这次文件主组将归属到强制所属组当中
!!!只针对二进制的可执行文件(c程序)
!!!当运行二进制可执行文件时都是用文件拥有组的身份运行,和执行用户无关
#suid 冒险位
#只针对二进制的可执行文件(c程序)
#当运行二进制可执行文件时都是用文件拥有组的身份运行,和执行用户无关
监控 watch -n 1 "ps ax -o user,group,comm | grep cat" ——————>切换到westos用户使用/bin/cat命令(发现使用者是westos)——————————>root下设定 chmod u+s /bin/cat(意思是使用这条/bin/cat命令的使用者都会以root的身份运行)——————>westos下重新使用cat命令主组身份变为root
chmod u+s 命令 ————————进程所有人变化
chmod g+s 命令————————主组的身份发生改变
!!!!!!suid 和 sgid 的存在直接启用自己的所有人所有组的身份运行程序,把当前的身份忽略掉了
# 七.acl权限列表
acl__Aiccess Control Lists #访问控制列表
#功能:在列表中可以设定特殊用户对于特殊文件有特殊权限
#查看文件权限列表_____getfacl /mnt/pub/
!!注意:文件权限列表开启时,不要用ls -l 的方式来读取文件的权限;
#设定特殊用户对于特殊文件的权限_____setfacl -m u:指定用户:指定权限 /mnt/pub/
--设定自己拥有组的权限——————setfacl -m g::权限 /mnt/pub(对其他组o同理)
# 删除指定用户————————setfacl -x u:指定用户 /mnt/pub (删除指定组换成g即可)
# 关闭文件权限列表——————setfacl -b westosfile
acl 权限优先级
拥有者 > 特殊指定用户 > 权限更多的组 > 权限少的组 > 其他
#alc mask 控制
mask是能够赋予指定用户权限最大阀直(限定所有权限,但是不会增加)
!!!减少用户组权限的时候,例如:chmod g-w /mnt/westosfile1 其实是在减去mask的权限(由rwx-->r-x)
设定mask权限:setfacl -m m::权限 文件
## 默认权限列表的设定
设定lee用户的权限让他对于/mnt/westosdir目录rwx setfacl -m u:lee:rwx /mnt/westosdir/ #只对于/mnt/westosdir目录本身生效(只能对目录rwx)
设定lee用户的权限让他对于/mnt/westosdir目录包括里面内容rwx setfacl -Rm u:lee:rwx /mnt/westosdir/ #对于/mnt/westosdir目录已经存在的文件生效(-Rm 第归 可以对目录及已经建立的文件rwx)
----以上命令针对存在的文件生效,命令之后新建的文件没有被设定
默认权限:设定lee用户默认权限————对于/mnt/westosdir目录及内容rwx setfacl -m d:u:lee:rwx /mnt/westosdir #默认lee用户的权限后,lee用户对新建文件也直接有rwx的权限!!!!!!!!!!!默认权限不对目录本身生效,只是为了让之后新出现的文件快捷被设定
# 八.attr 权限
## attr权限限制所有用户(包括超级用户)
lsattr /mnt/westosdir —————— # 查看attr权限(lsattr -l 查看目录,lsattr -ld 查看目录本身)
chattr +a /mnt/westosdir____所有用户在目录内不能删除文件—(chattr -a dir取消限制)
chattr +i /mnt/westosdir____所有用户在目录内不能删除不能建立文件(chattr -i dir取消权限)
本文详细介绍了Linux系统中的权限查看、普通权限类型、用户及用户组管理,包括chmod指令、umask设置、特殊权限如sticky、suid和sgid,以及ACL和attr权限的使用。适合深入理解Linux权限控制。

被折叠的 条评论
为什么被折叠?



