当前位置: 首页 > news >正文

【Linux】-- 权限和Shell运行原理

目录

Shell的运行原理

用户切换

su -  /  su

sudo

权限

chmod

 chown

chgrp

八进制方法修改文件属性 

目录权限

粘滞位

 umask

自定义默认权限


Shell的运行原理

广义上,Linux发行版 = Linux内核 + 外壳程序

Linux 从广义上来理解它是一个操作系统 而从狭义上来理解它则是一个核心 (kernel)

针对Linux这个核心 程序员或商业公司们制作出各种不同的发行版本 比如说 centos retcap ubuntu kail等等

所以说我们用户在操作的时候并不是直接操作Linux kernel 而是通过kernel的外壳程序来和kernel沟通

shell是什么?

shell的中文翻译是外壳 我们一般认为它是一个命令解释器 用来连接用户和 linux kernel

为什么要设置一个shell外壳而不让用户直接来和 linux kernel沟通呢?

用户不擅长直接和 Linux kernel进行沟通

shell作用:

  • 传递请求指令,让OS执行命令
  • 保护 Linux kernel

shell的原理是什么

shell的原理部分涉及进程相关知识   ps axj 显示进程

shell是对于所有外壳程序的统称 在centos中这个外壳程序是 bash 它是对于一个抽象概念的实例化

用户切换

 Linux中,默认有两类用户  root :超级管理员,具有非常高的权限  普通用户:具有一般权限,需要受权限约束的

su -  /  su

su - 切换到 root 用户   su:切换的时候路径不变

创建新的Bash

root 可以 su - xxx  切换到任何用户(不建议)创建新Bash

quit / ctrl + d 可以从root 回退

sudo

临时权限提升,执行后续命令,以 root 身份执行

需要普通用户的密码,需要添加信任关系

权限

权限:一件事情是否允许被特定的人做

权限约束的是人,文件本身具有天然的权限属性:r + w + x

Linux中的用户类别:

  1. 拥有者 owner
  2. 所属组 group
  3. 其他 other

拥有者 / 所属组 / other : 指的是一种角色身份

root / 普通用户:指的是具体的一个人

第一列 标识文件类型

  • - : 普通文件 【文本 各种动静态库 可执行程序 源程序】
  • d :目录文件
  • c :字符设备文件 【键盘 显示器】
  • b :块设备文件 【磁盘】
  • p :管道文件 【通信】
  • l :链接文件 【软链接】
  • s :套接口文件

 

 Linux下一切皆文件

gcc系统上层的命令 要求c文件要以.c结尾

是否具有读(r / -)  是否具有写(w / -) 是否具有可执行(x / -)

chmod

修改文件权限 (永久修改)

[wzy@VM-24-2-centos lesson2]$ chmod u+x file.txt

用户类别权限文件
chmodu(拥有者)+ -            r         w         x
g(所属组)
o(other)
a(all)

root几乎不受权限约束,root如果想修改执行文件,可以手动添加权限

 chown

改文件拥有者

普通用户需要 sudo

root可以直接改

[wzy@VM-24-2-centos lesson2]$ sudo chown root file.txt

__:__

可以改拥有者和所属组

[wzy@VM-24-2-centos lesson2]$ sudo chown root:root file.txt

chgrp

改文件所属组

普通用户需要sudo 

文件属于拥有者 所以 拥有者可以直接取回来 不用sudo

[wzy@VM-24-2-centos lesson2]$ sudo chgrp root file.txt

 

八进制方法修改文件属性 

权限位置是确定的而且是两态的 可以用二进制表示 三个二进制可以用八进制表示

[wzy@VM-24-2-centos lesson2]$ chmod 777 file.txt

目录权限

r代表读目录下的内容  w代表创建文件 x 进入目录

没有x权限 有r权限 可以看文件名

粘滞位

如果目录本身对other具有w权限

other可以创建文件,也可以删别人的文件

 需求:other可以在特定的目录下创建文件,并写入  但是不想让任何人删掉自己的文件

[wzy@VM-24-2-centos lesson2]$ sudo chmod o+t test

 粘滞位 chmod o+t dir 只能对目录

对设置了粘滞位的目录,在该目录下,只能文件的拥有者(root,目录的所有者)可以删除,其他人不能删除

有时候,有很多人,或者系统会有很多的临时数据,所有的临时文件放在系统的 /tmp  需要所有的权限放开 但是只想文件的拥有者自己删除自己的文件

 umask

