1.权限表示方法:
如下图中红框内为权限位
具体解释见我之前博客当中的“一个重要补充”部分,截图如下,原博文中有例子,请自行查阅。
若所属人没有权限,但是其所属组有权限,我们也可以看作他有权限。(用户组和文件的所属组相同时,这时用户的权限由所属人和所属组的权限叠加决定)
上图中若权限位为x则代表它是一个可执行文件,可执行文件是指那些被操作系统认定为可以执行的文件,也就是说,这类文件包含了可由计算机程序加载并执行的指令。在Windows中exe就是可执行文件(启动应用程序),Linux中的shell脚本(或者类型脚本),用来启动某个应用程序或者服务程序。
日常工作中,r和w一般时同时的,即可写一定可读(-rw)。文本文件一般没有x权限,因为文本文件不可执行。
2.应用程序、服务程序
比如以Windows为例,打开任务管理器。除了我启动的应用软件如下图的VMware和BiliBli以外,还有很多其他的程序,如下图的“服务主机”,这些就是服务程序。
应用程序(Application)——餐厅、超市(给我们提供服务,见得到)
应用程序,又称为应用软件,是指为了完成特定任务而设计的软件程序。应用程序面向最终用户,提供直观的操作界面,使用户能够执行各种任务,如文档编辑、图像处理、游戏娱乐等。应用程序通常专注于单一或有限的功能范围,旨在满足用户的特定需求。
服务程序(Service Program)——边防(见不到但提供保障)
服务程序,又称为服务或后台服务,是指在后台运行的软件,它不提供直接与用户交互的界面,而是执行长期运行的任务,如网络服务、系统监控、数据库管理等。服务程序通常作为系统的一部分启动,并在后台持续运行,等待处理请求或执行定时任务。
3.权限修改
只有文件所有者和超管可以修改权限。
(1)使用符号方式修改权限
- 增加权限:
chmod [a|u|g|o][+][r|w|x] filename
u
表示所有者 (user
)。g
表示组 (group
)。o
表示其他人 (other
)。a
表示所有 (all
)。
- 删除权限:
chmod [a|u|g|o][-][r|w|x] filename
- 切换权限:
chmod [a|u|g|o][=][r|w|x] filename
例如,要给所有者增加执行权限,并删除组和其他人的写权限,可以这样操作:
chmod u+x,g-rw,o-rw example.txt
示例(给所有者增加可执行权限):
(2)使用数字方式修改权限
数字方式使用八进制数来表示权限。每个权限位可以用以下数字表示:
- 读取 (r): 4
- 写入 (w): 2
- 执行 (x): 1
- 无权限 (-): 0
组合起来,rwx
对应数字 7
,rw-
对应 6
,r-x
对应 5
,以此类推。
要将文件的所有者设置为读写执行权限,组和其他人设置为只读权限,可以这样操作:
chmod 744 example.txt
这里,7
表示所有者具有读写执行权限 (4 + 2 + 1 = 7
),4
表示组和其他人都只有读权限 (4 = 4
)。
4.修改文件的所属者和所属组
上面(2)中的数字如何确定?
通过二进制确定。比如rwx分别对应三个数字,若有该权限则为1。所以如果只有r权限,二进制格式为100,十进制为4。同理可得其他数字。
使用选项-R可以修改文件包括其所有子文件夹的权限。
chmod -R 777 example.txt
(1)修改所属人
chown 用户名 文件名
(2)修改所属组
chgrp 用户组名 文件名
同理,我们也可以通过-R来递归修改所有子文件夹。