Linux文件chattr/lsattr/Linux权限(搭建权限测试环境实战)引申到内部原理及Linux删除系统文件原理-7539字详谈

企业高薪思维:
每一个阶段什么时候是最重要的?(快速定位)
1.学习最重要的事情 (学生阶段,找工作前阶段)
2.家庭,女朋友 (工作阶段/学生阶段,学习不受到影响)
3.工作 (努力工作,不要三天一请假五天一请假)

找工作大多数人都关心薪资 工作中同事朋友请吃饭等,等着别人请/蹭车蹭喝,这样会把自己的人脉路堵死
钱从头到尾看的太过种,太计较,你关注的点太低了,钱赚来的想要拿高薪,去问自己有什么样的能力去拿高薪,有什么本事?只要有能力,你的薪资不会特别特别的差,关注能力努力工作,你的价值观和思维就会发现和多数人不一样(上进心)

加班:
前几年网上出现不加班潮流,最终还不是该加班加班,中国不可能做到不加班,企业竞争与美国it行业减小差距,不加班怎么能追赶,老板给你开5000块加班一次,我想你自己都不拒绝。所以要看加班能给你带来什么,你初入it行业你能不加班吗?总说有人不加班,该吃吃喝喝到点下班,那你知道他工作了几年?他有经验,他说不定能力比你强,他工作的结果完美还有自己的创新,他能高效率完成工作,你和人家比,你能做到吗?
1.积累经验 2.满足领导需求 3.超越90%的态度
成长途径:读万卷书行万里路,工作忙碌,阅人无数,名师指路(去请教身边你认为厉害的人,工作几年的人)自己开悟(平台背景影响是很大的)有优秀的价值观领导才会重用你,你拿到的核心项目几率大,那你的薪资肯定会高(项目:王者荣耀vs象棋)那不用说核心项目王者荣耀薪资高
技能优秀+价值观优秀/合格,你混的肯定不会差 ,你要把自己变成金子 技术的提升仅是量的积累,思想的提升才是志的飞跃
学习技术过程中,积累学习的能力,思维方法更重要!

财富来源于信息差:
说到这一点小编还是有一定经历的,起初小编没有转计算机专业,在自学然后遇到卖破解软件,大学生跑步用程序刷,打卡,期末考试等等帮助很多人完成了学习!!这一点是不好的,但是事情都是有相反方向,在这期间我认识了一些打拼再一线二线it行业的大佬,与安徽创业前辈去学习,再部分it行业有一定市场了解对自己目标快速成长,学校学习能力强的表达人际关系欠缺,这一年多时间我逼自己去表达(自己兼职宣传),虽然有时候表达不是很好,但是有了一个很大的提高!通过大佬介绍,也与北京it教育前辈CEO线下聊过,也与重点一本,研究生以上学长定期去咨询了解,从不认识到现在认识完全是靠自己,所以说有时候就是因为信息差,拓宽人脉去学习,社会it行业它到底是怎样的,多去谦虚请教别人。在这期间平时写一写文学,期间python考了社会人含金量不错证书,并且与我主公方向挂钩,一天一反思三天一反思一月大反思,学习情况/高效率完成/完成是否做到对每一件事情做到专注,但是有时会陷入一定焦虑,去调整心态,将近两年基本上除了睡觉/短暂的休息就去提高自己。

比我们厉害的人很多,优秀的人很多,我们做到最好的自己,专注,坚韧,上进心!学历很重要,技术很重要,态度好很重要,价值观很重要,责任心很重要。这几年确实it大环境不好,本科研究生很难找工作,因为现在基本上学历过剩时期,我们要让自己在平时学习中去培养我所提到的5个很重要,今天就先分享到这里!

文件加特殊属性,实现特殊功能的命令chattr

chattr
a 只能追加内容,不能删除
i 不能修改,不能删除
chattr +i wulin.txt增加i属性
chattr –i wulin.txt减掉i属性