权限掩码 凡是在umask中出现的 都应在起始权限中去掉

八进制 002

为什么系统中的文件,创建出来的默认权限,是看到的样子

默认权限:

普通文件,起始权限 666

目录文件,起始权限 777

   110 110 110
&~ 000 000 010
----------------110 110 1006   6   4

自定义默认权限

本次登陆有效

相关文章:

【Linux】-- 权限和Shell运行原理

目录 Shell的运行原理 用户切换 su - / su sudo 权限 chmod chown chgrp 八进制方法修改文件属性 目录权限 粘滞位 umask 自定义默认权限 Shell的运行原理 广义上,Linux发行版 Linux内核 外壳程序 Linux 从广义上来理解它是一个操作系统 而从狭义上…...

C++各类设计模式及实现详解

软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态,真正领悟设计模式的精髓是可能一个漫长的过程,需要大量实践经验的积累。最近看设计模式的书&#xff0…...

【Linux】进程理解与学习(Ⅰ)

环境:centos7.6,腾讯云服务器Linux文章都放在了专栏:【Linux】欢迎支持订阅🌹相关文章推荐:【Linux】冯.诺依曼体系结构与操作系统进程概念什么是进程?进程是什么?我们打开任务管理器可以看到有…...

认识代码之前,请先认识你自己 |《编程人生》

这是我的湛庐课程《给技术人的职场突围课》 (链接) 的一部分。 这篇文章也是 IT 女神征文活动 的一部分。 《编程人生》是一本优秀程序员的采访集,里面记录了15位世界级编程大师的故事。 我在 发刊词 里面说过,在这个书单课里&am…...

react学习笔记-5:react路由

react旧版本路由 旧版本的路由是按照组件的方式来写的 编写router/index.tsx文件 import App from "../App" import Home from "../views/Home" import About from "../views/About" import { BrowserRouter,Routes,Route } from "react…...

[Python图像处理] 使用高通滤波器实现同态滤波

使用高通滤波器实现同态滤波同态滤波基础实现同态滤波相关链接同态滤波基础 同态滤波是一种去除图像中乘性噪声的技术,常用于校正图像中的不均匀照明。根据图像形成的光照反射模型,图像 f(x,y)f(x,y)f(x,y) 可以由以下两个分量表征: 入射到…...

PyTorch深度学习:60分钟入门

PyTorch深度学习:60分钟入门 本教程的目的: 更高层级地理解PyTorch的Tensor库以及神经网络。训练一个小的神经网络来对图像进行分类。 本教程以您拥有一定的numpy基础的前提下展开 Note: 务必确认您已经安装了 torch 和 torchvision 两个包。 这是一个基于Pytho…...

C语言指针常见问题汇总

我们在学C语言时,指针是我们最头疼的问题之一,针对C语言指针,博主根据自己的实际学到的知识以及开发经验,总结了以下使用C语言指针时常见问题。 1、指针做函数参数 学习函数的时候,讲了函数的参数都是值拷贝&#xf…...

Coremail邮件系统全新上线存档邮箱功能

邮箱积累邮件太多,搜索起来又慢又麻烦! 我的重要邮件忘记下载丢失了!14天自动删除太难了! 有没有可能重要邮件自动存档,解救一下“遗忘星”人? 在我们日常工作中,邮件是最经常使用的办公工具之一…...

Python绘图

1.二维绘图 a. 一维数据集 用 Numpy ndarray 作为数据传入 ply 1. import numpy as np import matplotlib as mpl import matplotlib.pyplot as pltnp.random.seed(1000) y np.random.standard_normal(10) print "y %s"% y x range(len(y)) print "x%s&q…...

【独家】华为OD机试 - 第K个最小码值的字母(C 语言解题)

最近更新的博客 华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单华为OD机试真题大全,用 Python 解华为机试题 | 机试宝典【华为OD机试】全流程解析经验分享,题型分享,防作弊指南)华为od机试,独家整理 已参加机试…...

整数反转(python)

题目链接: https://leetcode.cn/problems/reverse-integer/ 题目描述: 给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围 [−231,231−1][−2^{31}, 2^{31} − 1][−231,231…...

【数据结构】二叉树与堆

文章目录1.树概念及结构1.1树的相关概念1.2树的结构2.二叉树概念及结构2.1相关概念2.2特殊的二叉树2.3二叉树的性质2.4二叉树的存储结构3.二叉树的顺序结构及实现3.1二叉树的顺序结构3.2堆的概念3.3堆的实现Heap.hHeap.c3.4堆的应用3.4.1 堆排序3.4.2 TOP-KOJ题最小K个数4.二叉…...

