Shell和Linux权限

目录

shell

Liunx权限

用户

sudo

Linux的权限管理

文件访问者的分类

文件的属性

文件的权限

文件全权限值的表示方法

1.字符表示

2.八进制数值表示

用户符号

修改文件访问权限

修改文件拥有者

修改拥有者和所属组

修改所属组

文件目录的权限的含义

问题

粘滞位


shell

Linux严格意义上是一个操作系统,叫做“核心“(kernel),但一般用户不能直接使用kernel,而是通过kernel的”外壳“程序即(shell),来和kernel沟通。

shell最简单定义:命令行解释器(command interpreter)

shell只是所有外壳程序的统称,例如在centos 7 中 的外壳程序名叫做bash

windows GUI(GUI:图形用户界面):我们不是直接操作操作系统,而是通过图形接口来完成我们的操作。

shell:设立了主要是将我们的指令进行解析,解析给Liunx内核,反馈的结果再通过内核运行出结果,再通过shell解析给用户。

Liunx权限

用户

Liunx有两种用户

1.超级用户(root)

2.普通用户

超级用户命令提示符是#

普通用户是$

sudo

作用:权限提升,想提升某条指令的权限,但不切换到root

语法: sudo 指令

需要在被root加入到信用列表中.

将普通用户添加到信任列表中

1切换至root用户,只有root用户才有权限将普通用户添加到信任列表中

2用vim打开sudoers

vim  /etc /sudoers

找到这行

在这行下添加一行

用户名 ALL=(ALL)  ALL

Linux的权限管理

文件访问者的分类

1.文件拥有者:文件和文件目录的所有者

2.文件所属组:文件拥有者所在的组的用户

3.other:其他用户

其中拥有者,所属组,other由超级用户(root)和普通用户扮演。

文件的属性

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

文件的权限

三个为一组

1.r :读权限

2.w:写权限

3.x :可执行权限

4.-:表示没有这个权限

文件全权限值的表示方法

1.字符表示

2.八进制数值表示

注意:

777 为可读可写可执行

000 为不可读不可写不可执行

用户符号

1.u:拥有者

2.g:所属组

3.o:other

4.a:所有用户

修改文件访问权限

chmod

语法:chmod 选择 权限 文件名或目录

格式一:chmod o+rwx 文件名或目录名(表示给other给予可读可写可执行权限)

格式二:chmod 777 文件名或目录名(表示给所有人给予可读可写可执行权限)

修改文件拥有者

chown

语法:chown (选项) 用户名 文件名或目录名

注意:要root权限:用sudo

修改拥有者

chown -r 用户名 目录名(递归修改拥有者,即全部修改)

修改拥有者和所属组

chown (-r)用户名1:用户名2 文件或目录(将用户1设置为拥有者,将用户2设置为所属组)

修改所属组

语法:chgrp 选项 用户名 文件名或目录名

chgrp (-r)用户名 文件名或目录名

文件目录的权限的含义

1对于文件来说,可读可写可执行即字面意思。

2对于目录来说,

        1.可读权限:如果用户没有r(可读)权限时,无法通过ls等指令查看目录的文件内容。

        2.可写权限:如果用户没有可写权限,无法通过指令在目录创建文件或删除文件

        3.可执行权限:如果没有该目录的可执行权限,则无法通过cd 进入目录中

权限掩码

在创建文件的时候,要从起始文件中过滤掉umask中出现的权限

创建的普通文件:起始权限0666,去掉x

创建的目录文件:其实默认权限0777

实际权限为(666)$~(掩码)

修改

umask+ 修改后的值

问题

但这样就会有一个问题:

只要用户有目录的写权限,就可以删除目录里面的文件,而不管这个用户是否有这个文件的写权限。

因此Linux引入了粘滞位

粘滞位

语法:chmod +t 目录名

功能:给目录加上粘滞位

