linux——文件权限的更改与管理

####一####

1.文件属性查看

ls -l filename

- rw-rw-r-- 1 tutu tutu 0 Apr 6 23:43 file

1.文件类型

- #普通文件

d #目录

s #socket套接字

l #软链接 #快捷方式

p #管道

c #字符设备

b #块设备 #用sdb文件管理U盘

2.读写权限

rw-|rw-|r--  ##优先于用户匹配,优先于组匹配,优先于其他匹配

rw- #第一个rw- #文件拥有者对文件能做的动作

rw- #第二个rw- #文件所在组的组成员能对文件做的动作

r-- #其他人对于文件能做的动作

3.文件内容被记录的次数

4.文件拥有者

5.文件所在组

6.文件大小

7.文件最后一次被更改的时间

8.文件名称

linux——文件权限的更改与管理

2.目录属性查看

ls -ld directory

d rwxrwxr-x 2 tutu tutu 6 Apr 6 23:43 directory/

1.类型(与文件相同)

2.权限

3.子目录个数

4.目录拥有者

5.目录所在组

6.目录中内容的属性的大小

7.目录中文件增加或减少或被更名的时间

8.目录名称

linux——文件权限的更改与管理

3.文件用户组的更改  ##超级用户可用

chown 用户名称 文件 ##更改文件所有人

chgrp 组名称 文件 ##更改文件所有组

chown -R 用户 目录 ##更改目录本身以及目录中的子文件的所有人

chgrp -R 组名称 目录 ##更改目录本身以及目录中的子文件的所有组

chown student:tutu /mnt/filename

 linux——文件权限的更改与管理

watch -n 1 ls -lR /mnt/ ##进入监控模式

4.权限的识别

ls -l 中2--10字符为文件权限

rwx ##用户权限(u)

r-x ##(第一个)组成员权限(u)

r-x ##(第二个)其他用户权限(o)

权限种类

1.r权限  读取

针对文件时,表示可以查看文件内容

针对目录时,表示可以ls查看目录中存在的文件名称

2.w权限  更改

针对文件时,表示可以更改文件的内容

针对目录时,表示是否可以删除目录中的子文件或者新建子目录

3.x权限 

针对文件时,表示是否可以开启文件当中记录的程序

针对目录时,表示是否可以进入目录中

4.改权限

chmod ugo+-=rwx

r——4,w——2,x——1

u=rwx=7,u=rw-=6

g=rwx=7,g=r--=4

o=rwx=7,o=r--=4

777,644

7=rwx, 6=rw-, 5=r-x, 4=r--

3=-wx, 2=-w-, 1=--x, 0=---

linux——文件权限的更改与管理

5.文件的默认权限

1.临时修改

umask ##显示系统预留权限值,最大权限值

umask 077 ##临时修改umask的值

2.永久修改

vim /etc/bashrc #第71行是普通用户的更改,第73行是超级用户的更改

vim /etc/profile #第60行是普通用户的更改,第62行是超级用户的更改

source /etc/bashrc ##刷新bash配置

source /etc/profile ##刷新系统配置

linux——文件权限的更改与管理

6.特殊权限

1.stickyid ##强制位

chmod o+t directory

chmod 1777 directory

o+t #t=1,该权限只针对目录,当一个目录被赋予t权限时,这个目录的文件只能被文件拥有者删除

#对于文件,目前权限列表可以显示,但无意义

linux——文件权限的更改与管理

2.sgid ##粘贴位

chmod g+s filename|directory  **只针对二进制可执行文件(BuildTD)

chmod 2777 filename|directory

g+s

#针对二进制文件时,文件中记录的程序在执行时和执行者的组身份没有关系,而是以二进制文件的所有组的身份执行的

#针对目录时,在目录中创建的文件都自动归属到目录所在组

**注意:默认情况下,用户建立的文件是自己的id和组

linux——文件权限的更改与管理

 3.suid ##冒险位

chmod u+s filename

chmod 4777 file

u+s #只针对文件,文件记录动作在执行时是该文件所有人身份执行的,与发起者无关

#对于目录,目前权限列表可以显示,但无意义

linux——文件权限的更改与管理

7.权限列表

acl ##指定特定的用户对特定的文件的特殊权利

