测试你的程序是懦夫的行为

bumblebee的一个空格引发的悲剧 一个空格也能使系统瘫痪?开源项目 bumblebee ,程序的安装脚本install.sh的一个Bug让这个项目成了大家关注的焦点,执行install.sh后,用户的/usr目录直接被删除。 最有趣的是全世界的程序员对这个Bug的强势围观评论。 阅读详情

bumblebee是一个开源项目,这个名字也就是变形金刚里的大黄蜂,这个项目是这样介绍自己的——

bumblebee is Optimus support for Linux, with real offloading, and not switchable graphics.. More important.. it works on Optimus Laptops without a graphical multiplexer..

其实我一开始也不知道什么是bumblebee,只知道它是大黄蜂的名字,现在差不多全世界的程序员都知道这个项目了,

只是因为一个bug,

或者说只是因为install.sh安装脚本中的一个bug,

再或者说,只是因为一个在install.sh安装脚本中多写了一个空格的bug,

就是这个bug,突出了一句话,就是我的标题了,


@@ -348,7 +348,7 @@ case "$DISTRO" in
-  rm -rf /usr /lib/nvidia-current/xorg/xorg
+  rm -rf /usr/lib/nvidia-current/xorg/xorg

就是上面的脚本,是的 - rm - rf ,这是我几乎从来没有用到或者说从来没有敢贸然使用的命令之一,幸好我用的不是N卡,幸好没有安装bumblebee,如果不幸安装了,那也就只能

永别了大黄蜂。


下面引用自 coolshell,表示很多程序员对这个问题都十分乐观,话说一开始我也笑的前仰后合!


不过,最精彩还不是这个bug,而是全世界程序员的对这个bug 的 code review comments,真的相当的欢乐。请强势围望!

https://github.com/MrMEEE/bumblebee/commit/a047be85247755cdbe0acce6#diff-1


学习 WebService:在Local创建测试用WebService(WSDL) 当然,如果程序写的不好,控制台的输出就不是期望的样子(如本例),但起码能看到Request和Response的响应。5、WebContent目录下生成一个wsdl目录,在wsdl目录下,看到类名.wsdl文件(TestWS1.wsdl)我们要创建一个SOAP WebService,主要是测试用,模拟API接口(谁让远程服务总是不好用呢)4、在TestWS1.java上→右键→WebService→WebService创建。如果控制台有输出,说明 测试成功,WebService没有问题。3、创建一个服务类。 阅读详情

相关推荐

Openwifi 开源项目解读(一)

Openwifi wifi 80211 无线网卡 基带 FPGA linux 驱动 开源

2万+

linux高危指令,那些极度危险的Linux命令

在Linux中有些命令可能功能强大,方便快捷,但是这些命令在测试环境中可以使用,在生产环境上则要慎之又慎,还有些命令本身就是危险的,运行前一定要三思。工作中输入命令举一个开源社区非常有名的因为空格造成惨痛教训的案例,开源项目叫bumblebee,这个项目本来不出名,不过程序在其安装脚本install.sh里的一个bug让这个项目一下子成了全世界最瞩目的项目,这个bug的fix如下:@@ -348,...

weixin_39624389的博客 1486

基于CRU和WorldClim的高分辨率(1km)气候数据生成

基于CRU和WorldClim的高分辨率(1km)气候数据生成

lhq7842955的博客 1693

一个空格引发的惨案--bumblebee事件

bumblebee是一个托管在github的开源项目,最近这个项目代码有一次commit,引起了民工们的轰动,见 https://github.com/MrMEEE/bumblebee/commit/a047be85247755cdbe0acce6#diff-1 真是一个空格引发的惨案。 项目代码的测试,是非常重要的环节,看看package要进入Debian stable的难度,就...

a923304245的博客 1129

操作系統恐龍書第十版課後答案CH10

課後

apple_72111807的博客 4046

5分钟搞定PaddleOCR PP-OCRv5环境搭建:从安装到第一个识别Demo

本文提供了一份详细的PaddleOCR PP-OCRv5环境搭建与快速入门指南。通过清晰的步骤,指导读者在5分钟内完成从创建Python虚拟环境、安装PaddlePaddle框架和PaddleOCR库,到编写并运行第一个OCR识别Demo的全过程,帮助开发者快速体验最新的PP-OCRv5模型的文字识别能力。