当一个用户将某一个目录加上粘滞位后,该目录的权限值的最后一个位就变为字符‘t’了

如果要在创建一个共享文件,有多个用户共享,怎么做?

首先不能在根目录创建,因为在home目录中,不同用户相应的目录权限均为

因此不同用户是无法进入其他用户的目录的

所以在根目录创建

为了让多个用户都能在共享文件中写文件 就必须要把other权限放开。

但是此时 A在共享目录中创建的文件B可以删除!!

此时用粘滞位就可以解决

当一个目录被设置为:粘滞位时

该目录下的文件只能由

1.超级管理员删除

2.目录所有者删除

3.文件所有者删除

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

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

相关文章

程序员学CFA——数量分析方法(四)

数量分析方法(四) 常见概率分布基本概念离散型随机变量与连续型随机变量离散型随机变量连续型随机变量 分布函数概率密度函数(PDF)累积分布函数(CDF) 离散分布离散均匀分布伯努利分布二项分布定义股价二叉树…

Linux系统编程---线程同步

一、同步概念 同步即协同步调,按预定的先后次序运行。 协同步调,对公共区域数据【按序】访问,防止数据混乱,产生与时间有关的错误。 数据混乱的原因: 资源共享(独享资源则不会)调度随机(意味着数据访问会出现竞争)线…

算法模版自用(杂)

文章目录 算法库函数next_permutation(start,end) prev_permutation(start,end) (全排列函数)nth_element (求第k小值)next(it,num),prev(it,num)min_element(begin(),end()),max_element(begiin(),end()) (取最小值最大值) _int128的输入输出STLlist 数…

内容互动性的提升策略:Kompas.ai的智能工具

在数字营销的新时代,内容的互动性已成为提升用户参与度和品牌忠诚度的关键因素。互动性内容不仅能够吸引用户的注意力,还能够促进用户与品牌的沟通和交流,从而加深用户对品牌的理解和认同。本文将分析互动性内容在提升用户参与度中的作用及其…

基于DEAP数据集的四种机器学习方法的情绪分类

在机器学习领域,KNN(K-Nearest Neighbors)、SVM(Support Vector Machine)、决策树(Decision Tree)和随机森林(Random Forest)是常见且广泛应用的算法。 介绍 1. KNN&am…

【Java】从0实现一个消息队列中间件

从0实现一个消息队列中间件 什么是消息队列需求分析核心概念核心API交换机类型持久化网络通信网络通信API 消息应答 模块划分项目创建创建核心类创建Exchange创建MSGQueue创建Binding创建Message 数据库设计配置sqlite实现创建表和数据库基本操作 实现DataBaseManager创建DataB…

按现价和不变价计算与公布的统计指标主要有哪些

在经济统计和分析工作中 , 有些指标可以直接用实物量表示 , 如粮食和工业品产量等;而有些指标则是用价值量表示的 , 如全国居民人均可支配收入、社会消费品零售总额、商品房销售额等。在计算价值量指标时,一般均要考虑采用什么价格来计算。统计上常用的价…

设计模式(三):抽象工厂模式

设计模式(三):抽象工厂模式 1. 抽象工厂模式的介绍2. 抽象工厂模式的类图3. 抽象工厂模式的实现3.1 创建摩托车的接口3.2 创建摩托车的具体实现3.3 创建汽车的接口3.4 创建汽车的具体产品3.5 创建抽象工厂3.6 创建具体工厂3.7 创建工厂生成器…

苹果一次性开源了8个大模型! 包含模型权重、训练日志和设置,OpenELM全面开源

不以开放性著称的苹果居然同时开源了大模型的权重、训练和评估框架,涵盖训练日志、多个保存点和预训练设置。同时升级计算机视觉工具包 CVNets 为 CoreNet!支持 OpenELM! ▲图1.由Stable Diffusion3生成。 OpenELM是Apple苹果公司最新推出的…

律师口才训练技巧课程介绍?

