Linux——权限

目录

1.Shell运行原理——外壳程序

2.权限

2.1对人操作

2.2对角色和文件操作

3.常见权限问题


1.Shell运行原理——外壳程序

首先我们要明确一个概念,我们不是直接访问操作系统。为什么?

对于Windows我们是使用GUI进行操作,Shell对于Linux是指令操作。

        1.'人'不善于使用操作系统

        2.如果让人直接访问操作系统

                a.操作成本特别高        b.人会犯错,会带来不安全因素

        所以,系统设计者不会让人直接操作 操作系统。

那么我是如何访问操作系统的呢?那么 图形化界面&&指令操作究竟是什么东西?

        他们是操作系统提供的外壳程序。

外壳程序的意义:

  •  是用户和操作系统交互的软件层
  • 可以在一定程度,起到保护操作系统的作用

Shell:命令解释器

  • 将使用者的命令翻译给核心(kernel)处理
  • 同时,将核心的处理结果翻译给使用者。

——查看自己的外壳程序:

echo $BASH

2.权限

2.1对人操作

Linux下有两种用户:超级用户(root)、普通用户

  • root:只有一个,具有Linux下的最高权限
  • 普通用户:可以有多个,要受权限的约束

Linux下可以同时存在多个用户,Linux是一个多用户操作系统

root< --切换-- >普通用户,潜台词就是在切换我当前的权限

用户如何进行身份互换:

  • 普通用户切换root用户

$su -        //用户重新登录,路径变

Password:root密码

或者

$su        //临时登录,路径不变

Password:root密码

 

  • root切换普通用户

$su 用户名

  • 普通用户切换另一个用户

$su 另一个用户

Password:另一个用户的密码

  •  回退上个身份

logout或者crtl+d

2.2对角色和文件操作

权限是什么?

针对人的,事物的基本属性决定权限相关的概念——>文件权限——>一件事情是否允许被你'做'

权限的核心:人+事物属性

 

 ll下显示的第一列的第一个字符,表明该文件的文件类型

d:目录

-:普通文件

p:管道文件

b:块设备

c:字符设备

l:链接文件

.....

Linux下,不以文件后缀来区分文件类型


人:

  • 拥有者:文件属于谁
  • 所属组:文件属于哪一个组
  • other:不属于上面两种的任何一个,就是other

如何表述一个文件的权限呢?

从3个身份出发(拥有者,所属组,other),r-可读,w-可写,x-可执行

上图文件的表述就是:拥有者可读可写可执行,所属组可读可写可执行,other可读可执行的目录文件。

如何操作权限?

1.upo+-

  • 修改文件拥有者的权限

chmod u+r/w/x filename                 #添加权限

chmod u-r/w/x filename                  #删除权限

  •  修改文件所属组的权限

chmod g+r/w/x filename                 #添加权限

chmod g-r/w/x filename                  #删除权限

  • 修改other的权限 

chmod o+r/w/x filename                 #添加权限

chmod o-r/w/x filename                  #删除权限

 

  • 修改所有身份的权限 

chmod a+r/w/x filename                 #添加权限

chmod a-r/w/x filename                  #删除权限

 

2.八进制修改

3.修改文件所属用户/组

修改文件所属用户/组,需要进入root用户强制修改。或者在chown/chgrp命令前加sudo,以root的权限级别来执行。

如果用户想执行sudo,提升权限,需要该用户在信任列表里面,才可以执行sudo,添加用户到信任列表 是需要root身份的!

  • 修改文件拥有者

root下:

chown 拥有者 filename

普通用户下:

sudo chown 拥有者 filename

  • 修改文件所属组

 root下:

chgrp 所属组 filename

普通用户下:

sudo chgrp 所属组 filename

 

3.常见权限问题

1.目录权限

进入一个目录,需要什么权限?

需要X权限

R权限:是否允许查看目录下文件

W权限:是否允许在目录下创建文件或目录

我们来验证一下:

2.umask

为何我们创建一个目录或者文件,默认权限是你所看到的样子?

linux默认:

一个目录被创建,起始权限是从:777

一个普通文件被创建,起始权限是:666

最终权限=起始权限&(~umask)

凡是在umask中出现的权限,都不应该在最终权限中出现!  

3.粘滞位

是否能删除一个文件,取决于是否拥有当前目录的写权限

1.当多个用户共享一个目录,需要在该目录下,进行读写,创建删除文件

2.但是自己只能删除自己的,而不能删除别人的(w:可以互删的,但是不满足条件)

——>出现粘滞位(只能给目录设置)

 chmod +t  dir_name        #添加粘滞位

粘滞位一般是谁设置,谁才能取消(root除外)

猜你喜欢

转载自blog.csdn.net/bang___bang_/article/details/131746757