• 深入Linux:权限管理与常用命令详解



    在这里插入图片描述

    在这里插入图片描述

    ❤️Linux常用指令

    🩷zip/unzip指令

    zip用法
    语法: zip 压缩文件.zip 目录或文件
    功能: 将目录或文件压缩成zip格式
    常用选项

    -r 递 归处理,将指定目录下的所有文件和子目录一并处理

    样例:
    **加粗样式**
    可以看见上面我们将new目录解压为了new.zip。

    unzip用法
    在这里插入图片描述
    这里我们先把new删了,然后解压之后又多了一个new,说明解压成功了,如果要解压到指定目录的话,可以在后面添加路径即可。

    🩷tar指令

    tar [-cxtzjvf] 文件与目录 .... 参数

    1. -c :建立一个压缩文件的参数指令(create 的意思);
    2. -x :解开一个压缩文件的参数指令!
    3. -t :查看 tarfile 里面的文件!
    4. -z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
    5. -j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
    6. -v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
    7. -f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
    8. -C : 解压到指定目录

    这里只需要重要掌握czxv即可。
    在这里插入图片描述
    c表示建立一个压缩文件,z表示看是否具有这个gzip的属性,f表示在之后添加解压后的文件的名称。
    如果我们需要解压的话替换一个字母即可,那就是c。
    在这里插入图片描述
    可以看见我们将new删除之后,重新解压也是成功解压上了。
    这里还需要了解一下v,v是可以让我们看到解压的过程。
    在这里插入图片描述

    由于这里我们new中没有任何信息,所以只会弹出一个new/

    🩷bc指令

    bc指令类似于电脑上的计算机
    在这里插入图片描述
    这和电脑上的计算机差远了,但是他却有一个很大的用处,就是他可以计算字符串中的值。
    在这里插入图片描述
    可以看见:利用管道加上bc可以计算字符串的值。

    🩷uname指令

    语法:uname [选项]
    功能: uname用来获取电脑和操作系统的相关信息。
    示例:
    uname什么都不加可以看见是什么操作系统。
    在这里插入图片描述
    uname -r命令用于显示当前正在运行的Linux内核版本。这个命令输出的内容通常类似于 5.15.0-25-generic,其中包含内核的版本号和其他相关信息。
    在这里插入图片描述

    uname -a可以看见Linux的所有信息。

    -a或–all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类
    型,硬件平台类型,操作系统名称

    在这里插入图片描述

    🩷shutdown指令

    语法:shutdown [选项]
    这里就不展示。

    ❤️shell命令以及原理

    ❤️什么是 Shell 命令

    Shell 命令是用户与操作系统进行交互的方式。Shell 是一个命令行解释器,它接受用户输入的命令,并将这些命令传递给操作系统进行执行。常见的 Shell 包括 Bash、Zsh、Sh、Csh 等。

    在 Shell 中,用户可以输入各种命令来执行不同的任务,如文件操作、进程管理、系统监控等。例如:

    • ls:列出目录内容
    • cd:改变当前目录
    • cp:复制文件或目录
    • mv:移动或重命名文件或目录
    • rm:删除文件或目录
    • chmod:改变文件或目录的权限
    • ps:显示当前运行的进程

    Shell 还支持编写脚本,通过编写一系列命令来自动化执行任务,从而提高工作效率。

    简单来说,shell指令就是命令行解释器(command Interpreter)。

    主要包含:

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

    对比windows GUI,我们操作windows 不是直接操作windows内核,而是通过图形接口,点击,从而完成我们的
    操作(比如进入D盘的操作,我们通常是双击D盘盘符.或者运行起来一个应用程序)。

    shell 对于Linux,有相同的作用,主要是对我们的指令进行解析,解析指令给Linux内核。反馈结果在通过内核运
    行出结果,通过shell解析给用户。

    ❤️Linux权限管理的概念

    Linux中分为两种用户:

    1. 超级用户:级用户被称为"root",也被称为系统管理员。root拥有系统中的最高权限,可以执行所有操作,包括修改系统设置、安装和删除软件、访问系统文件等。root用户对系统的操作有无限制的权限,因此在使用root用户时需要非常谨慎,以防止不慎造成系统损坏。(可以再linux系统下做任何事情,不受限制)
    2. 普通用户:在Linux系统中创建的其他用户账号。普通用户在系统中有受限的权限,不能进行对系统关键部分的操作。普通用户可以执行常规的任务,如创建、编辑和删除自己的文件、运行应用程序、访问网络和打印机等。普通用户不能修改系统级别的设置,也不能访问其他用户的文件和目录,保证系统的安全性和稳定性。(在linux下做有限的事情)

    命令su [用户名]
    功能:切换用户

    在这里插入图片描述

    可以看见我们现在就将root用户切换为了newuser用户。
    su -可以切换为超级用户。
    在这里插入图片描述

    可以看见这里我们就切换回来了。

    ❤️Linux权限管理

    🩷文件访问者的分类

    所有者:u–User
    所属组:g–Group
    其他:o–Other

    🩷文件类型的访问权限

    在这里插入图片描述

    上面是大部分的信息组成,下面重点说一下权限信息:
    在这里插入图片描述
    三个为一组,从左到右分别是所有者信息,所属组信息,其他的信息。

    文件信息:

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

    基本权限:

    1. i.读(r/4):Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限
    2. ii.写(w/2):Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限
    3. iii.执行(x/1):execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限
    4. iv.“—”表示不具有该项权限

    我们来看看下面的:
    在这里插入图片描述

    对于权限信息来说,每个信息位都是按照顺序,读—写—执行,这样的顺序来的,每个信息位要么是可以要么是不可以,所以这里我们可以用两态来表示,也就是0/1。

    在这里插入图片描述
    下面就是转换成二进制的样子,再将二进制转换成八进制在这里插入图片描述

    🩷chmod指令

    功能:设置文件的访问权限
    格式:chmod [参数] 权限 文件名
    常用选项

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

    用户表示符+/-=权限字符

    1. +:向权限范围增加权限代号所表示的权限
    2. -:向权限范围取消权限代号所表示的权限
    3. =:向权限范围赋予权限代号所表示的权限

    用户符号:

    1. u:拥有者
    2. g:拥有者同组用
    3. o:其它用户
    4. a:所有用户

    示例:
    chmod u+rwx 将所有者改为可读可写可执行
    在这里插入图片描述
    同样对于所属者的缩写g和其他的缩写o也可以执行相同的操作。

    我们也可以用八进制来实行权限的修改:
    在这里插入图片描述
    我们先将所有权限改为可读可写可执行。
    在这里插入图片描述
    用八进制进行修改,644转换为二进制刚好就是110 100 100刚好能和上面对上。

    注意:这里如果所有者和所属组是同一个的话,我们的权限如果所有者是不可读和不可写的话,是写入不了东西的,因为判断身份是按照所有者、所属组、其他进行判断的,所以这里先判断所有者成立之后,就不会继续判断了只会判断一次。

    ❤️总结

    通过这篇文章,我们深入了解了 Linux 系统中的权限管理和常用命令的使用。掌握这些基础知识对于系统管理员和开发人员来说至关重要。了解文件权限如何影响系统安全,以及如何使用各种命令高效地管理和操作文件,将帮助我们在使用 Linux 时更加自如。希望这篇文章能为你提供有价值的信息,帮助你更好地理解和使用 Linux。如果你有任何问题或想进一步探讨,欢迎在评论区留言,我们一起学习交流。

  • 相关阅读:
    shiro原理简介说明
    基于AI算法的数据库异常监测系统的设计与实现
    计算机系统大作业:Hello的一生
    nginx服务器
    详解SpringBoot的常用注解
    ModelBox姿态匹配:抖抖手动动脚勤做深呼吸
    Java项目:JSP实现的图书管理系统
    scrapy基本使用
    利用电商数据API接口上货、铺货
    Windows远程桌面连接cpolar
  • 原文地址:https://blog.csdn.net/2301_79969994/article/details/140405490