12个 网站模板 管理,品牌百度网站建设,有什么网站可以免费看电影,人人秀h5制作软件下载权限 Linux权限的概念用户之间的切换 Linux权限管理文件权限操作文件的人Linux文件默认权限的设置权限掩码 所属组/其他删除拥有者创建的文件文件拥有者、所属组的修改修改文件拥有者修改文件所属组一次性修改拥有者和所属组 目录的执行权限 Linux权限的概念
首先#xff0c;… 权限 Linux权限的概念用户之间的切换 Linux权限管理文件权限操作文件的人Linux文件默认权限的设置权限掩码 所属组/其他删除拥有者创建的文件文件拥有者、所属组的修改修改文件拥有者修改文件所属组一次性修改拥有者和所属组 目录的执行权限 Linux权限的概念
首先我们在登录的时候可以超级用户(root)身份登录也可以普通用户身份登录超级用户的命令提示符是“#”普通用户的命令提示符是“$”。 超级用户可以再linux系统下做任何事情不受限制 普通用户在linux下做有限的事情。
root就相当于是游戏里的上帝想干啥就干啥干什么事情不需要经过他人同意。
用户之间的切换
想要从一个用户下切换为另一个用户就可以su 用户名
例如要从root用户切换到普通用户user则使用 su user。 要从普通用户user切换到root用户则使用 su rootroot可以省略此时系统会提示输入root用户的密码。
如果密码输错就无法切换输入密码的时候是不会显示的和设置普通用户的密码一样。 从普通用户切到root下 从root且到普通用户不需要输入密码 如果你是从一个用户已经转入到另一个用户了但是你想要再转回去的话就不建议再用su了因为这样会导致产生多个进程通俗点来说就是开了好多个用户。 想要直接退回去的话可以直接输入exit 或者用快捷键 ctrl d (这个不会显示成ctrl d)。 这里可以看到有好多个进程而且都是重复的所以说想要回到原来的用户的话就直接 ctrl d 就可以了。 理解权限一件事是否允许被特定的人做。
权限 人 事物属性
Linux权限管理
文件权限
记一个东西linux下一切皆文件。像普通文件目录文件块设备文件链接文件字符设备文件管道文件等等都是文件。
而linux系统中怎么区分这些属性的呢
首先linux系统中不以文件后缀作为区分文件类型的方式。当我们用 ls -l或ll 展示文件信息时会在文件最前面看到一堆的字母和-。 这些字母和-有特定的意思。 那后面的rw-什么的代表什么
先看下面的解释 文件本身具有天然的权限属性读® 写(w) 执行(x)。这三个属性限定该文件是否能够读取是否能够写入是否能够执行。
简单画个表格 这里就讲一下目录文件的x大家可以想象你自己再windows操作系统下双击一个文件夹会发生什么事情就是进入了该文件夹如果你双击了一款游戏这款游戏就执行起来了那么把双击游戏的执行类推到双击文件夹上那么就可以看出双击文件夹就是执行该文件夹也就是进入了该文件夹文件夹也就是目录。那么再类推到linux系统上对于目录来说x代表执行那么是否有这个权力就代表你是否能够进入这个目录。
这样的话再看这张图就明白了
但是为啥有三个
操作文件的人
对于操作文件的人可以分为三类拥有者user所属组group其他人other。
拥有者对于一个文件来说这个文件是被谁拥有的这个拥有的人就是拥有者。
所属组举个栗子为了方便管理如果我有一个小组小组内有 20 个用户而这 20 位用户对同一个文件的权限是一致的那我是一位用户一位用户地分配权限方便还是把 20 位用户加入一个组中然后给这个组分配权限方便呢不言而喻一定是给一个用户组分配权限更加方便。
其他人就是除了拥有者和所属组之外的人了。
而对文件进行读、写、执行操作的是人人具有是否被允许干某件事这个属性。这样组合起来就是权限。 字母的意思就是有而 - 的意思就是没有
再往后面看两个yjy分别代表的是该文件的拥有者和所属组。除了拥有者和所属组就是其他用户不需要再搞一个标志了。
再往后就是文件大小创建时间和文件名了。
当然上面的hello.c文件不可能执行所以默认就都没有执行的权限。 但是可以改权限 上面的操作就是给uuser添加上执行的权限。虽然文件变成绿色了但是没什么用因为hello.c无法执行。
同样的我们也可以给g和o赋权。 也可以剥去权力 还可以统一赋权和去权。 每个用户对文件权限位置是确定的而且是两态的要么有权要么无权。 我们可以用1来表示有权用0来表示无权。 举个栗子rw- 就是 110。 这样的话我们就可以用一种新的修改权限的方式三位8进制数字。 八进制数 777 对应到二进制下就是 111 111 111那么就代表所有的权限都有了。 八进制数 000 对应二进制就是 000 000 000就是都没有。 八进制数 666 转换成二进制数就是 110 110 110就是读写有执行没有。
就不再多举例子了都一个意思数不一样对应权限不一样。
Linux文件默认权限的设置
为什么创建文件会有默认的权限
权限掩码
先不说概念先看看长啥样 umask这个指令可以看到权限掩码是多少。 第一个零意思是说这个数是八进制数去掉它就剩002了八进制的002对应二进制就是000 000 010这就是权限掩码有什么用
还是八进制这里给出一个非官方的概念起始权限。
普通文件的起始权限是666对应二进制就是110 110 110 目录文件的起始权限是777对应二进制就是111 111 111。
凡是权限掩码中出现1的位置对应到起始权限中的位置处如果为1就变为0如果为0就不变。
那么默认的权限掩码都是0002也就是000 000 010这里去掉普通文件的那个1就变成了 110 110 100就是664对应到字母就是 rw- rw- r–去掉目录文件里的那个1就变成了111 111 101就是775对应到字母就是 rwx rwx r-x。
那用二进制怎么算呢 先对权限掩码(mask)取反得到(~mask)然后再将这个值和起始权限与一下。那么 文件的默认权限 起始权限 ~mask)
看图 新创建的普通文件的权限和目录文件的权限和上面推出来的是一模一样的。
权限掩码是可以修改的但是极其不建议因为这些默认的权限是他人通过经验总结出来的若修改未必有人家设计的好但是硬要修改的话也可以umask 后面跟上八进制数就行但是这样修改之在本次对话框能有效也就是本次登录推出之后就变回原来的值了如果想永久修改就需要搞配置文件但还是建议不要永久修改万一再想改回默认状态但是你忘了默认的值那就恶心了。
所属组/其他删除拥有者创建的文件 这样以其他人的身份删除不属于这个人的文件这样的操作对于拥有者来说非常的危险因为当这个文件比较重要时如果被其他人删除了那都不知道这个人是谁就出大问题了。怎样解决呢
若目录本身对other有w权限other可以删掉任何目录下的文件 若目录本身对other没有w权限则other不可以删掉任何文件。
但是如果我们想要other可以再特定目录下创建文件并写入但是不想让任何人删除掉自己的文件怎么做
这时候要引出一个新概念叫粘滞位只对目录文件有效一般是限制other权限的。
设置方法chmod ot dir 设置好之后other就无法删除文件了但是可以创建文件。 将目录的other赋予w属性。 以other在该目录下创建文件可以。 对于设置了粘滞位的目录在该目录下只能文件拥有者或root可以删文件其他人不能删所属组也不能。 有时用户多的情况下或系统会有很多临时数据所有临时文件放在系统的/tmp下这时就需要把所有权限放开但是只想让文件拥有者自己删除文件就需要设置粘滞位。
若想去除粘滞位: chmod o-t filename
文件拥有者、所属组的修改
下面的这两个操作需要以root的身份去做不然都是不允许的。 你把一个东西交给别人需要经过别人的允许。但是如果你是上帝视角把东西给别人别人什么话也不能说不服也得憋着。 所以要么切换到root要么sudo 行为。
修改文件拥有者
普通用户不允许 法一sudo 法二切换到root 修改文件所属组 但是如果文件拥有者是你那么你可以直接将所属组改为你自己。
一次性修改拥有者和所属组 目录的执行权限
最后要再强调下这个目录的执行权限决定的是是否能够进入该目录这个我开头也细讲了这里就不多说为什么了。
当o对目录没有了x会发生什么 无x有r 可以看到文件名但是看不到文件的详细信息。 无x有w 想往进写文件不行 想删掉里面的文件也不行。 如果想编写目录下的文件时会保存不了保存了就无法退出不保存才能退出。 到此结束。。