工信部网站备案要求,西部数码网站管理助手 v3.0,网站内容建设与管理,杭州猎头公司Linux权限的概念
Linux下有两种用户#xff1a;超级用户#xff08;root#xff09;、普通用户。
超级用户#xff1a;可以再linux系统下做任何事情#xff0c;不受限制
普通用户#xff1a;在linux下做有限的事情。
超级用户的命令提示符是“#”#xff0c;普通用户…Linux权限的概念
Linux下有两种用户超级用户root、普通用户。
超级用户可以再linux系统下做任何事情不受限制
普通用户在linux下做有限的事情。
超级用户的命令提示符是“#”普通用户的命令提示符是“$”。
命令su [用户名]
功能切换用户。
例如要从root用户切换到普通用户user则使用 su user。 要从普通用户user切换到root用户则使用 su rootroot可以省略此时系统会提示输入root用户的口令。如果
是在普通用户下切换到root用户家目录还是普通用户的家目录只是身份转变了。要退回普通用户输入exit指令或者是ctrl d热键。 如果使用su -则直接重新登录root用户此时的家目录也是root。 在root用户下变成其它用户 暂时的对一条命令进行提权sudo command 目前用adduser新建的用户没有办法执行sudo 系统不信任你除非未来将普通用户添加到系统信任的白名单里。
什么叫做权限权限就是什么事情允许被你做。1.权限认证的是身份(权限和“人”有关)身份权限认证的时候其实认证的就是人和身份是否吻合。2.权限也和事物的属性有关。
文件属性 Feb 17 1724 是文件最近修改或者创建的时间。 d和-是文件的类型文件的类型在Windows当中是通过文件名后缀来区分的在Linux系统中文件名后缀没有直接的意义。
-普通文件(文本文件、源代码还有库文件、可执行程序在Linux上都是普通文件)
d目录文件
b块设备文件(跟硬件有关系)最典型的块设备文件一般在计算机里都叫做磁盘一般的磁盘文件我们都叫做块设备文件 因为Linux下一切皆文件 /dev/vdal就是在服务器上用的那个磁盘当然这个磁盘是虚拟出来的。磁盘在读取时是整块进行读取的。
c字符设备文件在Linux下通常指的是字符设备这些字符是被最常见的像键盘显示器文件等。
显示器设备一般叫做/dev/tty。 当前这里一共有这么多的显示器文件(未全包含) 这些显示器文件tty就是终端的意思 为什么键盘、显示器叫做字符设备呢因为这些文件在进行数据的输入输出时它是按照字符为单位一个个的喂给内存当中的进程或者程序的。
p管道文件是用来通信的。 文件的属性主要是对目录文件和普通文件来说的。
r表示可读
w表示可写
x表示可执行
-对应的权限位置什么都没有换句话说也就是什么都没有
这里的“人”不是代表一个用户是代表一个角色权限身份Linux中将角色划分为三种一种是文件对应的拥有者(代表这个文件是谁的)第三种叫做文件对应的其他人(代表这个文件不属于谁)中间的叫做文件对应的所属组(代表的是比如六个用户是属于同一个组的他们可以给特定的目录或者文件设定一些组级别的约束就可以保证组内的一些人共享某些资源)。、
那root用户以及普通用户和拥有者、所属者、其他人有什么关系呢
其实root用户可以由拥有者、所属者、其他人扮演普通用户可以由拥有者、所属者、其他人扮演拥有者、所属者、其他人相当于角色或者身份而root和普通用户相当于具体的某些人。比如说校长是一个身份张三是一个人。 第一个liusiwei叫做该文件的拥有者也就是empty这个文件的拥有者是liusiwei这个用户第二个liusiwei代表文件的所属组。drwxrwxr-x第一列代表文件类型剩下的叫做文件的权限属性2、1、1先不讲到时候讲到文件系统再说。4096代表的是文件的大小单位是字节Feb 17 1724 代表文件最近的修改或者创建时间最后是文件名。
那其他人呢
当我用root账户登陆时我要访问一个文件那这个文件的所属组还有拥有者是root吗如果不是root就是其他人这个时候就有了其他人了。
去掉第一列的一个字符剩下的从左向右3、3为一组第一组是文件的属性这个属性和拥有者结合它代表的就是拥有者权限第二组是所属组的权限它就和所属组相关联第三组和其他人对应叫做其他人权限。
去掉一个文件的所有人的所有权限 root用户不受权限约束 增加一个人的权限 也可以用二进制来修改权限 把文件给另一个用户(要在root账户下使用) 把所属组权限给另一个用户(需要在root账户下使用) 把拥有者、所属组权限还给自己(需要在root账户下使用) 创建三个文件 为什么我们创建文件的默认权限是我们所看到的样子
为什么普通文件的默认权限是664
为什么目录文件的默认权限是775
1.在Linux当中默认给普通文件起始权限其实是6662.默认给目录文件的起始权限其实是777但为什么是我们图中所见到的样子的呢根本原因在于我们的Linux当中存在一个umask的东西叫做权限掩码。权限掩码:凡是在umask中出现的权限不会在最终的文件权限中出现。
最终权限 起始权限 (~umask)。
Linux权限管理
01.文件访问者的分类人
文件和文件目录的拥有者u
文件和文件目录的所属组g
其他人o
02.文件类型和访问权限事物属性 a) 文件类型
d文件夹
-普通文件
l软链接类似Windows的快捷方式
b块设备文件例如硬盘、光驱等
p管道文件
c字符设备文件例如屏幕等串口设备
s套接口文件
这里只需要记住d和-其它的后面遇到的话再详谈。
b)基本权限
i.读r/4Read对文件而言具有读取文件内容的权限对目录来说具有浏览该目录信息的权限
ii.写w/2Write对文件而言具有修改文件内容的权限对目录来说具有删除移动目录内文件的权限
iii.执行x/1execute对文件而言具有执行文件的权限对目录来说具有进入目录的权限
iv.“—”表示不具有该项权限
03.文件权限值的表示方法
a)字符表示方法 b)8进制数值表示方法 04.文件访问权限的相关设置方法
a)chmod
功能设置文件的访问权限
格式chmod [参数] 权限 文件名
常用选项R - 递归修改目录文件的权限
说明只有文件的拥有者和root才可以改变文件的权限
chmod命令权限值的格式
① 用户表示符/-权限字符
:向权限范围增加权限代号所表示的权限
-:向权限范围取消权限代号所表示的权限
:向权限范围赋予权限代号所表示的权限
用户符号
u拥有者
g拥有者同组用
o其它用户
a所有用户
chmod ax /home/abc.txt
②三位8进制数字 b)chown
功能修改文件的拥有者
格式chown [参数] 用户名 文件名 c)chgrp
功能修改文件或目录的所属组
格式chgrp [参数] 用户组名 文件名
常用选项-R 递归修改文件或目录的所属组
chgrp users /abc/f2
d)umask
功能 查看或修改文件掩码
新建文件夹默认权限0666
新建目录默认权限0777
但实际上你所创建的文件和目录看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到 umask的影响。假设默认权限是mask则实际创建的出来的文件权限是: mask ~umask
格式umask 权限值
说明将现有的存取权限减去权限掩码后即可产生建立文件时预设权限。超级用户默认掩码值为0022普通用户默认为0002。
修改权限掩码 file指令
功能说明辨识文件类型。
语法file [选项] 文件或目录...
常用选项 -c 详细显示指令执行过程便于排错或分析程序执行的情形。
-z 尝试去解读压缩文件的内容
使用 sudo分配权限
1修改/etc/sudoers 文件分配文件 格式接受权限的用户登陆的主机 执行命令的用户 命令
2使用 sudo 调用授权的命令 sudo –u 用户名 命令
目录的权限
可执行权限如果目录没有可执行权限则无法cd到目录中
可读权限如果目录没有可读权限则无法用ls等命令查看目录中的文件内容
可写权限如果目录没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件
于是问题来了~~
如果目录没换句话来讲就是只要用户具有目录的写权限用户就可以删除目录中的文件而不论这个用户是否有这个文件的写权限.。这好像不太科学啊我张三创建的一个文件凭什么被你李四可以删掉? 我们用下面的过程印证一下有可写权限则无法在目录中创建文件也无法在目录中删除文件。 为了解决这个不科学的问题, Linux引入了粘滞位的概。
粘滞位 当一个目录被设置为粘滞位(用chmod t),则该目录下的文件只能由
一、超级管理员删除
二、该目录的所有者删除
三、该文件的所有者删除
关于权限的总结
目录的可执行权限是表示你可否在目录下执行命令。
如果目录没有-x权限则无法对目录执行任何命令甚至无法cd 进入目, 即使目录仍然有-r 读权限这 个地方很容易犯错认为有读权限就可以进入目录读取目录下的文件。
而如果目录具有-x权限但没有-r权限则用户可以执行命令可以cd进入目录。但由于没有目录的读权限。
所以在目录下即使可以执行ls命令但仍然没有权限读出目录下的文档。
建立和删除带-的文件