文件属性及权限管理(含练习)

文件属性及权限管理

一、权限的查看

1.文件权限的查看
两种方式:ls / ll
在这里插入图片描述
在这里插入图片描述
2.文件属性的读取
在这里插入图片描述
【1】文件类型

  • 普通文件 d 目录 l 符号链接 c 字符设备 b 块设备

【2】文件的权限

r: 可读 w: 可写 x:可执行 -: 没有权限 . 特殊权限

【3】文件链接个数(文件内容被记录的次数)

【4】文件所有者

【5】文件属组

【6】文件大小(单位:字节)

【7】文件创建时间

【8】文件名称

二、文件权限的修改

1.字母方式修改权限

rw- rw- r–

1 2 3

1.[u]文件所有者权限

2.[g]所属组权限

3.[o]其他用户权限

[a]所有用户
在这里插入图片描述
2.数字方式修改权限

r=4 w=2 x=1 -=0

7=rwx,6=rw-,5=r-x,4=r–,3=-wx,2=-w-,1=–x,0=—
在这里插入图片描述
3.umask

umask值:决定了新建文件或文件夹时的默认权限

umask默认值为0022

l 若用户创建的是目录,则默认所有权限都开放,为777,默认为drwxrwxrwx

l 若创建的是文件,默认是没有x权限,只剩r、w,最大值为666,默认为-rw-rw-rw-

l 新建文件:666-022=644

l 新建目录:777-022=755
在这里插入图片描述
l umask =077 ,此时新建目录的权限是700,文件权限是600

三、修改文件的所有者与所属组

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

四、特殊权限

(1)针对其他用户的部分或者个别用户设置特殊权限

ACL:访问控制列表

设置ACL规则:setfacl -m u:用户:r-x 文件名 (u:可加可不加)

查看ACL规则:getfacl 文件名

删除一条规则:setfacl -x u:用户 文件名

删除所有规则:selfacl -b 文件名
在这里插入图片描述

(2) 针对其他用户,只能删除自己的文件,不能删除其他用户的文件

SBIT:粘滞位权限(强制位权限)

chmod o+t 文件名

大写的T原本没有x,小写的t原本有x
在这里插入图片描述

(3)SGID:针对其他用户设置,以所属组的身份去执行

chmod g+s 文件名

原本有x权限,x的位置会变成s ,原本没有x权限,x位置会变成S
在这里插入图片描述

(4) SUID:以文件所有者的身份执行文件,只针对可执行文件

chmod u+s 文件名

任务一:

guestuser1用户在tty1控制台使用vim编辑器制定自己今天的学习计划,内容如下:

Data access:8a.m.
Reading program:10a.m.
Project design:13p.m.
Discussion items:15p.m.

计划制定完成后,guestuser1对文件的内容进行了浏览和确认,最后用root身份将内容输出给在tty2控制台的用户参考。

需要开启两个终端

第一个终端:

[root@localhost home]# useradd guestuser1

[root@localhost home]# su guestuser1

[guestuser1@localhost home]$ cd

[guestuser1@localhost ~]$ vim 1.txt

[guestuser1@localhost ~]$ cat 1.txt

Data access:8a.m.
Reading program:10a.m.
Project design:13p.m.
Discussion items:15p.m.

[root@localhost home]# tty
/dev/pts/0

[root@localhost home]# cat /home/guestuser1/1.txt > /dev/pts/1

第二台终端:
[root@localhost ~]# tty
/dev/pts/1

[root@localhost ~]# Data access:8a.m.

Reading program:10a.m.

Project design:13p.m.

Discussion items:15p.m.

任务二:文件权限的设置

公司分别有3个部门,财务部、销售部、生产部。在系统中3个文件夹分别用于存放部门文件,有一个文件夹用于存放公司文件。要求如下:

a、每个部门设置一个组,部门经理有管理本部门帐号的权限。

b、部门成员对本部门的文件夹具有写入权限,但不能删除别人建立的文件。

c、其他部门成员不能查看本部门的文件。

d、总经理不加入部门组,但对部门的文件夹具有写入权限。

第一步:为每个部门新建文件夹:/mnt/

    财务部:cwfiles   销售部:xsfiles   生产部:scfiles  公司文件:gsfiles

[root@localhost ~]# cd /mnt

[root@localhost mnt]# ls

[root@localhost mnt]# mkdir -p cwfiles xsfiles scfiles gsfiles

[root@localhost mnt]# ls
在这里插入图片描述

第二步:为每个部门新建用户

财务部:cwjl cwy1

销售部:xsjl xsy1

生产部:scjl scy1

公司:zjl

[root@localhost mnt]# cd /home

[root@localhost home]# ls

[root@localhost home]# useradd cwjl

[root@localhost home]# useradd cwy

[root@localhost home]# useradd xsjl

[root@localhost home]# useradd xsy

[root@localhost home]# useradd scjl

[root@localhost home]# useradd scy

[root@localhost home]# useradd zjl

