【Linux】权限管理

2023-11-09


1. shell命令以及运行原理

Linux严格意义上说的是一个操作系统,我们称之为“核心(kernel)“ ,但我们一般用户,不能直接使用kernel。而是通过kernel的“外壳”程序,也就是所谓的shell,来与kernel沟通。

从技术角度, Shell的最简单定义:命令行解释器(command Interpreter)主要包含:

1. 将使用者的命令翻译给核心(kernel)处理。
2. 将核心的处理结果翻译给使用者

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

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

实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核。当我们输入一些非法指令时候,shell会拒绝执行,所以它可以帮助我们保护操作系统。其实一般而言,shell本身并不执行对应的指令。而是通过派生子进程的方式执行用户输入的指令。这么做其实也是为了保护shell。其实Windows的图形化界面。本质上也是一种外壳程序。

在这里插入图片描述
所以综上所述,shell存在的意义有两点:

  • 帮忙进行命令行传递和返回结果
  • 保护操作系统

2. Linux权限的概念

Linux下有两种用户:超级用户(root)和普通用户。那么,超级用户和普通用户分别又有什么不同,他们之间又有着什么样的关系呢?

超级用户: 可以再linux系统下做任何事情,不受限制
普通用户: 在linux下做有限的事情。
超级用户的命令提示符是“#”,普通用户的命令提示符是“$”

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Linux】权限管理 的相关文章

  • C 语言的符号表

    我目前正在开发一种执行模式匹配的静态分析工具 我在用Flex https github com westes flex生成词法分析器 我编写了代码来管理符号表 我不太有经验C 所以我决定将符号表实现为线性链表 include
  • 尽管 if 语句,Visual Studio 仍尝试包含 Linux 标头

    我正在尝试创建一个强大的头文件 无需更改即可在 Windows 和 Linux 上进行编译 为此 我的包含内容中有一个 if 语句 如下所示 if defined WINDOWS include
  • 如何根据标签将单个 XML 文件拆分为多个

    我有一个带有标签的 XML 文件 我想像这样分割文件
  • Windows 中的蓝牙 AVRCP 命令会触发哪些事件

    可以这么说 只是在做一些高级侦察 对于我的潘多拉客户 Elpis http elpis adamhaile net 我支持全局媒体键 键盘上的 MediaPlayPause MediaNext 等 并且我希望能够支持AVRCP http e
  • 并行运行 shell 脚本

    我有一个 shell 脚本 打乱大型文本文件 600 万行和 6 列 根据第一列对文件进行排序 输出 1000 个文件 所以伪代码看起来像这样 file1 sh bin bash for i in seq 1 1000 do Generat
  • Windows 10 上的 LibPNG 构建问题

    我试图在 Windows 10 上构建 libpng 以获取 win32 二进制文件 但我认为有一个与 awk 解析带有 CRLF 行结尾的文件相关的问题 我尝试使用 dos2unix 命令转换文件 但没有成功 结果相同 在 make 命令
  • 如何使用waf构建共享库?

    我想使用构建一个共享库waf http code google com p waf 因为它看起来比 GNU 自动工具更容易 更简洁 到目前为止 我实际上有几个与我开始编写的 wscript 有关的问题 VERSION 0 0 1 APPNA
  • 使用管理员权限打开cmd(Windows 10)

    我有自己的 python 脚本来管理我的计算机上的 IP 地址 它主要在命令行 Windows 10 中执行netsh命令 您必须具有管理员权限 这是我自己的计算机 我是管理员 运行脚本时我已经使用管理员类型的用户 Adrian 登录 我无
  • 如何在 Linux 中使用 C 语言使用共享内存

    我的一个项目有点问题 我一直在试图找到一个有据可查的使用共享内存的例子fork 但没有成功 基本上情况是 当用户启动程序时 我需要在共享内存中存储两个值 当前路径这是一个char and a 文件名这也是char 根据命令参数 启动一个新进
  • 为什么opencv videowriter这么慢?

    你好 stackoverflow 社区 我有一个棘手的问题 我需要你的帮助来了解这里发生了什么 我的程序从视频采集卡 Blackmagic 捕获帧 到目前为止 它工作得很好 同时我用 opencv cv imshow 显示捕获的图像 它也工
  • 使用 python 脚本更改 shell 中的工作目录

    我想实现一个用户态命令 它将采用其参数之一 路径 并将目录更改为该目录 程序完成后 我希望 shell 位于该目录中 所以我想实施cd命令 但需要外部程序 可以在 python 脚本中完成还是我必须编写 bash 包装器 Example t
  • 错误:“rjags”的包或命名空间加载失败

    在终端的 conda 环境之一中 我能够成功安装包 rjags 但是 当我在该环境中运行 R 并运行库 rjags 时 出现以下错误 加载所需的包 coda 错误 rjags 的包或命名空间加载失败 rjags 的 loadNamespac
  • 如何查找哪个 Yocto 项目配方填充图像根文件系统上的特定文件

    我经常与 Yocto 项目合作 一个常见的挑战是确定文件为何 或来自什么配方 包含在 rootfs 中 这有望从构建系统的环境 日志和元数据中得出 理想情况下 一组命令将允许将文件链接回源 即配方 我通常的策略是对元数据执行搜索 例如gre
  • 如何在 *nix 中登录时运行脚本?

    我知道我曾经知道如何做到这一点 但是 如何在 unix 中登录时运行脚本 bash 可以 From 维基百科 Bash http en wikipedia org wiki Bash 28Unix shell 29 当 Bash 启动时 它
  • 使用 gdb 调试 Linux 内核模块

    我想知道 API 在内核模块 中返回什么 从几种形式可以知道 这并不是那么简单 我们需要加载符号表来调试内核模块 所以我所做的就是 1 尝试找到内核模块的 text bss和 data段地址 2 在 gdb 中使用 add symbol f
  • 如何让 Node.js 作为后台进程运行并且永不死掉?

    我通过 putty SSH 连接到 linux 服务器 我尝试将其作为后台进程运行 如下所示 node server js 然而 2 5 小时后 终端变得不活动 进程终止 即使终端断开连接 我是否也可以使进程保持活动状态 Edit 1 事实
  • Windows:更改与文件类型关联的应用程序的名称/图标

    我想将 Windows 中的文件类型与特定应用程序相关联 但我需要这样做 以便当用户打开 打开方式 菜单时 列表中应用程序的名称和图标是针对该文件类型自定义的 即 不仅仅是可执行文件的名称和图标 这是因为该二进制文件是一个通用二进制文件 可
  • Windows 上最快的屏幕捕获方法

    我想为Windows平台编写一个截屏程序 但不确定如何捕获屏幕 我知道的唯一方法是使用 GDI 但我很好奇是否还有其他方法可以实现此目的 如果有的话 哪种方法产生的开销最小 速度是首要任务 截屏程序将用于录制游戏镜头 不过 如果这确实缩小了
  • 使用自定义堆的类似 malloc 的函数

    如果我希望使用自定义预分配堆构造类似 malloc 的功能 那么 C 中最好的方法是什么 我的具体问题是 我有一个可映射 类似内存 的设备 已将其放入我的地址空间中 但我需要获得一种更灵活的方式来使用该内存来存储将随着时间的推移分配和释放的
  • 如果我使用客户端计算机上未安装的字体,会发生什么情况?

    有人可以告诉我 如果我在 WinForms 应用程序中使用目标计算机上不可用的字体 会发生什么情况 它是否使用同一系列的字体 只是 Sans Serif 还是其他字体 您的应用程序将回退到 Segoe UI Tahoma 然后是 MS Sa

