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…

@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…

【多态】底层原理

博主首页&#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…

Git下载安装

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

华为认证云计算前景如何

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

C++:特殊成员函数

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

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 开发工具合…

【报错】ModuleNotFoundError: No module named ‘einops‘

1 报错 💔💔💔 ModuleNotFoundError: No module named einops 解决方法 💚 💚 💚 pip --default-timeout=100 install einops -i https://pypi.tuna.tsinghua.edu.cn/simple 问题解决啦!!!🌺🌺🌺 2 报错 💔💔💔 ModuleNotFoundError: No module

iOS OC项目中引入SwiftUI文件

iOS OC项目中引入SwiftUI文件 1、创建SwiftUI文件 2、第一次创建时&#xff0c;Xcode会提示桥接&#xff0c;选择 Creat Bridging Header即可。 3、创建swift管理类 /**在UIKit中使用SwiftUI&#xff0c;需要使用UIHostingController对SwiftUI进行包装&#xff0c;返回的是U…

C++11 数据结构7 队列的链式存储,实现,测试

前期考虑 队列是两边都有开口&#xff0c;那么在链式情况下&#xff0c;线性表的链式那一边作为对头好呢&#xff1f; 从线性表的核心的插入和删除算法来看&#xff0c;如果在线性表链表的头部插入&#xff0c;每次循环都不会走&#xff0c;但是删除的时候&#xff0c;要删除线…

echarts 双堆叠柱状图(数据整理)

1.后台返回的数据格式 {"code": "0000","message": "","messageCode": "操作成功","sign": null,"detail": null,"data": {"pieChart": [{"key": "产品…

C语言--基础面试真题

1、局部变量和静态变量的区别 普通局部变量和静态局部变量区别 存储位置&#xff1a; 普通局部变量存储在栈上 静态局部变量存储在静态存储区 生命周期&#xff1a; 当函数执行完毕时&#xff0c;普通局部变量会被销毁 静态局部变量的生命周期则是整个程序运行期间&#…

基于51单片机的电子秤LCD1602液晶显示( proteus仿真+程序+设计报告+讲解视频)

基于51单片机电子秤LCD显示 1. 主要功能&#xff1a;2. 讲解视频&#xff1a;3. 仿真设计4. 程序代码5. 设计报告6. 设计资料内容清单&&下载链接 基于51单片机电子秤LCD显示( proteus仿真程序设计报告讲解视频&#xff09; 仿真图proteus8.9及以上 程序编译器&#xf…

深兰科技入选2024全国“人工智能+”行动创新案例TOP100

近日&#xff0c;中科院《互联网周刊》联合eNET研究院、德本咨询、中国社会科学院信息化研究中心共同发布了《2024全国“人工智能”行动创新案例TOP100》榜单。经评委会层层遴选&#xff0c;深兰科技专为洛阳市打造的“工业智能化洛阳中心”项目成功入围该榜单。一同入围的还包…

高通发布电脑CPU,比英特尔Ultra9领先51%

要说2024年最热门的关键词&#xff0c;那肯定非 AI 莫属&#xff0c;当前 AI 已经开始深入各行各业&#xff0c;AI 电视、AI 手机、AI 车机、AI 家电&#xff0c;以及 AI PC ,这些都意味着 AI 将对各个行业带来的新风向和不小的冲击。 2024 年了&#xff0c;PC 处理器还能卷出什…

安居水站:自来水安全性影响因素分析及监测管理对策

摘要&#xff1a;自来水作为人们日常生活的重要组成部分&#xff0c;其安全性直接关系到公众健康。本文深入探讨了可能影响自来水安全性的多种因素&#xff0c;包括水源污染、水处理工艺、供水管网问题、二次供水设施维护不当、工业及农业污染、重金属和微生物污染、季节变化以…