Git图解-常用命令操作-可视化

目录 一、前言 二、初始化仓库 2.1 设置用户名与邮箱 2.2 初始化仓库 三、添加文件 四、查看文件状态 五、查看提交日志 六、查看差异 七、版本回退 八、删除文件 九、分支管理 9.1 创建分支 9.2 切换分支 9.3 查看分支 9.4 合并分支 十、文件冲突 十一、转视…...

C语言-基础了解-20-typedef

typedef 一、typedef C 语言提供了 typedef 关键字,您可以使用它来为类型取一个新的名字。下面的实例为单字节数字定义了一个术语 BYTE: typedef unsigned char BYTE; 在这个类型定义之后,标识符 BYTE 可作为类型 unsigned char 的缩写&…...

Ubuntu系统升级16.04升级18.04

一、需求说明 作为Linux发行版中的后起之秀,Ubuntu 在短短几年时间里便迅速成长为从Linux初学者到实验室用计算机/服务器都适合使用的发行版,目前官网最新版本是22.04。Ubuntu16.04是2016年4月发行的版本,于2019年4月停止更新维护。很多软件支…...

CM6.3.2启用Kerberos(附问题解决)

基础准备支持JCE的jdk重新安装JCE的jdk(已正确配置跳过)删除/usr/java/下面的jdk,然后通过CM->管理->安全->安装Java无限制...重新安装后,配置Java(可选)主机->主机配置->搜java->Java主目录 配置路径主机->所有主机->设置->高级:Java配置Kerberos安…...

QML 动画(组合动画)

在QML中,可以把多个动画组合成一个单一的动画。 组合动画的类型: ParallelAnimation 动画同时进行(并行)SequentialAnimation 动画按照顺序执行(顺序执行)注意:将动画分组为“顺序动画”或“…...

【PHP代码注入】PHP代码注入漏洞

漏洞原理RCE为两种漏洞的缩写,分别为Remote Command/Code Execute,远程命令/代码执行PHP代码注入也叫PHP代码执行(Code Execute)(Web方面),是指应用程序过滤不严,用户可以通过HTTP请求将代码注入到应用中执行。代码注入(代码执行)…...

Python 常用语句同C/C++、Java的不同

文章目录前言1. 数字 int2. 字符 string3. 列表 List4. 元组 tuple5. 字典 dictionary6. 集合 set7. 值类型变量与引用类型变量8. if elif else9. >、<、>、<、、!10. while11. for前言 本篇为本人前段时间的一个简单汇总&#xff0c;这里可能并不齐全&#xff0c…...

一把火烧掉了苹果摆脱中国制造的幻想,印度制造难担重任

这几年苹果不断推动印度制造&#xff0c;希望摆脱对中国制造的依赖&#xff0c;然而近期苹果在印度的一家代工厂发生大火却证明了苹果的这一计划遭受重大打击&#xff0c;印度制造根本就无法中国制造。一、印度制造屡屡发生幺蛾子苹果推动印度制造已有多年了&#xff0c;然而印…...

常用的 JavaScript 数组 API

以下是一些常用的 JavaScript 数组 API 的代码示例&#xff1a; 1、push() push(): 在数组末尾添加一个或多个元素&#xff0c;返回新的数组长度 const arr [1, 2, 3]; const newLength arr.push(4, 5); console.log(arr); // [1, 2, 3, 4, 5] console.log(newLength); //…...

海思3531a pjsip交叉编译

学习文档&#xff1a; PJSUA2 Documentation — PJSUA2 Documentation 1.0-alpha documentationhttps://www.pjsip.org/docs/book-latest/html/index.html ./configure --prefix/opensource/pjproject-2.12/build3531a \ --host/opt/hisi-linux/x86-arm/arm-hisi…...

《安富莱嵌入式周报》第305期:超级震撼数码管瀑布,使用OpenAI生成单片机游戏代码的可玩性,120通道逻辑分析仪,复古电子设计,各种运动轨迹函数源码实现

往期周报汇总地址&#xff1a;嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz! 说明&#xff1a; 谢谢大家的关注&#xff0c;继续为大家盘点上周精彩内容。 视频版&#xff1a; https://www.bi…...

力扣-查找每个员工花费的总时间