随机推荐

  • 对华为路由器配置DHCP实现IP地址的自动分配

    目录 0 题目 1 首先按照题意建立如下拓扑图 并划分子网 2 为路由器AR1进行基础设置 1 将系统名称改为r1 2 设置超时时长为0 永不超时 3 为路由器AR1两个接口配置IP地址 1 GE 0 0 0 2 GE 0 0 1 3 检查
  • 处理不同的请求--设置content-type

    content type的作用 在http协议中 content type用来告诉对方本次传输的数据的类型是什么 在请求头中设置content type来告诉服务器 本次请求携带的数据是什么类型的 在响应头中设置content type来告
  • 写在28岁,回看3年前的自己,庆幸当时入了软件测试这行

    为什么会学习软件测试 已经28岁了 算一下快过去3年了 刚毕业那会工作了一年 因为自己当时很迷茫 觉得自己挺废的 所以就没去工作就一直在家 家里固定每个月给点生活费 但还是没钱 但家里给了我一套房子 出门300米左右就是地铁站 自己一个人住
  • Java框架--Spring(轻量级容器框架)(入门+ioc)

    目录 一 概念 海绵hong对于ioc的理解 二 spring快速入门 1 最基本的spring实例 1 1javabean类 1 2beans xml 1 3 ioc容器使用 2 spring 容器结构 机制 2 1beanDefinit
  • kmalloc使用相关

    Kmalloc内存分配和malloc相似 除非被阻塞否则他执行的速度非常快 而且不对获得空间清零 Flags参数 include
  • swin-transformer训练自己的数据集<自留>

    使用swin transformer训练自己的数据集 lt 自留 gt 前期准备 数据处理 标注数据集 一 结构目录 二 要修改的地方 三 开始训练 四 训练过程结果 前期准备 数据处理 标注数据集 LabelMe gt COCO Labe
  • 24岁,月入15000:真正优秀的人,都在做一件事

    昨天 一位经常来转载我文章的编辑朋友找我聊了会 聊完之后 很想写篇文章来谈谈我内心的感受 他告诉我 下个月就要去深圳了 那边有一家公司希望他过去 毕业两年 24岁 月收入稳定在15000 用 年轻有为 来形容他 我觉得并不为过 和他相比起来
  • 服务器系统水星无线网卡,水星设置远程服务器

    水星设置远程服务器 内容精选 换一换 本章节介绍Dubbo框架下DTM使用的demo 使得Dubbo框架下的项目可以通过TCC模式快速接入DTM 其中 Dubbo的样例代码在导入样例工程过程中准备的dtm demo的dtm dubbo项目中
  • Tomcat安装及基本使用

    1 什么是Web服务器 Web服务器是一种应用程序 软件 它封装了对HTTP协议的操作 使得开发人员无需直接操作协议 从而简化了Web开发 其主要功能是提供网上信息浏览服务 Web服务器安装在服务器端 我们可以将自己编写的Web项目部署到W
  • 概率与统计之一 标准差(standard deviation)和标准误(standard error)

    标准差和标准误差 标准差 standard deviation 和标准误差 standard error of mean 根据国际标准化组织 ISO 的定义 标准差 是方差 2的正平方根 而方差是随机变量期望的二次偏差的期望 什么是标准误差
  • 使用Scrapy爬取励志名句————祝万千学子高考顺利

    6月7日 2021年全国高考正式拉开大幕 1078万考生将赶赴考场 迎接人生路上的一次大考 在此 我将使用Scrapy爬取一些励志名句献给广大的高考考生 祝他们高考顺利 学业有成 流程分析 创建项目 创建爬虫程序 进行初始化设置 分析网页并
  • java oj 1035-1045

    1037 四则运算 Switch总是忘记break 输入一个字符 String s input next char ch s charAt 0 除数是0 用 s2 1e 10 即10的 10次方 判断 if Math abs b lt 1e
  • 激光雷达远距离灰尘扬尘烟雾粉尘检测

    最近对激光检测粉尘产生了一点兴趣 于是使用已有的雷达做了检测思路的验证 检测范围可以和雷达的扫描范围一致 约为 0 260m 验证过程使用面粉抛洒 场景如下 红色框就是粉尘的位置 俯视图如下 检测结果如下 绿色范围是检测算法自动框出来的结果
  • 升级Ubuntu18.04的linux kernel(修复小米游戏本的触摸板驱动问题)

    前言 前一段时间换电脑 置换了小米的游戏本 装了ubuntu18 04的系统 demesg发现一直报一个关于i2c接口的错误 473 518316 i2c hid i2c CUST0001 00 i2c hid get input inco
  • 小程序协议篇

    前言 采用的是uniapp的开发框架 引入了mp html的插件做富文本显示插件 操作 打开 富文本编辑 复制粘贴对应的协议文本 直接从word文档或者在线文档复制出来 要带样式的 点击F12或者右键点击检查 进入到Console下面 输入
  • python实现基数排序

    思路 先比较个位数 得到一个新的序列 再按照十位数排序 在上一个新序列的基础上又得到 一个新的序列 然后再按照百位数排序 在上一个新序列的基础上又得到一新的序列 只到排到所有数中的最高位 依次输出列表 排序结束 栗子 例 li 12 90
  • LeetCode 热题 HOT 100:二叉树专题

    LeetCode 热题 HOT 100 https leetcode cn problem list 2cktkvj 文章目录 94 二叉树的中序遍历 递归与非递归 补充 144 二叉树的前序遍历 递归与非递归 补充 145 二叉树的后序遍
  • Spring的Bean生命周期+bean注入+项目启动时正确姿势初始化数据的五种方式

    Spring的Bean生命周期 在Java中万物皆对象 既然是一个实例对象 那么就会有生命历程 被创建 gt 被使用 gt 被销毁 但是这说的太过于简洁了 以至于我们根本不能从本质上认清它具体的执行流程 生命历程 今天就来简单了解下Spri
  • 模型微调fine tune的注意事项以及技巧

    深度学习笔记 一 模型微调fine tune 熊宝宝爱学习的博客 CSDN博客
  • 【Linux】权限管理

    文章目录 1 shell命令以及运行原理 2 Linux权限的概念 3 Linux权限管理 3 1 文件访问者的分类 3 2 文件类型和访问权限 文件类型 file指令 文件权限 4 文件访问权限的设置 4 1 chmod指令 4 2 ch