加入收藏 | 设为首页 | 会员中心 | 我要投稿 上饶站长网 (https://www.0793zz.com.cn/)- 数据库平台、视觉智能、智能搜索、决策智能、迁移!
当前位置: 首页 > 服务器 > 搭建环境 > Unix > 正文

linux用两种方式改变file1的权限,Linux 文件的权限

发布时间:2023-10-26 13:05:50 所属栏目:Unix 来源:网络
导读: 1.文件属性的查看
ls -l filename ###长列表查看文件的属性

“-”:表示文件类型
-:普通文件 d:目录 c:字符设备 s:套接字 p:管道 b: 块设备 l: 链接
"rw-r--r--": 表示文件的

1.文件属性的查看

ls -l filename ###长列表查看文件的属性

“-”:表示文件类型

-:普通文件 d:目录 c:字符设备 s:套接字 p:管道 b: 块设备 l: 链接

"rw-r--r--": 表示文件的权限

前三个字母“rw-”表示文件拥有者的权限

中间三个字母“r--”表示文件所属组的权限

后三个字母“r--”表示文件对于其他人的权限

“1”: 对于文件表示文件内容被系统记录的次数

对于目录表示目录中文件属性的字节数

“root”:文件的拥有者

“root”:文件属于的组

“0”:表示文件的大小

“may 26 14:56”:表示文件最后一次被修改的时间

“file”:表示文件的名字

2,文件的权限

rw- | r-- | r--

u g o

u:文件的拥有者对文件可以读写

g:文件组成员对文件可读

o :其他人对文件可读

r权限

对于文件:可以查看文件的字符

对于目录:可以查看目录中的文件信息

w权限

对于文件:可以更改文件内的字符

对于目录:可以在目录中添加删除文件

x权限

对于文件:可以运行文件内记录的程序动作

对于目录:可以进入目录

3.字符方式修改文件权限

chmod [-R] file|dir

chmod u+x file1 ##file1拥有者添加x权限

chmod g+w file1 ##file1拥有组添加w权限

chmod u-x,g+w file1 ##file1拥有者去掉x权,file1拥有组添加w权限

chmod ugo-r file2 ##file2的用户组其他人去掉r权限

chmod ug+x,o-r file3 ##file3用户和组添加x权限,其他人去掉r权限

4.数字方式修改文件权限

在linux中r=4,w=2,x=1

文件权限数字表达式:

rw-|r--|r--

u g o

u=rw=4+2+0=6

g=r--=4+0+0=4

o=r--=4+0+0=4

所以文件的权限表示为644

数字方式修改文件权限的命令:chmod 修改后的权限 filename

chmod 777 file

如果修改文件其他目录文件权限,后面需要添加文件的绝对路径

a12ee62ebef05fb23be487af639ef21a.png

5.系统文件权限设定

从系统存在角度来说,开放权力越大,系统存在意义越高

从系统安全角度来说,开放权力越少,系统安全性越高

所以系统设定新建文件或目录会去掉一些权限 umask拿掉默认的022,对于文件666-022,对于目录777-022,所以root新建出来的文件权限为644,目录为755

设定方式

umask ##查看系统保留权限默认为022

umask 077 ##修改该系统保留权限为077,此设定为临时设定,只当前shell中生效

90bfdbb7ad751d880b32c36f91a884ab.png

永久设定方式:

修改配置文件/etc/bashrc,只对当前shell有效:其中002为普通用户umask 022超级用户umask

337267e764cc5c668c32a70fcc06e33b.png

修改配置文件/etc/profile ,对于系统有效,其中002为普通用户umask 022超级用户umask

00c75d04e333b4ebe922e5967a8fdf71.png

注意:以上两个文件的umask设定值必须保持一致;

文件设置完成不能生效,需要系统进行读取文件信息

source /etc/bashrc

source /etc/profile ####系统进行读取文件信息,让设置立即生效

6.文件拥有者以及所属组管理

chown username file|dir ####更改文件或者目录的拥有者

chmod username.groupname file|dir ###更改文件或者目录的拥有者以及所属组

chmod -R username dir #####更改目录本身以及目录下所以文件的拥有者

chmod -R groupname dir ####更改目录本身以及目录下所有文件的属组

3e3427806d8d0fa65e83d7e517bed5c5.png

53cc4e1aebaa9bf2e199037f66c00515.png

835b7cdb24f00ac40005031af7b3af11.png

cabbd68875e7814b4730ab0b3e20603e.png

7,特殊权限

suid ###冒险位

只针对二进制可执行文件,文件内记录的程序产生的进程为文件的拥有者,和进程的发起人没有关系

设定方式: chmod u+s filename 或者 suid=4 或者 chmod 4xxx filename

实验:以/bin/touch为例

对于二进制文件/bin/touch,所有人添加s权限,用户desktop使用/bin/touch创建westos所有人为root,root用户下取消所有人s权限,用户lee再次使用/bin/touch创建文件westos1,所有人为desktop。

3e0b086875ce28b40b2a6f7f8d5c33b4.png

8b098876aa869e5fe015a0d09c7e2fdd.png

sgid ###强制位

对于文件:只针对二进制文件,任何人运行文件,程序产生的进程的属组为文件的所在组

对于目录:目录含有s权限后,目录下新建的文件的属组自动归属到该目录的属组,和文件的建立者无关

设定方式:chmod g+s filename 或者 sgid=2 或者 chmod 2xxx filename

实验对文件

给/bin/touch用户组添加s权限,新建文件file,查看属性,file所有组为root,切换用户desktop,同样,lee使用/bin/touch文件新建文件westos,desktop所新建文件所有者为desktop,但所有组却为root,root用户下取消/bin/touch文件所有的组的s权限,desktop用户使用/bin/touch创建文件file3,所有者,所有人都为desktop

d42c90fb9ab49f041857af6d83efe466.png

b672b489a7d4afd8c003a33d217bdb75.png

对目录:

超级用户身份下在/mnt下新建目录test,给与其他人rwx权限,用户组给与s权限,此时目录test所有组为root,切换desktop用户,desktop用户在/mnt/test目录中新建文件file,查看属性,file所有人为desktop,所有组依旧为root;

5800c31c918bcf27cbc7cd24c93fb9a3.png

sticky ###粘制位

t权限:

只针对目录,当一个目录由t权限后那么目录的文件只能被拥有者删除:

设定方式:chmod o+t directory 或者 t =1 或者 chmod 1xxx directory

实验t权限

desktop用户在/tmp下新建目录Linux,查看属性,其他人无w权限,给与其他人t权限和w权限,打开新shell切换用户westos,westos在/mnt/linux下新建文件we,切换linux用户,linux用户在/tmp/westos下新建文件li,当用户westos想删除linux在此目录内创建的文件li时,被拒绝,但用户westos删除自己所创建文件we时成功了。

db76e59e26f55714d409b8266a592e8d.png

5be24737546d10d7224da5f9f8f00253.png

8.设定acl列表

设定格式

setfacl -m ::权限 文件|目录

-m #设定

u #用户

g #组

getfacl filename|dirname 查看acl列表内容

getfacl /westos/

# file: westos/ ##文件名称

# owner: root ##文件所有人

# group: root ##文件所有组

user::rwx ##拥有者权限

user:student:rwx ##特殊用户权限

group::--- ##组权限

mask::rwx ##权限掩码

other::--- ##其他人权限

注意:当文件上有权限列表时,ls -l 能看到的权限是假的

实验:超户身份在/tmp下新建文件file,并进行编辑两行内容“westos,redhat”设定权限660,查看文件权限

切换desktop用户无法查看/tmp/file文件

切换超户设置acl列表desktop用户对文件具有rw权限

7a9d70f112001d4052a0b4c79b2cf2a5.png

切换desktop用户进行查看/tmp/file文件

对于所有组而言,所有组拥有对/tmp/file文件的rw权限,那么此所有组内的成员都会拥有/tmp/file文件的rw权限。

删除列表中的用户或者组

setfacl -b filename ###关闭acl权限列表

setfacl -x :文件|目录

实验:删除/tmp/file文件对desktop用户的特殊权限

6f81609de8bfc1276a0b883d0f88b3ae.png

873d95f2d3b19cf90a0bedd127f3f242.png

###acl mask值###

mask 权限掩码

mask用来标实能够赋予用户最大权限

当用chmod改变文件普通权限时可能会被破坏,修复setfacl -m m:rwx 文件名称

实验:root用户在/tmp下新建文件file,设定用户desktop对此文件拥有rwx权限,改变/tmp/file文件权限为700,查看acl列表信息,发现user和group后出现#effective,新建shell以desktop用户身份查看/tmp/file文件,发现无法查看。当出现#effective时,表示文件被损坏。

1e39d9e37de8833fd08dd199d7ad080c.png

切换desktop用户查看被拒绝

通过命令:setfacl -m m:rwx /tmp/file 来修复UNIX 文件权限,可以看出#effective消失,在file文件里面添加“hello,你好”方便否其查看

320b967520a8afee10b9c1ef61525dd1.png

切换用户desktop进行查看

####acl 默认权限######

当我们需求某个目录对于desktop可写,并且目录中新建的子目录对desktop也可写

就要设定默认默认权限

注意: 默认权限只对目录中新建立的文件或者目录生效,对已经建立的文件无效,

对于目录本身也无效

setfacl -m d:u:student:rwx /westos

实验:在/tmp用户桌面下,新建目录westos,设置权限为700

(编辑:上饶站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章