sprite的博客 1267

如何写出无法维护的代码

酷壳里有很多我觉得很不错的文章,但是访问量最大的却是那篇《6个变态的Hello World》,和它能在本站右边栏“全站热门”中出现的还有“如何加密源代码”,以及编程真难啊等这样的文章。可见本站的读者们的偏好,我也相信你们都是“身怀绝技”的程序员。所以,今天给大家推荐这篇文章,相信一定能触动大家的兴奋点。这篇文章的原文在这里(http://mindprod.com/jgloss/unmain

Jackie 的专栏 1235

TI 实时操作系统SYS/BIOS使用总结

1:概述: SYS/BIOS 是一个可扩展的实时的操作系统。具有非常快速的响应时间(在中断和任务切换时达到较短的延迟),响应时间的确定性,强壮的抢占系统,优化的内存分配和堆栈管理(尽量少的消耗和碎片)。能够实现系统的模块化并可裁剪。 最大的特点就是:实时。 2:XDCtools: XDCtools 是SYS/BIOS引用的一种实时的软件组件技术(RTSC),它包括一些有用的工具,标准的AP

带头奋青的博客 5万+

产品经理必读:敏捷开发中的需求管理过程全解

产品的源头是需求。一切伟大产品的实现都是从需求管理开始的。敏捷开发中的需求管理大致分为三个阶段:需求调研,需求分析和需求确认。需求调研阶段产品立项后,产品经理便开始了和需求打交道的漫长过程。第一步就是需求的调研工作。需求调研的质量,会直接影响到后续产品设计的工作。产品经理可以从以下渠道来调研需求:(需求的来源)1.从产品定位出发从产品定位出发指的是,产品经理应当对自己的产品有足够认知和把控。简单来...

weixin_34290096的博客 1960

别再只调颜色阈值了!优化K210色块追踪性能的5个关键参数与实战技巧

本文深入探讨了K210色块追踪性能优化的五大核心策略,包括图像预处理参数精细调控、find_blobs参数进阶配置、运动控制算法升级、硬件时序优化以及可视化调试系统构建。通过实战技巧和参数调整方法,帮助开发者提升K210在色块追踪项目中的识别稳定性和响应速度,适用于云台追踪等应用场景。

weixin_42531588的博客 225

详解Σ-Δ型ADC拓扑结构的基本原理

现在,总环路滤波器的H(f)具有更大的滚降,Mod 2型的噪声传递函数具有40 dB/十倍频程的上升速率。同样,当正弦波输入为负满量程时,+1和–1之间的转换会减少,输出以–1为主。噪声传递函数是一个高通滤波器函数,提供噪声整形,在DC附近的较低频率,对量化噪声有很强的抑制。H(f)是环路滤波器的函数,定义噪声和信号的传递函数。Σ-Δ型ADC的噪底由热噪声决定,而不受量化噪声的限制。量化噪声为量化器的输入与输出之差。图5. Mod 1 Σ-Δ环路的线性模型(b),包括方程、滤波器、信号和噪声传递函数图。

qq_43416206的博客 1810

为什么全都来当测试/开发程序员?最吸引人的地方......

为什么全都来当测试/开发程序员?烦躁现在的程序员群体是我了解的人中最烦躁的一种。他们大多干了三年到五年,就觉得自己到了技术的瓶颈,不知道再做什么好。其实他们很了解要学什么,就是认为那些都用不上,或者认为学起来太费事。所以只能在自己三年、五年积累的技术圈子里打转,一遍遍的重复着做项目,直到认为自己到了担忧的年龄,最后转管理,带项目。每个行业都基本是这个套路,刚入行的几年,努力学习,一段时间后觉得自己已经掌握了很多东西,就放缓了学习,虽然知道还有很多东西要学,但是都不会太着急。...

m0_70102063的博客 455

解锁RK3588 HDMI输出:分辨率与EDID的深度探索

本文详细探讨了瑞芯微RK3588处理器的HDMI输出分辨率配置与EDID解析技术。文章首先介绍了RK3588处理器的性能特点及其HDMI功能在多媒体和工业领域的应用价值,随后分别阐述了HDMI输出分辨率的硬件连接要求和软件配置方法,包括4K/8K等不同分辨率的配置实例。在EDID部分,深入解析了EDID的数据结构、交互机制,以及数据获取与修改的具体方法。最后总结了配置过程中常见问题的解决方案,并展望了RK3588在高分辨率显示领域的发展前景。全文为开发者提供了RK3588 HDMI显示配置的完整技术指南。

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 592

java的消息机制协议_activemq的消息存储机制 - 幸福的懦夫 - JavaEye技术网站

/*** 转载请注明作者longdick http://longdick.javaeye.com**/ActiveMQ是当下最流行和强大的开源企业消息集成组件。ActiveMQ性能优良,支持多种跨语言的客户端和协议,支持JMS1.1和J2EE1.4,易于使用并且特性多多。ActiveMQ基于Apache 2.0 License软件协议。当前最新版本为5.2.0最新特性:多语言多协议支持,J...

weixin_36312301的博客 172

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

如何写出让同事无法维护的代码?

点击蓝色“五分钟学算法”关注我哟加个“星标”,天天中午 12:15,一起学算法原文:http://mindprod.com/jgloss/unmain.html译者:陈皓...

程序员吴师兄的博客 256

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

基于深度强化学习的《街霸2》AI通关实战:从像素输入到策略优化

深度强化学习是人工智能领域的重要分支,它通过智能体与环境的持续交互来学习最优决策策略。其核心原理在于利用神经网络逼近值函数或策略函数,并通过梯度下降优化长期累积奖励。这项技术的核心价值在于能够解决高维状态空间和复杂动作序列的决策问题,特别适用于游戏AI、机器人控制等场景。在游戏AI领域,从原始的像素输入中学习控制策略已成为研究热点,它模拟了人类玩家“观看-决策”的过程。本文以经典格斗游戏《街头霸王2》为实验环境,详细阐述了如何利用近端策略优化(PPO)算法,通过精心设计的奖励函数解决训练中的“懦夫问题”,并

weixin_30889885的博客 272

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

论一个 bug 如何经过千难万险占领线上

每一个在线上逍遥法外的 Bug,都不是偶然。它是一场精心策划的奇迹,是开发、联调、测试、上线四大环节“完美”配合的杰作。下面,就让我们复盘一下,如何倾团队之力,将一个 Bug 护送至线上,享受荣华富贵

zhichaosong的博客 1157

七夕快到了,你怎么还不向我表白?

Hi,大家好。只有把整年的日历翻开,才会猛然发现:哇!每个月都有一个不同主题的情人节。

自动化测试技术栈 704

如何写出让同事无法维护的代码?63个小技巧

混乱你的代码。使用XML。XML的强大是无人能及的。使用XML你可以把本来只要10行的代码变成100行。而且,还要逼着别人也有XML。(参看,信XML得永生,信XML得自信) 分解条件表达式。如:把 a==100分解成,a>99 && a<101 学会利用分号。如:if ( a );else;{ int d; d = c;} 间接转型 。如:把double转string,写成new Double(d).toString() 而不是 Dou...

xupeiyan的博客 705

一个空格引发的惨剧

你是否相信如果你的程序里没有检查一个变量会导致怎么系统瘫痪?无论你相不相信,这是我一个亲身经历过的案例,你可以在本站的程序员那些悲催的事儿 中找到很多这样的事。这样的事昨天在发生,今天同样在发生。Unix40多年 了,在这40年里,程序员发生过各种各样的的惨剧,但是大多数的事情一而再再而三的重演。 今天的你,可能在开发者各种各样NB的系统,你会相信你的一个空格也能导致系统瘫痪吗?也许你可能很...

再次喝咖啡 648

c++ tuple用法

元组是固定不可修改的复合类型,各元素类型可以不同。示例代码演示了std::tuple的基本用法:创建元组(t1,t2)、通过索引(std::get<2>)或类型(std::get<string>)访问元素、以及使用元组作为函数返回值(std::function)。元组适用于需要返回多个值的场景,如示例中返回姓名和年龄的组合。测试代码输出验证了元组元素的正确访问和输出。

u012116089的博客 237
上一篇: html5+css3制作的音频播放器小应用
下一篇: 今天的作业 java IO练习,一个山寨记事本,没什么技术含量
程序员迈克
博客等级 码龄16年 36粉丝 71原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值