练习:
touch wulin1.txt
lsattr wulin1.txt
chattr +i wulin1.txt
lsattr wulin1.txt
rm –f wulin1.txt
无法删除
在这里插入图片描述

查看chattr属性:lsattr

lsattr

企业中用途:保护关键文件,防止被非法写入
ls /etc/passwd /etc/group /etc/shadow /etc/gshadow

chattr +i /etc/passwd /etc/group /etc/shadow /etc/gshadow /etc/sudoers
useradd abcd
会显示无法打开/etc/passwd
在这里插入图片描述

which chattr
显示/usr/bin/chattr
cd /usr/bin
mv chattr wulin 我们做一个更安全的操作把它移走,别人找不到命令
别人能不能拷个命令过来呢?没有root权限他什么也干不了
一般黑客拿不到root权限,去拿web权限(安全比较低),去写脚本跑PHP,shell/调用系统命令进行处理

改回来mv wulin chattr
chattr –i /etc/passwd /etc/group /etc/shadow /etcgshadow /etc/sudoers
lsattr /etc/passwd /etc/group /etc/shadow /etc/gshadow
/etc/sudoers
在这里插入图片描述

cd –
ls wulin.txt
chattr +a wulin.txt
lsattr wulin.txt
chattr -i wulin.txt
lsattr wulin.txt
rm –f wulin.txt
显示无法删除
echo 1 〉wulin.txt
也是不行的
echo 1〉wulin.txt
只能往里面追加东西
cat wulin.txt
在这里插入图片描述
查看总文件大小
du -sh /etc/*

Linux系统权限(基础权限共9位)

基础权限介绍

rw-r–r–
1.三位一组
2.前三位是用户位(owner)
3.中三位用户组位(group)
4.后三位为其他用户位(others)

r read 可读的权限,用数字4来表示,三位中的首位
w write 可写的权限 ,用数字2来表示,三位中的中间位
x execuite 可执行的权限,用数字1来表示,三位中的最后位
-没有权限

画图

在这里插入图片描述

文件和目录权限总结

  1. 针对文件
    r 可以读取文件内容(block)的权限
    w 可以增加,修改,删除文件内容(block)的权限

有没有删除文件本身权限呢?(下文实战详谈)

x 可以执行文件
条件:
a. 本身可以执行
b. 需要配合r

如果没有r可读,vim编辑器提示无法编辑,但可进行强制覆盖文件,也可以使用echo等命令进行重定向或追加内容到文件

c. root不受r的控制,只要有可执行x的权限就能执行文件

‘-’ 没有权限

搭建权限测试环境及实战

incahome 家组
wulin 用来代表用户(user)角色,是文件的所有者
wulinhock (和wulin属于相同的组),用来代表用户组incahome的角色
其他人 test ,代表其他用户角色

[root@calms ~]# groupadd incahome groupadd:“incahome”组已存在 [root@calms
~]# user wulin -g incahome
-bash: user: 未找到命令 [root@calms ~]# useradd wulin -g incahome useradd:警告:此主目录已经存在。 不从 skel 目录里向其中复制任何文件。 正在创建信箱文件: 文件已存在 [root@calms
~]# useradd wulinhock -g incahome [root@calms ~]# id wulin
uid=5017(wulin) gid=5017(incahome) 组=5017(incahome)
[root@calms ~]# id
wulinhock uid=5018(wulinhock) gid=5017(incahome) 组=5017(incahome)
[root@calms ~]# useradd test [root@calms ~]#

开启四个窗口,依次root,wulin,wulinhock,test切换(双机xshell连接的标签)

出现-bash-4.2$这个问题,小编这篇文章提到:https://editor.csdn.net/md/?articleId=137704698
是因为创建useradd,环境变量丢失,下图位检查各对应的权限,进行chmod解决:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
root窗口:
[root@calms ~]# mkdir /wulin -p
[root@calms ~]# cd /wulin
[root@calms wulin]# echo “echo ‘i am wulin.’” >test.sh
[root@calms wulin]# cat test.sh
echo ‘i am wulin.’
[root@calms wulin]# ls -l test.sh
-rw-r–r-- 1 root root 19 4月 18 10:29 test.sh

在wulin窗口下:
在这里插入图片描述
文件太多,回到root下删除:留下test.sh
在这里插入图片描述
切换到wulin窗口
在这里插入图片描述
只有read可读权限,执行/写入没有权限,
test.sh这里这样运行是不对的,它会去PATH路径里寻找是没有test.sh这个位置的,为什么没有?
在这里插入图片描述
是因为我当前这个test.sh文件在/wulin里面,所以我们通过./test.sh进行执行
在这里插入图片描述
所以这里解释了前面提到的文件与目录权限总结知识

在wulinhock窗口:
在这里插入图片描述
解释了权限无法写入(保存)
在这里插入图片描述
这里执行也没有权限

上面小编提了一个问题,w属性有没有删除文件本身的权限呢?
删除文件本身与w自身属性是无关的

接下来看最后一个窗口,其实和前面的一样,看它的其他权限位:

测试得出结论:
设置新的用户和组
在这里插入图片描述
在wulin窗口,用户属主发生变化,有可读与可写的权限,没有可执行权限
在这里插入图片描述
窗口wulinhock/窗口四对比即可!

调整权限:
在这里插入图片描述
在窗口wulin:
在这里插入图片描述
为什么删除不了?
易错点(笔试,面试小心)文件权限里面的w,可以增加,修改,删除文件(block)权限。
删除文件的权限和文件本身属性无关!!

这里和Linux删除文件原理有关:
文章https://blog.csdn.net/2302_78067597/article/details/137704698?spm=1001.2014.3001.5501
在这里插入图片描述
删除文件内容就是相当于修改block,删/下的文件,/文件保存在哪里?
删除/wulin/test.sh,就要知道test.sh这个文件名在哪里,test.sh是放置在wulin下的block里,所以就要看wulin里面的inode。
所以删除文件就是看上一级目录的权限(上一级目录的block–就需要上一级目录里的inode权限)

在这里插入图片描述
/wulin下由test.sh文件,test.sh文件看图是否在上一个block里面,在上面案例中我们使用vim test.sh 追加##,在修改文件内容—就是在修改自身的block–就是在修改自身inode权限,我们在这个基础之上做了rm -f test.sh操作–修改了test.sh文件名–相当于放在了(修改了)上一级/wulin里面的block

所以删除test.sh相当与在玩上一级目录里面block,玩出界,所以删除它就要看/wulin权限

在这里插入图片描述
所以我在root窗口,cd切换wulin变成了其他属主(其他权限)没有w属性所以删除不了

即使将root窗口调整权限:
chmod 777 wulin/tset.sh
在wulin窗口只需rm -f test.sh还是删除不了

删除文件与删除文件的本身属性没有任何关系
在这里插入图片描述
多建一些会发现Linux中创建的文件用户属主建立要求特别高!

针对目录 对应读写,执行的权限说明:

r :具有浏览目录下面文件及子目录名的权限

dir 查看目录下的内容 如果没有可执行的x的配合,不能切换到指定目录里面,无法执行cd dir命令
在这里插入图片描述
w: 表示具有增加,删除或修改目录内文件的权限。如果没有可执行x的配合,即使有w权限也无法删除或创建文件

可执行x:表示具有进入目录的权限
dir命令切换到目录下,但是无法列表目录下单文件及子目录
在这里插入图片描述

权限设置

数字权限

r 4
w 2
x 1
‘-’ 0

字符权限:rwx r-x r-x
数字权限: 7 5 5

转换规则:r,w,x,-,进行相加

字符权限

字符权限: rwx rw- --x
数字权限: 7 6 1

数字权限113 --x–x-wx
数字权限274 -w-rwxr–

转换规则:r,w,x,-,进行相加

设置命令:chmod change mode

-R 递归设置

数字权限设置:(工作中最常用的)

chmod 数字权限 文件

举例

chmod 755 文件
chmod -R 755 /wulin

字符权限设置:
1.用户或用户组的定义
u 代表属主用户(owner/user)
g代表属组(group)
o代表其他用户组(group)
a 或者不写,同时代表ugo属主,组及其他用户
2.权限设置定义字母,与前面一致
r w x -
3。权限增加减字符详细定义
+:添加权限
-:取消权限
=:取消其他所有权限,然后赋予给定的权限

在这里插入图片描述
chmod u-x test.sh
在这里插入图片描述

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

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

相关文章

修改Ubuntu22.04系统图标

在Ubuntu 22.04中更改开机时显示的Ubuntu图标需要修改的设置。 主要思路是用自己图片替换系统图片,保持系统图片同名,同格式。 以下是一般的步骤: 修改启动界面的logo: sudo cp 新logo.png /usr/share/plymouth/themes/spinn…

k8s pod 绑核

一、概述 默认配置下,kubelet/Linux 使用 CFS(完全公平调度)算法来为 Pod 分配 CPU,工作负载(Pod 中的进程)会被调度到不同的可用的 CPU 核心,而且大多数工作负载对这种迁移带来的性能损失并不…

狠不狠?做个标签累不累?

QT是专门用来开发用户界面的程序,小部件(Widgets)是构成用户界面的基本元素。QT6提供了一个丰富的库,用于创建桌面、移动和嵌入式应用程序的用户界面。 小部件是图形用户界面(GUI)编程中的一个重要概念。它是构成用户界面的基本元…

@NameBinding注解名称绑定过滤器/拦截器

NameBinding注解名称绑定过滤器/拦截器,只针对某一些资源方法执行处理逻辑 一、为什么要用名称绑定 一般情况下,借助Spring的过滤器或者拦截器等对Http请求或响应进行处理就能满足需求。但是在有些场景下若只需对特定的xxxResource做拦截处理&#xff0…

项目大集成

一 keeplived 高可用 192.168.11.11nginx keeplived192.168.11.12nginx keeplived 两台均编译安装服务器 1 主服务器修改文件: 2 备服务器修改文本 scp keepalived.conf 192.168.11.12:/etc/keepalived/ 3 给主服务器添加虚拟ip ifconfig ens33:0 192.168…

Qt5怎么用QSetting生成配置文件、读取配置文件和保存配置文件

2024年4月22日,周一下午 在 Qt5 中,可以通过 QSettings 类生成、读取和保存配置文件。 QSettings 类提供了一个跨平台的接口,用于读取和写入应用程序的设置和配置信息,这些信息可以存储在不同的地方,如注册表&#xf…

【多态】底层原理

博主首页&#xff1a; 有趣的中国人 专栏首页&#xff1a; C进阶 本篇文章主要讲解 多态底层原理 的相关内容 1. 多态原理 1.1 虚函数表 先看一下这段代码&#xff0c;计算一下sizeof(Base)是多少&#xff1a; class Base { public:virtual void Func1(){cout << &quo…

Oracle 21 C 安装详细操作手册,并配置客户端连接

Oracle 21 C 安装详细操作手册 Win 11 Oracle 21C 下载&#xff1a; Database Software Downloads | Oracle 中国 云盘共享 链接&#xff1a;https://pan.baidu.com/s/12XCilnFYyLFnSVoU_ShaSA 提取码&#xff1a;nfwc Oracle 21C 配置与登陆&#xff1a; 开始菜单 NetMa…

Node.js身份核验接口、身份证二、三要素实名认证接口

随着互联网的高速发展&#xff0c;人们可以发表言论的渠道越来越多。网络平台不断汲取各地、各人、各时发表的各种信息。人们喜欢将信息发布到微博、知乎、天涯、豆瓣等等网络平台&#xff0c;逐步的&#xff0c;网络信息进入大爆炸时代。这些大量涌现的信息中难免掺杂着一些不…

数学建模:Matlab一元二次回归模型-重庆房价预测

摘要 自1998年我国实行住房改革以来,房地产行业已经逐渐成长为拉动中国经济增长的龙头产业。近几年在国家积极的财政政策刺激下,我国房地产市场处于不断发展阶段。然而,与美国等发达国家住房市场进入成熟期不同,我国正处在城市化和工业化进程加速阶段,住房水平低和需求比…

java中spring底层核心原理解析(1)

相关系列 java中spring底层核心原理解析(2)-CSDN博客 总起 本章主要是讲以下的内容 Bean的生命周期底层原理依赖注入底层原理初始化底层原理推断构造方法底层原理 先看spring入门代码&#xff1a; ClassPathXmlApplicationContext context new ClassPathXmlApplicationCo…

Git下载安装

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

华为认证云计算前景如何

互联网/移动互联网经历了高速发展的二十年&#xff0c;我们有幸一起见证了华为、阿里、腾讯、百度、字节跳动、京东、滴滴、拼多多等互联网公司的崛起&#xff0c;让普通技术人实现逆袭拿到高薪&#xff0c;也让小镇做题家们有了阶层跨越的机会。 但机会都是留给有准备的人&…

C++:特殊成员函数

构造函数、析构函数和拷贝构造函数是C类中的三种特殊成员函数&#xff0c;它们分别用于对象的初始化、清理和拷贝操作。 1.构造函数&#xff08;Constructor&#xff09;&#xff1a;构造函数在对象创建时自动调用&#xff0c;用于初始化对象的成员变量。它的名称与类名相同&a…

基于大语言模型的本地知识库问答系统构建方案

文章大纲 RAG (Retrive,Augment,Generate)检索增强生成方案简介1. 数据准备阶段2. 应用阶段基于 LangChain 的实现开源实现参考RAG 与其他方案比较知识图谱方案: KG-RAG 表示基于知识图谱的RAG(Retrieval Augmented Generation)检索增强多模态检索结论参考文献与学习路径写…

使用机器学习算法构建问答系统

长时间以来&#xff0c;我一直在阅读关于人工智能和机器学习的多篇文章、一些论文和大量博客文章。最近&#xff0c;神经网络的进步特别引人注目&#xff0c;比如产生类似人类水平文本的 GPT3.5 模型。为了理解使用神经网络进行自然语言处理的最新技术&#xff0c;我想设计一个…

富格林:戒备虚假套路保障安全

富格林悉知&#xff0c;现货黄金是一种传统而又具有吸引力的投资方式&#xff0c;因为它通常被视为一种避险资产。对于投资者来说&#xff0c;特别是新进场的新手投资者戒备虚假套路是保障做单安全的关键之处。那么我们该如何进行戒备虚假套路以达到安全做单的目标呢&#xff1…

React Router 6 + Ant Design:构建基于角色的动态路由和菜单

要根据用户的角色生成不同的路由菜单并实现权限控制,你可以采取以下步骤: 定义路由配置 首先,你需要定义一个包含所有可能路由的配置文件,例如: const routes [{path: /dashboard,element: <DashboardPage />,roles: [admin, manager, user]},{path: /users,element:…

Node.js 基础学习

文章目录 1. Node.js1.1 是什么&#xff1f;1.2 作用 2. 命令行工具2.1 命令的结构2.2 常用命令 3. Node.js 注意点3.1 Node.js 中不能使用DOM 和BOM 的API3.2 Node.js 中顶级对象叫做global 4. Buffer4.1 Buffer 特点4.2 Buffer 创建方式4.3 Buffer 操作与注意点 5. 计算机基础…

CSS基础:浮动(float)的3种方式,清除浮动3种方式的详解

你好&#xff0c;我是云桃桃。 一个希望帮助更多朋友快速入门 WEB 前端的程序媛。 云桃桃-大专生&#xff0c;一枚程序媛&#xff0c;感谢关注。回复 “前端基础题”&#xff0c;可免费获得前端基础 100 题汇总&#xff0c;回复 “前端工具”&#xff0c;可获取 Web 开发工具合…