大家好&#xff0c;我是空空star&#xff0c;本篇带大家了解一道简单的力扣sql练习题。 文章目录前言一、题目&#xff1a;1741. 查找每个员工花费的总时间二、解题1.正确示范①提交SQL运行结果2.正确示范②提交SQL运行结果3.正确示范③提交SQL运行结果4.正确示范④提交SQL运行…...

企业级信息系统开发学习笔记1.8 基于Java配置方式使用Spring MVC

文章目录零、本节学习目标一、基于Java配置与注解的方式使用Spring MVC1、创建Maven项目 - SpringMVCDemo20202、在pom.xml文件里添加相关依赖3、创建日志属性文件 - log4j.properties4、创建首页文件 - index.jsp5、创建Spring MVC配置类 - SpringMvcConfig6、创建Web应用初始…...

【C语言复习】C语言中的文件操作

C语言中的文件操作写在前面文件操作什么是文件文件的分类文件名文件的操作文件指针文件的打开和关闭文件的顺序读写文件的随机读写fseekftellrewindfeof写在前面 文件操作在C语言部分只是属于了解内容&#xff0c;但是因为它可能会应用在项目中&#xff0c;所以我把它单独写成…...

00后整顿职场,当摸鱼测试员遇上了内卷00后。

在程序员职场上&#xff0c;什么样的人最让人反感呢? 是技术不好的人吗?并不是。技术不好的同事&#xff0c;我们可以帮他。 是技术太强的人吗?也不是。技术很强的同事&#xff0c;可遇不可求&#xff0c;向他学习还来不及呢。 真正让人反感的&#xff0c;是技术平平&…...

程序员的上帝视角(4)——视角

对于开发人员来说&#xff0c;工作都是从评估一个需求开始。我们第一个要解决的问题就是看待需求的视角。视角的不同&#xff0c;得到的设计方案可能是完全不同的。作为一个程序员&#xff0c;不能单单从个人视角来看待问题。而是要尝试从不同角色出发&#xff0c;不停思考。上…...

一、webpack基础

webpack基础 一、webpack是什么 webpack 是一个用于现代 JavaScript 应用程序的静态模块打包工具。 说白了webpack就是一个构建和管理静态资源的工具&#xff0c;在我们使用框架开发时&#xff0c;它会在我们内部的一个或者多个入口根据我们引入的各个模块将他们根据一定的规…...

兰州市科协网站/热搜榜排名今日第一

Step-index fiber and Graded-index fiber 定义光纤截面图像折射率一维分布图为定义 Step-index fiber:可以理解为纤芯(core)是均匀的(uniform),即折射率保持为一个值。 Graded-index fiber:可以理解为core的中心到包层(cladding)的折射率分布是一个梯度的,即渐变的,通常…...

嘉兴做网站seo/百姓网推广电话

原文标题&#xff1a;Heres how you can leverge Deep Learning in your bussiness翻译&#xff1a;申利彬校对&#xff1a;白静作者&#xff1a;George Seif本文带大家三步了解深度学习在商业中的应用方法。深度学习是大家谈论的热门话题&#xff0c;利用深度学习不仅解决了很…...

如何将vs做的网站备份出来6/软文之家

我做了一個傻事&#xff0c;要在Server上新增一張網卡&#xff0c;可是因為一直無法啟動&#xff0c; 所以很自然的以為CentOS 6又多了其他的設定要求&#xff0c; 因此查了兩天的資料&#xff0c;也試過很多方式&#xff0c;但都沒有效用。 今天早上心血來潮&#xff0c;想說用…...

销售网站开发与设计现状/前端seo是什么意思

全局变量什么是全局变量&#xff1f;全局变量就好比一个容器或者一个公用的东西一样&#xff0c;就类似外面公共场所的凳子一样&#xff0c;大家都可以使用这个凳子。和他相反的局部变量是啥子东东呢&#xff1f;局部变量就是局部的东西&#xff0c;如果全局变量是桌子&#xf…...

沂源网站开发/上海推广服务

&#xff08;1&#xff09;第一个程序“”“Hello World” 实现python环境打印输出&#xff1a;Hello World 程序&#xff1a; print("Hello World") 数据类型转换 数据类型&#xff1a;int整形&#xff0c;str字符型&#xff0c;不同类性的数据不能相加、减。 正确&…...

网站首页样式/杭州网站关键词排名优化

配置办法https://blog.csdn.net/qq342643414/article/details/78364601 可能会遇到的问题https://www.cnblogs.com/chuijingjing/p/9880095.html转载于:https://www.cnblogs.com/helf/p/10709686.html...