Linux —— 权限管理(1)

简介: Linux —— 权限管理(1)

一、shell命令以及运行原理

1.何为shell

        Linux和windows相比,windows是以图形化界面为交互方式,Linux则是以命令行为交互方式;我们操作windows 不是直接操作windows内核,而是通过图形接口,点击,从而完成我们的操作;Linux主要是对我们的指令进行解析,解析指令给Linux内核。反馈结果在通过内核运行出结果,通过shell解析给用户。两者都是间接的去操纵内核,虽然方式不同,但是这两种方式都被称之为"外壳程序(shell)"

1ecd1b2606ed46e9956a89f231c9802c.png

常见的shell有GUI、KDE、sh、csh、bash、tsh、zsh等、而linux中最常用的shell就是bash

2.shell命令的运行原理

1.shell是做命令行解释的,给操作系统解释,同时将结果翻译给用户;

2.shell外壳会保护操作系统,并不是用户所有的命令都会传递到操作系统,对系统有危害性的命令会被阻止;

3.shell的运行原理:(shell本身就是一个进程)创建子进程,其好处为子进程出现任何问题都不会影响父进程shell;

1ecd1b2606ed46e9956a89f231c9802c.png

二、Linux下权限问题

1.权限的概念

在Linux下用两种用户:超级用户(root:权限相当大)和普通用户(自己创建的用户);


超级用户:可以再linux系统下做任何事情,不受限制

普通用户:在linux下做有限的事情。

超级用户的命令提示符是“ # ”,普通用户的命令提示符是“ $ ”。

1ecd1b2606ed46e9956a89f231c9802c.png

2.用户之间的切换

   超级用户和普通用户的权限不同,有些时候在普通用户下不能完成的操作,就需要我们切换到超级用户下去完成。


语法:su 用户名


说明:su可让用户暂时变更登入的身份。变更时须输入所要变更的用户帐号与密码;


例如,要从root用户切换到普通用户user,则使用 su user。 要从普通用户user切换到root用户则使用 su root(root可以省略),此时系统会提示输入root用户的口令。

1ecd1b2606ed46e9956a89f231c9802c.png

当想要切换到上次的也会时,可以通过ctrl+d实现

3.普通用户的权限提升

     当在普通用户下时,如果你想要创建一个超级用户的文件,我们可以切换到超级一下创建,但是这样会比较麻烦,每次都需要输入密码;我们也可以提升一下普通用户的权限来实现刚才的操作。


语法:sudo 指令


说明:sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具。这样不仅减少了root用户的登录和管理时间,同样也提高了安全性。sudo不是对shell的一个代替,它是面向每个命令的。

1ecd1b2606ed46e9956a89f231c9802c.png

你一定会遇到下面这样的情况:

1ecd1b2606ed46e9956a89f231c9802c.png

从上图中简单的来讲,mlg和root是好兄弟,mmm和root只是朋友;root是大哥,mmm也想成为root的好兄弟;就必须把mmm添加到信任列表中。

4.普通用户如何添加到信任列表中

首先要确保当前用户时超级用户(root),只有root才能将普通用户添加的信任列表中,因为root的权限是最高的。

root用户下输入指令:vim /etc/sudoers

1ecd1b2606ed46e9956a89f231c9802c.png

1ecd1b2606ed46e9956a89f231c9802c.png

三、Linux权限管理

1.文件访问者的分类

对于用户来讲,我们可以将其分为三类:


       1.文件和文件目录的所有者:u---User(拥有者)

       2.文件和文件目录的所有者所在的组的用户:g---Group(所属组)

       3.其它用户:o---Others  

1ecd1b2606ed46e9956a89f231c9802c.png

    从上图中可以看出,A组和B组都有一份文件,假设他们都在Linux环境下做项目,小王和小李都是组内能力很强的员工,两人都希望能独挡一面;小王(user)想要在Linux下偷偷得到查看小李的文件,这是做不到的。小王并不属于B组(group),小李也是一样的;


小王和小李的文件只能是自己(user)和所属组(group),other是访问不了的;以A组为例other不仅包括了other还有B组;

1ecd1b2606ed46e9956a89f231c9802c.png

2.文件类型的访问权限

在Linux中,我们通常查看当前目录下文件的详细信息,使用ll指令,会看到文件前面有很多字符,他们都是什么意思呢?

1ecd1b2606ed46e9956a89f231c9802c.png

在上图中我们已经了解了拥有者、所属组和other的概念,接下来要重点掌握权限这个概念

1ecd1b2606ed46e9956a89f231c9802c.png

文件类型的种类:


       1. d :文件夹

       2. -  :普通文件

       3. l  :软链接(类似Windows的快捷方式)

       4. b :块设备文件(例如硬盘、光驱等)

       5. p :管道文件

       6. c :字符设备文件(例如屏幕等串口设备)

       7. s :套接口文件

1ecd1b2606ed46e9956a89f231c9802c.png

对于一个文件而言,Linux给三类人划分了权限:


       1. r :Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限

       2. w :Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限

       3. x :execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限

       4. - :表示不具有该项权限  