-rw-rwx---+ 2 root root 0 Apr 6 23:23 file ##“+”代表权限列表开启,该文件的普通权限也可以在权限列表中被识别,ls -l 看到的权限是错误的

1.权限设定

setfacl -m u:tutu:rwx /mnt/filename #设定用户tutu可以对filename文件执行读写操作

setfacl -m g:westos:rwx /mnt/filename #设定westos组可以对文件执行读写操作

setfacl -x u:tutu /mnt/filename #删除用户在权限列表中的信息

setfacl -x g:westos /mnt/filename #删除westos组在权限列表中的信息

setfacl -b /mnt/filename #“+”消失,权限列表关闭

linux——文件权限的更改与管理

linux——文件权限的更改与管理

linux——文件权限的更改与管理

linux——文件权限的更改与管理

linux——文件权限的更改与管理

2.权限查看

getfacl /mnt/filename

内容如下:

file: mnt/file #文件名称

owner: root #文件的拥有者

group: root #文件所在组

user::rw- #文件拥有者的权限

user:tutu:rw- #特殊指定用户的权限

group::--- #文件组的权限

group:student:rwx #特殊指定组的权限

mask::rwx #权限最大值

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

3.mask值

mask值是指能够赋予用户权限的最大值

当设定acl权限列表后,若用chmod命令缩小文件的权限,则mask值会有所更改

 chmod 740 /mnt/file #做这样的动作,mask值会发生改变

更改前

linux——文件权限的更改与管理

更改后

 linux——文件权限的更改与管理

注:表示有效权力 #effective:r--

恢复

setfacl -m m:rwx /mnt/file #用此命令可恢复mask值

4.acl列表的默认权限

#该权限针对于目录生效

#默认的acl权限只被新建的文件和目录所继承,已经建立好的,没有这个功能

setfacl -m d:u:butterfly:rwx 目录

linux——文件权限的更改与管理

#递归的acl权限只会赋予acl权限给以前创建好的文件和目录,后来新建的便没有这个功能

setfacl -Rm u:butterfly:rwx 目录

linux——文件权限的更改与管理

setfacl -m d:u:butterfly:rwx /mnt/tutu ##设定在tutu目录中

#新建用户对butterfly用户有rwx权限

#对已经存在的文件和目录无效

#对目录本身无效

8.练习实例:

1.新建用户组,shengchan,caiwu,jishu

2.新建用户要求如下:

1)tom 是shengchan组的附加用户

2)harry 是caiwu组的附加用户

3)leo 是jishu组的附加用户

4)新建admin用户,此用户不属于以上提到的三个部门

3.新建目录要求如下:

1)/pub目录为公共存储目录对所有用户可以读,写,执行,但用户只能删除属于自己的文件

2)/sc 目录为生产部存储目录只能对生产部人员可以写入,并且生产部人员所建立的文件都自动归属到shengchan组

3)/cw 目录为财务部存储目录只能对财务部人员可以写入,并且财务部人员所建立的文件都自动归属到caiwu组

4)admin用户对于/sc和/cw目录可以读写执行

[[email protected] mnt]# groupadd shengchan
[[email protected] mnt]# groupadd caiwu
[[email protected] mnt]# groupadd jishu
[[email protected] mnt]# useradd -G shengchan tom
[[email protected] mnt]# useradd -G caiwu harry
[[email protected] mnt]# useradd -G jishu leo
[[email protected] mnt]# useradd admin
[[email protected] mnt]# mkdir /pub /cw /sc
[[email protected] mnt]# chmod 1777 /pub/
[[email protected] mnt]# chgrp shengchan /sc
[[email protected] mnt]# chmod 2770 /sc
[[email protected] mnt]# chgrp caiwu /cw
[[email protected] mnt]# chmod 2770 /cw
[[email protected] mnt]# setfacl -m u:admin:rwx /sc
[[email protected] mnt]# setfacl -m u:admin:rwx /cw
[[email protected] mnt]# setfacl -m d:u:admin:rwx /sc
[[email protected] mnt]# setfacl -m d:u:admin:rwx /cw

linux——文件权限的更改与管理

linux——文件权限的更改与管理

linux——文件权限的更改与管理

linux——文件权限的更改与管理

linux——文件权限的更改与管理