律师口才训练技巧课程介绍 一、课程背景与目标 律师口才作为法律职业的核心能力之一,对于律师在**辩论、法律咨询、谈判协商等场合的表现具有至关重要的作用。然而,许多律师在口才方面存在不足,难以充分发挥自己的专业能力。因此,…

底层逻辑(1) 是非对错

底层逻辑(1) 是非对错 关于本书 这本书的副标题叫做:看清这个世界的底牌。让我想起电影《教父》中的一句名言:花半秒钟就看透事物本质的人,和花一辈子都看不清事物本质的人,注定是截然不同的命运。 如果你看过梅多丝的《系统之美…

“AI 程序员入职系列”第二弹:如何利用通义灵码光速改写项目编程语言?

通义灵码入职阿里云云原生团队后,已经展示过 Ta 生成单元测试和自动生成代码的强大实力。今天,阿里云后端工程师云徊将从项目开发的实际需求出发,演示通义灵码在开发工作中可提供的帮助。 通义灵码在 Git 开发项目中起到了哪些作用&#xff…

WildCard开通GitHub Copilot

更多AI内容请关注我的专栏:《体验AI》 期待您的点赞👍收藏⭐评论✍ WildCard开通GitHub Copilot GitHub Copilot 简介主要功能工作原理 开通过程1、注册Github账号2、准备一张信用卡或虚拟卡3、进入github copilot页4、选择试用5、选择支付方式6、填写卡…

为什么单片机控制电机需要加电机驱动

通常很多地方只是单纯的单片机MCU没有对电机的驱动能力,或者是介绍关于电机驱动的作用,如: 提高电机的效率和精度。驱动器采用先进的电子技术和控制算法,能够精准控制电机的参数和运行状态,提高了电机的效率和精度。拓…

【Hello算法】 > 第 3 关 >栈与队列

数据结构 之 数组与链表 1 栈 / 栈的常见操作、实现、应用2 队列 /队列的常见操作、实现、应用3 双向队列4 Tips ———————————————————————————————————————————————————————————- ————————————————…

Hybrid Homomorphic Encryption:SE + HE

参考文献: [NLV11] Naehrig M, Lauter K, Vaikuntanathan V. Can homomorphic encryption be practical?[C]//Proceedings of the 3rd ACM workshop on Cloud computing security workshop. 2011: 113-124.[MJS16] Maux P, Journault A, Standaert F X, et al. To…

STM32应用开发教程进阶--UART串口重定向(printf)

实现目标 1、掌握STM32 HAL库的串口重定向 2、具体目标:1、实现printf “打印”各种常用的类型的数据变量 一、串口“打印” UART串口通信协议是我们常用的通信协议(UART、I2C、SPI等)之一,全称叫做通用异步收发传输器&#xf…

Druid高性能数据库连接池?SpringBoot整合MyBatis整合SpringMVC整合Druid

文章目录 Druid高性能数据库连接池?SpringBoot整合MyBatis整合SpringMVC整合Druid异常记录spring-boot-starter-parent作用Druid介绍什么是数据库连接池?为什么选择Druid数据库连接池整合SpringBoot,MyBatis,SpringMVC,Druid到Maven项目的真个流程pom文件…

OSPF域间路由防环原则

1.域间路由防环原则 ①原则一 1)为了避免区域间的环路,OSPF规定不同区域间的路由交互只能通过ABR实现。 2)ABR是连接到骨干区域的,所以在区域设计上规定,所有非骨干区域都要连接到骨干区域。区 域间的通讯需要通…

C语言进阶:进阶指针(下)

一、 函数指针数组 我们都知道 数组是一个存放相同类型数据的存储空间 那我们已经学习了指针数组 那么函数有没有对应的指针数组呢? 如果有那应该怎么定义呢? 1. 函数指针数组的定义 我们说 函数指针数组的定义 应该遵循以下格式 int (*p[10])(); 首…