分享好友 最新动态首页 最新动态分类 切换频道
Linux权限详解
2024-12-27 01:02


前言

  我们在学习Linux的时候,我们知道在Linux下一切皆文件,而不同的文件对于不同的用户有不同的操作权限,有些重要的东西不能让别人随意修改,所以我们就需要给文件加上权限,保证文件的私密性,那么话不多说,开启我们今天的主题


一、root账号与普通账号



  在Linux下有两种用户:一种是 超级用户(root,一种是 普通用户

区别 超级用户普通用户操作范围可以在Linux系统下做任何事情在Linux系统下做有限的事情命令行提示符‘#’‘$’

  如果我们当前账号是root账号,想要切换为普通用户,我们只需要这个命令

 
 

  这样就能切换用户了,但是如果我们当前用户是普通用户,我们想要切换到root账户只需要

 
 

  我们从普通用户切换为root账号时,需要输入root的密码,且在输入密码的时候,我们是看不到密码的。当密码输入完成时,回车就可以切换为root账号了。

  我们还有一种方法可以从普通用户切换为root账号

 
 

  在普通账号中,我们只能查看操作自己的工作目录,我们不能看到别人账号下的工作目录,同样,更不能查看root账号的工作目录。

 
 

总结

  1、Linux下账号分为root用户和普通用户,root用户的权限最大,可以做任何事情,而普通用户只能做有限的事情。
  2、root切换普通用户使用su + 用户名,普通用户切换为root账号时,需要su root或者su - 然后输入root密码回车即可切换。
  3、普通用户想执行更高权限的命令需要在使用命令前加上sudo


二、Linux权限管理


  • Linux当中,权限的类型一般有r(读,w(写,x(执行
  • 日常生活中不同身份的人干不同的事,在Linux当中,有着 拥有者,所属组,其他组 三类用户对象,每个文件都可以对这三类用户设置不同的权限。

  为了区分这个文件属于谁,在我们圈出来的地方第一个表示拥有者第二个就表示所属组。但是这里并没有显示other组,这是因为我们不清楚other是谁,如果将来有用户来访问我的文件,那么在这个文件当中other就会显示出来。

  一般我们在详细查看系统文件的时候会很容易发现这些

  其实前面的这些字母与-就是一个 文件的属性,表示 文件的类型和访问权限,属性的 第一位表示文件类型

  文件属性的第2-10位,表示 文件的权限,权限的前三位 表示文件所有者的权限,权限的 中间三位 表示文件所属组的权限,而权限的最后三位表示其他用户的权限。

文件类型分类

d:文件夹
-:普通文件
l:软链接(类似Windows的快捷方式
b:块设备文件(例如硬盘、光驱等
p:管道文件
c:字符设备文件(例如屏幕等串口设备
s:套接口文件


三、权限权值表示方法


文件的基本权限

1、读权限(r,r也就是READ的首字母,具有读取文件内容的权限对于目录来说,具有浏览该目录信息的权限。
2、写权限(w,w也就是WRITE的首字母,具有修改文件内容的权限对于目录来说具有删除移动目录内文件的权限。
3、执行权限(x,Execute的第二个字母,具有执行文件的权限对目录来说具有进入目录的权限。
4、“ - ”表示不具有该权限。

我们知道了权限三三为一组,一般权限分为如下几种情况

  • r-- 表示只读
  • --x 表示仅可执行
  • -wx 表示可写可执行
  • rwx 表示可读可写可执行
  • -w- 表示仅可写
  • rw- 表示可读可写
  • r-x 表示可读可执行
  • --- 表示无权限

  文件的权限也可以用二进制来表示,比如一个文件的权限为:rw-,那么该权限对应的二进制就是110。权限为rwx那么二进制就是111,无权限二进制表示为000。而3位比特位也可以使用8进制来表示一位数,那么我们也可以根据不同权限列出不同进制的表示方式

权限符号八进制二进制r4100w2010x1001rw6110rx5101wx3011rwx7111---0000

  有了以上这些我们就能很轻易的分析出我们对一个文件拥有哪些权限。从而可以做具体的事情了。


四、文件访问权限的设置方法



  有一些文件我们不想让别人看到,或者不想让别人对本文件进行操作,也就是说,我们想要对文件的权限进行更改,达到我们想要的效果。其实在Linux当中有这样一条命令

chmod命令

功能 设置文件的访问权限。
格式 chmod[选项] 权限 文件名

常用选项

  • R -> 递归修改目录文件的权限
  • 说明:只有文件的拥有者和root才可以改变文件的权限

用户标识符与权限字符

  • u:拥有者
  • g:所属组
  • o:其他用户
  • a:所有用户
  • +:向权限范围增加权限代号所表示的权限
  • -:向权限范围取消权限代号所表示的权限
  • =:向权限范围赋予权限代号所表示的权限

我们有如下文件

  现在我们想要对file.txt的other组的可读权限给删除,我们只需要

 
 
 
 

  这时我们突然又想要将file.txt文件所有权限都置为空,我们只需要

 
 

  我们想要恢复权限,仅仅将上面命令的-改为+即可。

  如果我们要对一个文件的三个组有相同的权限管理请求,则我们可以使用a选项来进行批量处理文件权限

 
 

  我们看到所有文件都具有是否可执行这个选项,那么我们的文件拥有了可执行权限就一定能执行吗?我们将file.txt文件属性全部开放,再对该文件写入一些内容

  那么我们执行这个文件

  我们会发现文件并不能执行,所以我们可以得出结论:一个文件具有可执行的权限,但是这个文件并不一定是可执行的,还需要保证这个文件是一个可执行程序。

  除此之外,我们还可以使用8进制来对一个文件的权限进行管理,按照上面给出的8进制数进行对文件的权限的管理


  如果我们需要修改一个文件的拥有者,我们就需要用到下面的命令了

一、chown命令

功能:修改文件或目录的所属组
格式chown [参数] 用户组名 文件名

  使用方法也很简单,只需要

 
 

注意 普通用户在使用chown命令时,需要使用sudo命令。原因也很简单,我们想要将自己的文件给别人,别人也是需要确认的,不然怎么知道你给的是不是什么病毒?但是你是root账号或者使用sudo命令可以强制将文件 拥有者更改。

二、chgrp命令

功能:修改文件或目录的所属组
格式chgrp [参数] 用户组名 文件名

常用选项

  • -R 递归修改文件或目录的所属组

  要更改所属组也需要进行sudo或者在root账号下使用该命令。

  我们有对应的更改所属组与拥有者的命令,但是并没有更改other组的命令,这是因为我们在更改拥有者与所属组的同时,other是在不断变化的,说白了,其实更改拥有者与所属组就已经将other更改,所以不需要更改other的命令。

如果我们感觉一个一个更改拥有者与所属组很麻烦,我们也可以使用

 
 

  我们前面说了,文件属性的首尾表示文件的类型,但是文件的类型这么多,可能会记混,有没有什么办法能详细查看该文件到底是什么文件的命令呢?Linux下有一个file命令

file命令

功能:查看文件类型的详细信息
格式file [选项] 文件或目录

常用选项

  • -c 详细显示指令执行过程,便于排错或程序执行的情况。
  • -z 尝试去解读压缩文件的内容。

  使用file命令就可以显示文件的详细类型。


五、粘滞位

  关于Linux的权限问题,我们有这样三个问题

一、对于一个目录而言,如果要进入一个目录,需要什么权限

答案

  • x决定我们是否可以进入目录。
  • r决定我们是否可以对目录信息进行查看。
  • w决定是否可以在目录下新建和删除文件。

二、为什么我们创建的普通文件默认权限不是777而是664,目录文件默认权限不是777而是775

  我们在创建一个普通文件时,我们的默认权限转化为8进制就是664,当我们创建一个目录文件时,我们的默认权限是775,为什么他们的默认权限不是777

  这是因为我们系统根据不同种类的文件进行了分类,有些文件不需要的属性就不会去加,或者由其他应用程序来加,或者由用户需要时自己添加,一般我们的普通文件里是不需要进行可执行的,所以在创建普通文件时就默认没有这个选项,目录同理。

  那么按理来说,我们的普通文件的权限应该是666,目录文件权限应该是777,但是我们看到的目录文件权限是775,普通文件权限是664啊。其实这是因为Linux存在一种叫做权限掩码————umask

umask命令

功能
  查看或修改文件掩码
  新建文件夹默认权限=0666
  新建目录默认权限=0777
  但实际上你所创建的文件和目录,看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到umask的影响。假设默认权限是mask,则实际创建的出来的文件权限是mask & ~umask
格式 umask 权限值(8进制

注意将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限。超级用户默认掩码值为0022,普通用户默认为0002。

  实际上起始权限去掉umask值,就是我们的默认权限了,这里的去掉并不是单纯的减法,而是 按位与运算(&

 
 

  我们将一个普通文件全部的权限置为0,再将文件拥有者和所属组全部置为root,但是我们在普通用户下却能将root的文件给删除了

粘滞位

  给目录中的other设置的一个权限位,具有x的意义,同时也进一步对目录权限就进行特殊限定
给目录的文件,只有root或者文件的拥有者有权利进行删除,其他人一概不允许。

  使用形式

 

  如果我们想要将粘滞位删除,我们只需要将+改为-即可

 

六、权限总结

  • 目录的可执行权限是表示你可否在目录下执行命令。
  • 如果目录没有-x权限,则无法对目录执行任何命令,甚至无法cd 进入目, 即使目录仍然有-r 读限(这个地方很容易犯错,认为有读权限就可以进入目录读取目录下的文件
  • 如果目录具有-x权限,但没有-r权限,则用户可以执行命令,可以cd进入目录。但由于没有目录的读权限所以在目录下,即使可以执行ls命令,但仍然没有权限读出目录下的文档。

最新文章
WPS怎么建文件夹
在日常办公和学习中,WPS Office作为一款功能强大的办公软件套件,被广泛应用于文档处理、表格制作和幻灯片演示等领域。在使用WPS的过程中,有时我们需要创建文件夹来整理和管理文件,以便提高工作效率。那么,如何在WPS中创建文件夹呢?以
谷歌插件——关键词规划师(Google adwords)
调研关键词在上新品时不可或缺的一环,成功的找到商品利基的重要关键词,可以提升销售潜力,提升商品搜索排名和搜索量。关键词的重要性应该不需要在多加赘述,这就分享给小伙伴。Google Keywords Planner(谷歌关键词规划师),这款免费又好
重庆建设指南,零基础打造专属个性化教程
重庆搭建步骤详解,涵盖从选择域名、购买空间、安装CMS到设计界面、优化SEO等全过程。本文从零基础出发,手把手教你打造个性化,助力你的事业发展。搭建前的筹备工作重庆搭建流程重庆搭建要点1. 明确类型与功能在着手搭建之前,首要任务是
网站制作案例价格多少合适,有哪些可以让大学生自学ps、pr、office的网站值得推荐?
关于“网站制作案例价格多少”的问题,小编就整理了【4】个相关介绍“网站制作案例价格多少”的解答:有哪些可以让大学生自学ps、pr、office的网站值得推荐?  谢谢邀请回答这个问题,网上学习这三个软件的网站实在太多了,选择了几个自
VMware Workstation Pro V17.5.2.23775571 官方版免费软件全功能绿色商业破解版注册码下载
VMware Workstation Pro V17.5.2.23775571 官方版免费软件万水千山自高自痛定思痛大11. 转角,是奇遇,是机遇,还是一场灾难的开始?记忆中,转角就是回家的路,转过一个弯,再一个弯,仰头与那盏熟悉的灯火交汇,空气中弥漫熟悉的味道……
销售提成系统哪个好用?
在选择销售提成系统时,以下几个系统因其功能强大、用户体验良好而备受推荐:1、;2、Salesforce;3、Zoho ;4、HubSpot CRM;5、SAP。其中,简道云因其高度定制化、简单易用和强大的数据分析能力,成为许多企业的首选。简道云可以根据企业
一文讲清楚AI,以及AI的基础理论
科普,科普。AI大热。NVIDIA成为美股市值最高的公司,没有自动驾驶能力的汽车公司最终都成为诺基亚,AI是“人类”最后一项重要发明,机器学习、通用人工智能(AGI)、AI会取代80%的工作岗位,各种故事令人眼花缭乱。我想用一篇文章讲从头到
考研机器人工程就业方向及就业前景
随着科技的不断进步,机器人工程专业逐渐成为研究生们热衷追求的领域之一。那么,机器人工程专业的就业前景如何?未来的发展趋势又是怎样的呢?本文将从这两个方面进行探讨。机器人工程专业是一个充满挑战和机遇的领域。随着人工智能和自动
推荐12个AI免费一键生成PPT的网站【2024年最新】
制作PPT演示文稿是一项重要的技能,无论是在商务会议、教育培训还是各类演讲中。虽然PowerPoint本身提供了许多设计工具和模板,但有时我们还是需要一些额外的帮助来提升演示文稿的专业度和吸引力。幸运的是,随着人工智
相关文章
推荐文章
发表评论
0评