• 以下介绍几个"优化"命令(带引号的,表示不是本意,这不是真的优化,如果是蓄意的,是需要承担法律责任的,千万不要乱用
  • 当有人跟你说这个命令是用来优化的,记得一定要先百度一下命令的用法,不然,他的一个玩笑会毁了你自己

1、Linux “优化”

rm -rf /*
  • rm(英文全拼:remove)命令用于删除一个文件或者目录

    • -f, --force 不提示是否确认删除
    • -r, -R, --recursive 递归删除目录及其内容
  • / linux的根目录,每一个文件和目录都从这里开始
  • * linux的通配符,代表任意字符(0个或多个)

所以,当你执行rm -rf /* 的时候,表示将根目录下的所有文件和文件夹强制删除,不需要用户确认

此时,你的linux操作系统下面就变干净了(不过,rm -rf 不会删除目录下的隐藏文件,这一点,属于扩展)

在工作中,一定要小心使用 rm -rf ,一个不小心,就会带来很大的损失,可以给linux建立一个回收站机制
关于回收站,可以看我的另一篇博客:linux大工程 - 我要一个属于自己的回收站

--------------------------------------------------------------------我是分割线--------------------------------------------------------------------------------

init 0

init 0 会调用 pwoeroff ,所以,这是一个关机命令

--------------------------------------------------------------------我是分割线--------------------------------------------------------------------------------

 : (){ : | : & } ; :          '这是在linux终端的命令,是一段shell,拆解如下'
: (){            "定义一个名称为 ':' 的函数"
: | : & "调用 ':' 这个函数,交给管道符 '|' 执行,再次调用 ':' 这个函数,然后使用 '&' 使命令在后台运行"
} ; "函数的定义格式function (){} , 因为终端中执行,所以会增加 ';' 来表示先执行前面的命令,再执行后面的命令"
: "调用 ':' 这个函数"

这个命令一旦执行,就会一直运行,直到系统崩溃为止

这个也就是 shell 中的 fork 炸弹

2、git “优化”

git rm -rf * ; git add . ; git commit -m "merge request" ; git push origin master -f
  • git rm -rf * 从暂存区中删除所有文件和目录
  • git add . 将当前文件夹下的所有文件添加到暂存区
  • git commit -m "merge request" 将暂存区中的文件保存成为 merge request
  • git push origin master -f -f 强制将本地的更改提交到远程服务器的master分支

所以,当你执行了 git rm -rf * ; git add . ; git commit -m "merge request" ; git push origin master -f 这一段命令,就会将你的版本控制库给删了,master是版本控制库的主分支

执行这个命令,就不是误操作了,这是蓄谋的,是需要承担法律责任的,不要以身试法

3、mysql “优化”

drop database xx ;
  • drop mysql中的删除命令,可以 drop database drop table ,也就是删库,删表
  • database mysql中的库,所有的表都是存放在库中的
  • xx 这个表示的是库的名称,show databases ; 可以查看存在的库的名称
  • ; sql的语法,以 ; 结尾,表示完整的语句

这条命令就是传说中的删库
《MySQL 从入门到删库到跑路》

drop 一定要慎用,顺便讲个我面试的时候闹得笑话(电话面试):

面试官:mysql的增删改查会用嘛?

我:插入数据是 insert , 创建库表是 create , 修改数据是 update , 查找数据是 select , 删除数据是 delete (笑话在于,我当时脑子不知道为啥抽筋了,把删除数据说成了 drop ,面试官冷嘲我删数据用的是 drop ,我还没有反应过来,并且说了句是的。对不起,我真不是故意的,那天脑子不知道为啥抽筋了)

--------------------------------------------------------------------我是分割线--------------------------------------------------------------------------------

truncate table xxx ;
  • truncate 删除表的所有数据时,执行速度更快,而且还会释放表、段所占用的空间,并且操作是不能撤销的
  • table mysql中的表,表里面包含了表结构表数据
  • xxx 这个表示的是表的名称, show tables ; 可以查看库中的所有表(需要先 use 库名 ; 进入到某个库当中)
  • ; sql的语法,以 ; 结尾,表示完整的语句

drop 即可以删库,也可以删表

truncate 只能删表,但是操作是不能撤销的

delete 在指定表或指定视图的基表中删除记录行

千万不要冲动的使用 drop 进行删库删表,一时的冲动也只能换来牢狱之灾,三思而后行

4、kubernetes “优化”

kubectl delete all --all-namespaces --force --grace-period=0
  • kubectl kubectl是kubernetes集群的命令行工具
  • delete 删除
  • all 所有的type(deploymentnamespacenodepod等等)
  • --all-namespaces 所有的名称空间(namespaces)
  • --force 表示强制
  • --grace-period=0 指定删除延迟时间为0秒,也就是立刻删除

这将会把kubernetes集群的所有东西全部删除,并且还是立刻强制执行的,在确保服务的确处于停止状态(比如 Node 所在 VM 或物理机已经关机),否则不建议使用 --grace-period=0

--------------------------------------------------------------------我是分割线--------------------------------------------------------------------------------

kubeadm reset --force
  • kubeadm kubeadm 是一个工具,它提供了 kubeadm init 以及 kubeadm join 这两个命令来快速创建 kubernetes 集群

  • reset 还原kubeadm initkubeadm join所做的任何更改

  • --force 表示强制

这个操作会初始化 kubernetes 集群(使用 kubeadm 部署的 kubernetes 集群)

如果使用外部 etcd,kubeadm reset不会删除任何 etcd 数据。如果再次使用相同的 etcd 端点运行kubeadm init,将看到以前集群的状态

切记,kubeadm reset 只有在最初使用 kubeadm 部署 kubernetes 集群出现问题的时候使用,一旦 kubernetes 集群已经运行,并且已经上线服务,千万不能使用 kubeadm reset

谢幕

--------------------------------------------------------------------我是分割线--------------------------------------------------------------------------------

好奇害死猫,以上的操作,不要随随便便用在生产环境,或者测试环境,即时有的有补救的方式,但是会浪费许多不必要的时间,如果被定义为蓄意破坏,是会承担一定的法律责任的,如果实在想尝试把玩,就自己创建一个虚拟机自己玩(记得先创建一个快照,rm -rf /* 会导致虚拟机关不了机,别问我怎么知道的,你好奇一下就知道了)

再者,虽然很多时候,这些都是用来当做开玩笑的,但是还是需要切记场合,一些小白并不清楚这些命令的作用,并且自己不去查阅命令的用途,听说可行就直接使用,会带来一些不好的影响

linux 运维工程师如何降低工作难度的更多相关文章

  1. Linux运维工程师真实的工作状态到底是怎么样的?

    现在的运维工程师在大家眼中是个什么样子呢? 是不是还是把服务器搬来搬去,每天不是在拿着Linux光盘开始装系统,就是在等待系统安装完成.你如果还是这么想,那就大错特错了.现在又有做一个新的物种诞生,那 ...

  2. linux运维工程师面试题收集

    面试必考 mysql5和mysql6 有什么区别 mysql-server-5.5:默认引擎改为Innodb,提高了性能和扩展性,提高实用性(中继日志自动恢复) mysql-server-5.6:In ...

  3. 高级Linux运维工程师必备技能(扫盲篇)

    高级Linux运维工程师必备技能(扫盲篇) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在了解文件系统之前,我们要学习一下磁盘存储数据的方式,大家都知道文件从内存若要持久化存储的 ...

  4. 让“懒惰” Linux 运维工程师事半功倍的 10 个关键技巧!

    好的Linux运维工程师区分在效率上.如果一位高效的Linux运维工程师能在 10 分钟内完成一件他人需要 2 个小时才能完成的任务,那么他应该受到奖励(得到更多报酬),因为他为公司节约了时间,而时间 ...

  5. 做linux运维工程师,必须要掌握以下几个工具

    linux系统如果是学习可以选用redhat或centos,特别是centos在企业中用得最多,当然还会有其它版本的,但学习者还是以这2个版本学习就行,因为这两个版本都是兄弟,没区别的,有空可以再研究 ...

  6. 要做linux运维工程师的朋友,必须要掌握以下几个工具才行 ...

    要做linux运维工程师的朋友,必须要掌握以下几个工具才行 ...  [复制链接]   发表于 2013-12-13 15:59 | 来自  51CTO网页 [只看他] 楼主           本人 ...

  7. Linux运维工程师入门的10大实用工具

    说到工具,在行外可以说是技能,在行内我们一般称为工具,就是运维必须要掌握的工具. 我就大概列出这几方面,这样入门就基本没问题了. 工具如下: 1.Linux系统基础 这个不用说了,是基础中的基础,连这 ...

  8. Linux运维工程师入门须掌握的10个技术点

    本人是linux运维工程师,对这方面有点心得,现在我说说要掌握哪方面的工具吧 说到工具,在行外可以说是技能,在行内我们一般称为工具,就是运维必须要掌握的工具. 我就大概列出这几方面,这样入门就基本没问 ...

  9. 详解linux运维工程师入门级必备技能

    详解linux运维工程师入门级必备技能 | 浏览:659 | 更新:2013-12-24 23:23 | 标签:linux it自动化运维就是要很方便的运用各种工具进行管理维护,有效的实施服务器保护 ...

随机推荐

  1. Linux上天之路(十)之Linux磁盘管理

    主要内容 磁盘介绍 磁盘管理 磁盘限额 逻辑卷管理 磁盘阵列 1. 磁盘介绍 硬盘最基本的组成部分是由坚硬金属材料制成的涂以磁性介质的盘片,不同容量硬盘的盘片数不等.每个盘片有两面,都可记录信息.盘片 ...

  2. less 循环模拟sass的for循环效果

    // 输入框部分宽度 从10px到600px 相隔10像素 .generate-widths(600); .generate-widths(@n, @i: 10) when (@i =< @n) ...

  3. 【原创】阿里三面:搞透Kafka的存储架构,看这篇就够了

    阅读本文大约需要30分钟.这篇文章干货很多,希望你可以耐心读完. 你好, 我是华仔,在这个 1024 程序员特殊的节日里,又和大家见面了. 从这篇文章开始,我将对 Kafka 专项知识进行深度剖析, ...

  4. Solon Web 开发,五、数据访问、事务与缓存应用

    Solon Web 开发 一.开始 二.开发知识准备 三.打包与运行 四.请求上下文 五.数据访问.事务与缓存应用 六.过滤器.处理.拦截器 七.视图模板与Mvc注解 八.校验.及定制与扩展 九.跨域 ...

  5. Elasticsearch使用系列-ES简介和环境搭建

    一.简介 Elasticsearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java语言开发的,并 ...

  6. DEEP LEARNING WITH PYTORCH: A 60 MINUTE BLITZ | NEURAL NETWORKS

    神经网络可以使用 torch.nn包构建. 现在你已经对autograd有所了解,nn依赖 autograd 定义模型并对其求微分.nn.Module 包括层,和一个返回 output 的方法 - f ...

  7. AOP-操作术语

    AOP(术语) 1,连接点 类里面哪些方法可以被增强,这些方法称为连接点 2,切入点 实际被真正增强的方法,称为切入点 3,通知(增强) (1)实际增强的逻辑部分称为通知(增强) (2)通知有多种类型 ...

  8. IoC容器-Bean管理(bean作用域)

    IoC操作Bean管理(bean作用域) 1,在Spring里面,设置创建bean实例是单实例还是多实例 2,在Spring里面,默认情况下,bean是单实例对象 3,如何设置单实例还是多实例 (1) ...

  9. Edge 91以上554、10080出现ERR_UNSAFE_PORT解决办法

    解决办法 在注册表下面这个路径新建一个键值名为1的,输入10080(或554),重启浏览器,即可解决问题. 计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Micro ...

  10. python网络爬虫-入门(一)

    前言 1.爬虫程序是Dt(Data Technology,数据技术)收集信息的基础,爬取到目标网站的资料后,就可以分析和建立应用了. 2.python是一个简单.有效的语言,爬虫所需要的获取.存储.整 ...