Linux的权限(1)

目录

操作系统的"外壳"程序

外壳程序是什么?

为什么存在外壳程序?

外壳程序怎么运行操作?

权限

什么是权限?

权限的本质?

Linux中的(人)用户权限?

su和su -的区别

sudo的指令提权 

Linux中的角色权限?

Linux中的(事物属性)文件权限?

命令扩展


操作系统的"外壳"程序

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

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

  • 将使用者的命令翻译给核心(kernel)处理。
  • 同时,将核心的处理结果翻译给使用者。
  • 大部分命令在磁盘当中,是系统当中的一个可执行文件。
  • 命令行提示符其实是一个字符串。包括我们的指令从键盘输入到终端界面都是字符串。
  • 用户执行某种功能的时候,不是直接让操作系统执行对应的指令的,而是先交给外壳程序
  • windows的外壳程序就是图形化界面
  • windows GUI,我们操作windows 不是直接操作windows内核,而是通过图形接口,点击,从而完成我们的操作(比如进入D盘的操作,我们通常是双击D盘盘符.或者运行起来一个应用程序)。
  • Linux的外壳程序就是命令行提示符
  • shell 对于Linux,有相同的作用,主要是对我们的指令进行解析,解析指令给Linux内核。反馈结果在通过内核运行出结果,通过shell解析给用户。

如何理解?为什么不能直接使用kernel? 

 

外壳程序是什么?

 介于用户和操作系统之间的软件。如Linux的命令行解释器,Windows的图形化界面。

为什么存在外壳程序?

每个用户写的程序和访问的指令都是存在风险的,我们必须去有效规避。

  • 用户不善于和OS之间交互
  • shell外壳的存在,可以对请求进行合法性检查,变相的保护OS

外壳程序怎么运行操作?

(可能存在用户一直非法访问)可以安排一个实习生。失败都在实习生,不接受任何失败的影响。

创建子进程,让子进程进行执行。

bash基本都会给我们创建一个子进程帮助用户进行命令行解释。bash只需要等待即可

bash/sh相当于媒婆中的王婆/李婆/张婆中的一员。

权限

什么是权限?

权限是通过一定的条件,拦住一部分人,给另外一部分人权利,来访问某种资源。

(存在有无/能否的问题!)如vip ,小区门禁等等。

权限的本质?

  • 权限1:担任的角色有关(人):若你是腾讯会员的vip,拥有vip的资源是因为你是腾讯会员vip,并不是因为是你。 Linux中【具体的角色】是需要【具体的人】来扮演的!!
  • 权限2:事务的属性有关:你并不能在腾讯刷题,或者在抖音刷题,这是因为某种权限对应某种功能(事物的属性)。

权限=角色(人)+事物的属性

Linux中的(人)用户权限?

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

  • 超级用户:可以再linux系统下做任何事情,不受限制。
  • 普通用户:在linux下做有限的事情。
  • 超级用户的命令提示符是“#”,普通用户的命令提示符是“$”
  • 转化:su 【用户名】    su -  【用户名】 (直接转超级用户不需要输入用户名)
  • ctrl+d:可以回退到转化前
  • 普通用户和root密码不要设置成一样的!

【普通用户转超级用户】

【超级用户转普通用户】 

【普通用户转普通用户】 

su和su -的区别

su是在原本登录基础上切换。

su - 是重新登录。

建议用:su -

 

sudo的指令提权 

sudo可以让普通用户拥有以root权限去执行命令。

(用户不想直接变成root,但是想以root的身份执行一个工作)

sudo:输入的密码是普通用户的密码!

(在vim再解决报错)

Linux中的角色权限?

  • 文件和文件目录的所有者:u---User(拥有者)
  • 文件和文件目录的所有者所在的组的用户:g---Group (所属组)
  • 其它用户:o---Others (其他人)

 

为什么会有所属组的存在?

Linux具有组的概念,主要是在多人协作的时候,更好的进行权限的管理!

Linux中的(事物属性)文件权限?

下篇博客。

命令扩展

◆ 安装和登录命令:
login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last;
◆ 文件处理命令:
file、mkdir、grep、dd、find、mv、ls、diff、cat、ln;
◆ 系统管理相关命令:
df、top、free、quota、at、lp、adduser、groupadd、kill、crontab;
◆ 网络操作命令:
ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup;
◆ 系统安全相关命令:
passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who;
◆ 其它命令:
tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。

