rm-rf /命令操作介绍

说明:使用过linux操作系统的都知道,linux系统是一个树状文件结构,不像Windows有盘区的概念,在linux里面,/表示文件的源头,根目录,所有的文件都在这个目录下。

在linux系统中,有一条非常危险的命令,rm -rf /,其中rm表示删除,-r表示递归,-f表示强制,/是根目录,连起来就是强制删除系统中的所有的文件。本文介绍在自己的个人云服务器上,执行该命令的效果,当然提前需创建好快照,以备回滚。

执行

直接敲,rm -rf /,提示是一条危险指令,需加上--no-preserve-root来执行

这样,创建一个alias,来通过一个自定义指令来执行,如下:

shell 复制代码
alias doomsday='rm -rf / --no-preserve-root'

doomsday来触发。命令开始执行了,提示有一些文件不能删除;

执行完毕,有一些文件没被删除,可在windterm左侧的资源管理器中查看。

执行后,发现linux命令完全不能使用了,因为linux命令在系统中也有对应的文件的,显然那些命令文件也被删除了。

综上,使用该命令系统就废了,如果是公司系统,人就废了。

避免

如何来避免用户操作这么危险的命令,我能想到的有两种方法:

方法一

对能接触到系统的程序员或系统管理员,声明该命令的危险性,对这些成员进行岗前培训,约定相应的规范。

方法二

alias该命令,把rm -rf /命令alias成对系统无害的命令,如切换到当前用户的home命令,或者打印一条"警告信息"

shell 复制代码
alias rm='rm_func(){ if [ "$1" == "-rf" ] && [ "$2" == "/" ]; then cd ~; else /bin/rm "$@"; fi; }; rm_func'

切换到当前用户的home目录下

或,打印一条警告信息,警告信息文件存在/tmp/warn.txt里,内容可自定义

shell 复制代码
alias rm='rm_func(){ if [ "$1" == "-rf" ] && [ "$2" == "/" ]; then cat /tmp/warn.txt; else /bin/rm "$@"; fi; }; rm_func'

如下,更新完需要source .bashrc,更新一下文件

总结

本文介绍了在Linux操作系统中的rm -rf /命令,参考下面这篇文章:

首次发布

hezhongying.blog.csdn.net/article/det...

相关推荐
腾讯云云开发5 小时前
腾讯云 CloudBase 登上 WAIC:我们为 Agent 重新设计了云的生产线
后端
星栈5 小时前
从装一堆工具到看懂 Node 工程化思维:我的项目复盘记录
后端·node.js
Kina_C6 小时前
Linux iptables 防火墙原理与实操——从四表五链到 NAT 配置
linux·运维·服务器·iptables
65岁退休Coder6 小时前
LangChain v1.3.4 笔记 - 05 Agent 上下文记忆
后端
颜酱6 小时前
04 | 召回前置准备:搭好召回所需的四个数据库
前端·人工智能·后端
wdfk_prog6 小时前
嵌入式面试真题第 15 题:不可恢复异常后的通用崩溃快照、调用栈保存与离线分析架构
linux·开发语言·面试·架构
JaneConan6 小时前
鸿蒙 韶非 UI 系列:能力调用 startAbilityForResult,跳能力拿回参,鸿蒙能力路由入门
后端·harmonyos
晴空了无痕6 小时前
从 Go 基础到 K8s:一条可落地的 Go 服务端成长路线
开发语言·后端·golang·kubernetes
用户8356290780516 小时前
如何使用 Python 在 Excel 中添加、编辑和删除超链接
后端·python
花椒技术6 小时前
原本要 2 天的服务端冒烟前置审查,为什么 3 分半就能出报告?|QA 质量交付实践(三)
后端·ai编程·测试