目录
相关文章
|
2月前
|
算法 Linux 数据安全/隐私保护
Linux权限管理:深入理解setuid、setgid、seteuid和setegid
Linux权限管理:深入理解setuid、setgid、seteuid和setegid
47 0
|
3月前
|
Ubuntu Linux Shell
【Linux操作系统】探秘Linux奥秘:用户、组、密码及权限管理的解密与实战
【Linux操作系统】探秘Linux奥秘:用户、组、密码及权限管理的解密与实战
59 0
|
1月前
|
Linux 数据安全/隐私保护
Linux权限管理
Linux权限管理是一种控制用户和程序对文件和文件夹的访问的方法。它使用三个主要的概念:所有者(owner)、群组(group)和其他(others)。 每个文件和文件夹都有一个所有者,这是创建该文件或文件夹的用户。所有者拥有最高的权限,可以对文件和文件夹进行更改、读取和删除。群组是一组用户,他们可以共享文件和文件夹的权限。其他用户是除所有者和群组以外的其他用户。 Linux使用三个主要的权限:读、写和执行。读权限允许用户查看文件或文件夹的内容,写权限允许用户更改文件或文件夹的内容,执行权限允许用户运行文件或文件夹中的程序。是一种控制用户和程序对文件和文件夹的访问的方法。它使用三个主要的概念:
14 1
|
1天前
|
Linux 数据安全/隐私保护
Linux权限管理
Linux权限管理是一种控制用户和程序对文件和文件夹的访问的方法。它使用三个主要的概念:所有者(owner)、群组(group)和其他(others)。 每个文件和文件夹都有一个所有者,这是创建该文件或文件夹的用户。所有者拥有最高的权限,可以对文件和文件夹进行更改、读取和删除。群组是一组用户,他们可以共享文件和文件夹的权限。其他用户是除所有者和群组以外的其他用户。 Linux使用三个主要的权限:读、写和执行。读权限允许用户查看文件或文件夹的内容,写权限允许用户更改文件或文件夹的内容,执行权限允许用户运行文件或文件夹中的程序。是一种控制用户和程序对文件和文件夹的访问的方法。它使用三个主要的概念:
6 0
|
2天前
|
Linux 数据安全/隐私保护
Linux权限管理
Linux权限管理是一种控制用户和程序对文件和文件夹的访问的方法。它使用三个主要的概念:所有者(owner)、群组(group)和其他(others)。 每个文件和文件夹都有一个所有者,这是创建该文件或文件夹的用户。所有者拥有最高的权限,可以对文件和文件夹进行更改、读取和删除。群组是一组用户,他们可以共享文件和文件夹的权限。其他用户是除所有者和群组以外的其他用户。 Linux使用三个主要的权限:读、写和执行。读权限允许用户查看文件或文件夹的内容,写权限允许用户更改文件或文件夹的内容,执行权限允许用户运行文件或文件夹中的程序。是一种控制用户和程序对文件和文件夹的访问的方法。它使用三个主要的概念:
13 4
|
4月前
|
Unix Shell Linux
在Linux和类Unix系统中,Shell提供了多种命令用于用户和权限管理
在Linux和类Unix系统中,Shell提供了多种命令用于用户和权限管理
36 4
|
11天前
|
Linux 数据安全/隐私保护
【Linux笔记】用户和权限管理基本命令介绍
【Linux笔记】用户和权限管理基本命令介绍
|
15天前
|
安全 Unix Linux
深入理解 Linux 文件系统的权限管理
【4月更文挑战第22天】 在多用户操作系统如Linux中,文件系统权限管理是维护系统安全与数据完整性的基石。本文将深入探讨Linux下基于POSIX标准的权限模型,包括用户(User)、组(Group)和其他(Others)三个层级的读(Read)、写(Write)和执行(Execute)权限。文章旨在为读者提供一套全面的权限管理策略,涵盖基础命令操作、权限掩码设置以及特殊权限位的概念和应用,以帮助系统管理员或开发人员在日常工作中实现对文件系统访问控制的精细管理。
|
2月前
|
安全 Linux Shell
linux用户与权限管理
在Linux中,用户和权限管理确保系统安全。创建用户用`useradd`或`adduser`,删除用户加`-r`参数用`userdel`。修改用户属性用`usermod`,密码管理用`passwd`。组管理涉及`groupadd`(创建)、`groupdel`(删除)和`usermod`(添加用户至组)。权限用`chmod`调整,`chown`和`chgrp`改变所有权和组。`root`用户具有最高权限。这些工具支持安全的资源访问控制。
16 2
|
2月前
|
安全 Linux 数据安全/隐私保护
深入理解Linux文件系统的权限管理
在Linux操作系统中,文件系统权限管理是维护系统安全与数据完整性的基石。本文将深入探讨Linux文件系统中的权限模型,包括用户、组和其他三个层级的读、写、执行权限。通过分析权限位的具体含义和实际作用,文章旨在提供一套系统的方法论,以帮助系统管理员和开发人员更有效地配置和管理文件权限。同时,我们将通过实例展示如何使用命令行工具和配置文件来修改和查看文件权限,以及如何利用权限管理来增强系统的安全性。