[root@localhost home]# cat /etc/passwd //查看用户是否建立成功
在这里插入图片描述
为用户设置密码:passwd 用户名

[root@localhost home]# passwd cwjl

[root@localhost home]# passwd cwy

[root@localhost home]# passwd xsjl

[root@localhost home]# passwd xsy

[root@localhost home]# passwd scjl

[root@localhost home]# passwd scy

[root@localhost home]# passwd zjl

[root@localhost home]# cat /etc/shadow //查看用户密码是否建立成功 在这里插入图片描述
第三步:为每个部门新建用户组

组名 财务部:cwb 销售部:xsb 生产部:scb

[root@localhost home]# groupadd cwb

[root@localhost home]# groupadd xsb

[root@localhost home]# groupadd scb

[root@localhost home]# cat /etc/group // 查看用户组是否新建成功
在这里插入图片描述

第四步:将用户加入到用户组
[root@localhost home]# gpasswd -a cwjl cwb
正在将用户“cwjl”加入到“cwb”组中

[root@localhost home]# gpasswd -a cwy cwb
正在将用户“cwy”加入到“cwb”组中

[root@localhost home]# gpasswd -a xsjl xsb
正在将用户“xsjl”加入到“xsb”组中

[root@localhost home]# gpasswd -a xsy xsb
正在将用户“xsy”加入到“xsb”组中

[root@localhost home]# gpasswd -a scjl scb
正在将用户“scjl”加入到“scb”组中

[root@localhost home]# gpasswd -a scy scb
正在将用户“scy”加入到“scb”组中

[root@localhost home]# cat /etc/group //查看用户组当中包含的用户
在这里插入图片描述

第五步:部门经理有管理本部门帐号的权限。(需要将部门经理设置为组管理员)

[root@localhost home]# gpasswd -A cwjl cwb

[root@localhost home]# gpasswd -A xsjl xsb

[root@localhost home]# gpasswd -A scjl scb

[root@localhost home]# cat /etc/gshadow //查看组管理员
在这里插入图片描述

第六步:部门成员对本部门的文件夹具有写入权限,其他部门成员不能查看本部门的文件。

[root@localhost home]# cd /mnt

[root@localhost mnt]# ll

drwxr-xr-x. 2 root root 6 7月 15 21:22 cwfiles
drwxr-xr-x. 2 root root 6 7月 15 21:22 gsfiles
drwxr-xr-x. 2 root root 6 7月 15 21:22 scfiles
drwxr-xr-x. 2 root root 6 7月 15 21:22 xsfiles

[root@localhost mnt]# chown cwjl:cwb cwfiles

[root@localhost mnt]# chown scjl:scb scfiles

[root@localhost mnt]# chown xsjl:xsb xsfiles

[root@localhost mnt]# ls -l

drwxr-xr-x. 2 cwjl cwb 6 7月 15 21:22 cwfiles
drwxr-xr-x. 2 root root 6 7月 15 21:22 gsfiles
drwxr-xr-x. 2 scjl scb 6 7月 15 21:22 scfiles
drwxr-xr-x. 2 xsjl xsb 6 7月 15 21:22 xsfiles

[root@localhost mnt]# chmod 770 cwfiles

[root@localhost mnt]# chmod 770 scfiles

[root@localhost mnt]# chmod 770 xsfiles

[root@localhost mnt]# ll

drwxrwx—. 2 cwjl cwb 6 7月 15 21:22 cwfiles
drwxr-xr-x. 2 root root 6 7月 15 21:22 gsfiles
drwxrwx—. 2 scjl scb 6 7月 15 21:22 scfiles
drwxrwx—. 2 xsjl xsb 6 7月 15 21:22 xsfiles

第七步:只能删除自己建立的文件而不能删除别人建立的文件

[root@localhost mnt]# chmod o+t cwfiles

[root@localhost mnt]# chmod o+t scfiles

[root@localhost mnt]# chmod o+t xsfiles

[root@localhost mnt]# ll

drwxrwx–T. 2 cwjl cwb 6 7月 15 21:22 cwfiles
drwxr-xr-x. 2 root root 6 7月 15 21:22 gsfiles
drwxrwx–T. 2 scjl scb 6 7月 15 21:22 scfiles
drwxrwx–T. 2 xsjl xsb 6 7月 15 21:22 xsfiles

第八步:总经理不加入部门组,但对部门的文件夹具有写入权限。

[root@localhost mnt]# setfacl -m u:zjl:rwx cwfiles

[root@localhost mnt]# setfacl -m u:zjl:rwx scfiles

[root@localhost mnt]# setfacl -m u:zjl:rwx xsfiles

[root@localhost mnt]# ll

drwxrwx–T+ 2 cwjl cwb 6 7月 15 21:22 cwfiles
drwxr-xr-x. 2 root root 6 7月 15 21:22 gsfiles
drwxrwx–T+ 2 scjl scb 6 7月 15 21:22 scfiles
drwxrwx–T+ 2 xsjl xsb 6 7月 15 21:22 xsfiles

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值