🙂感谢大家的阅读,若有错误和不足,欢迎指正!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/345564.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大数据赋能电竞出海企业发展

近几年电竞行业发展迅速,我国单2022年新增近4万家电竞相关企业,竞争十分激烈。中国电竞市场规模在全球占比19%左右,海外有巨大的增量市场,特别是东南亚、中南亚和拉丁美洲是电竞市场增长最快的地区,在2020至2025年期间…

客户端请求服务器的步骤

当我们在浏览器地址栏输入’http://www.xxx.com/api/xxx"时,客户端是如何找到服务器并发送请求的? 1.先找到服务器 a.检测浏览器缓存有没有缓存该域名对应的IP地址,有则通过IP地址取找服务器。 b.检测本地的hosts文件,是否有…

inflate流程分析

一.inflate的三参数重载方法else里面逻辑 我们先看到setContentView里面的inflate的调用链: public View inflate(LayoutRes int resource, Nullable ViewGroup root) {return inflate(resource, root, root ! null);}public View inflate(LayoutRes int resource…

Linux下安装redis

Linux下安装redis Linux下安装redis1. 下载Redis2. 解压并安装Redis2.1 解压2.2 移动redis目录2.3 编译2.4 安装 3. 启动redis4. redis.conf配置文件5. 一些错误以及常用命令5.1 查看Redis是否正在运行5.1.1、采取查看进程方式5.1.2、采取端口监听查看方式 5.2 redis-cli5.3 远…

Java项目:04 好物分享管理系统

作者主页:舒克日记 简介:Java领域优质创作者、Java项目、学习资料、技术互助 文中获取源码 项目介绍 好物分享平台 项目是单体ssm好物分享平台,包括用户平台及后台管理系统, 前台系统包含首页门户、好物推荐、好物搜索、好物展示…

BikeDNA(七)外在分析:OSM 与参考数据的比较1

BikeDNA(七)外在分析:OSM 与参考数据的比较1 该笔记本将提供的参考自行车基础设施数据集与同一区域的 OSM 数据进行所谓的外部质量评估进行比较。 为了运行这部分分析,必须有一个参考数据集可用于比较。 该分析基于将参考数据集…

Oracle篇—实例中和name相关参数的区别和作用

☘️博主介绍☘️: ✨又是一天没白过,我是奈斯,DBA一名✨ ✌✌️擅长Oracle、MySQL、SQLserver、Linux,也在积极的扩展IT方向的其他知识面✌✌️ ❣️❣️❣️大佬们都喜欢静静的看文章,并且也会默默的点赞收藏加关注❣…

如何将jpg图片大小压缩?这个方法建议收藏

如何将jpg图片大小压缩?平时在分享jpg图片的时候,如果遇到图片过大无法使用的情况,可以试试本文分享的这个方法,通过图片在线处理工具压缩jpg文件大小,还不会操作的小伙伴也不用担心,下面小编会详细介绍jpg…

2024-01-09 Android.mk 根据c文件名插入特定的宏定义,我这里用于定义log LOG_TAG 标签

一、在Android的构建系统中,使用Android.mk构建脚本可以根据特定需求来定义宏。如果你想根据C文件的名称来插入特定的宏定义,可以使用条件语句检查文件名,并相应地设置宏。 在Android的构建系统中,使用Android.mk构建脚本可以根据…

C/S架构,集成三维影像后处理功能,自主版权的一套医院PACS系统源码

一、PACS简介 PACS(PictureArchivingandCommunicationsSystem)即图像存储与传输系统,是应用于医院的数字医疗设备如CT、MR(磁共振)、US(超声成像)、X光机、DSA(数字减影&#xff09…

【C语言期末】基于VS2022的学生成绩管理系统(2)

诚接计算机专业编程任务(C语言、C、Python、Java、HTML、JavaScript、Vue等)10/15R,如有需要请私信我,或者加我的企鹅号:1404293476 本文资源:https://download.csdn.net/download/weixin_47040861/88737450 1.题目要求 设计题目…

探索设计模式的魅力:简单工厂模式

简单工厂模式(Simple Factory Pattern)是一种创建型设计模式,其主要目的是用于创建对象的实例。这种模式通过封装创建对象的代码来降低客户代码与具体类之间的耦合度。简单工厂不是GoF(四人帮)设计模式之一&#xff0c…