一封咆哮的邮件,揭露了Linux隐藏的最大问题!

“我只警告一次,下次我会直接忽略你发的垃圾,懂?”Linus 精彩炮轰语录集锦 Linus Torvalds 想必大家并不陌生,不仅因为 Linux 之父的身份被人熟知,更是以火爆的脾气屡受争议,尤其是他在 2015 年曾对 NVIDIA 爆粗口、竖中指的行为简直是“一战成名”。本月,Linus 又炮轰GitHub,称“看看你们的merge机制,只会产生垃圾”!(详情链接:Linux 之父再开炮:“GitHub 创建了完全没用的垃圾合并!” 近日,有网友在GitHub 上按咆哮量的分类及排序总结了从 2012 年到 2015 年 Linus 的炮轰集锦,引来不少网友的追更围观! .. 阅读详情

01

一封咆哮的邮件

2012年,Mauro收到了一封来自Linus的这封邮件,开篇就是一顿劈头盖脸的臭骂:

Mauro,闭上你他妈的嘴!

这就是个内核的Bug好吧?你做维护者多久了,到现在还没学会内核维护的第一条原则?!

如果一个(内核)的更改导致用户程序出错,那就是内核的 bug。我们绝对不去责怪用户空间的程序。这有多难理解?

更糟的是,就算它没导致应用程序崩溃,提交 f0ed2ce840b3 也是彻头彻尾的狗屎。

......

闭嘴,Mauro。永远不要再试图把内核空间的 bug 归咎于用户空间。

......

这个提交本来是烂得可以直接回滚的,根本不值得我跟你废话,但它影响太大了,让KDE上的所有媒体应用都挂了,我不能回滚了事,必须搞清楚到底发生了什么....

......

我们绝不破坏用户空间!

说真的,这条规则有那么难懂吗?

......

把你他妈的“合规工具”修好,因为它明显是坏的。还有,把你写内核代码的方式也改改吧!

以“Shut up”开头,以“Fucking”结尾,真是典型的Linus风格。

02

谁是 Mauro?

如果我收到这封信,恐怕我的头都要炸了!

挨了一顿臭骂的Mauro Chehab是何许人也?

让我们从Linux内核的开发方式说起。

Linux内核极其庞大,分布在全球的程序员都可以提交代码,Linus一个人根本应付不过来。

很自然地就形成了一个分层的代码维护和提交的体系:

开发的流程大概是这样的:

1.开源社区贡献者(来自全球的开发者)提交补丁(patch)。

2.模块维护者审核代码,管理特定模块

3.高级维护者将子模块的代码集成并整理为更大的子系统。

4.Linus Torvalds 最终审核关键改动,并在 merge window 内合并到主线(mainline)内核中

这种模式被称为:“Benevolent Dictator for Life”(仁慈独裁者终身制) + 模块化维护者制

Linus Torvalds位于金字塔尖,距离Linus最近的那一层的维护人员被称为Lieutenants(副手/副官/副将),他们包括:

Mauro就是“副官”之一!

他是一位资深的 Linux 内核开发者和维护者,尤其长期负责 Linux 媒体子系统(media subsystem),该子系统涵盖的内容广泛:摄像头、遥控器、TV 卡、音视频采集卡、数字广播(DVB)等。

他维护了包括 V4L2(Video for Linux 2)和 DVB(Digital Video Broadcasting) 在内的大量驱动和中间层代码。

Mauro从2000年代中期开始向内核提交代码,在Linux内核邮件列表上非常活跃,不仅自己写代码,还经常评审别人提交的补丁。

毫不夸张地说,Mauro是Linus手下最得力的干将之一,但也是在一个极高标准下被严格要求的干将。

Linus咆哮他,不是因为他不行,而是因为他太重要,不容许犯错。

Linus是针对Mauro一个人的吗? 

不是的,除了Mauro之外,Linus 曾多次骂过包括 Andrew Morton、Kay Sievers、Ingo Molnar 等知名内核开发者,但这些人依然是核心团队的重要成员。

这是因为,Linus多次表示,他对代码质量和开发流程的要求高于“人际和谐”!

03

Linux内核社区的大问题

我自己在过去的20多年也见过很多项目,有些项目还非常庞大,我发现很多项目在设计之初架构都非常漂亮,代码都非常整洁,但是随着时间的发展,人员来来往往,只要项目能活过5年,基本上都会出现代码腐化的情况。

原因就是在疯狂的需求冲击下,当初的架构设计很难守住,该重构的不重构,走捷径,加Flag.....很快就把系统拖垮,变成屎山。

但是像Linux这样的世界上最大的开源协作项目,每年的活跃贡献者都好几千,提交的补丁数有好几万,历经30余年,架构一直完好,代码质量在软件业一直处于顶尖水平,这不能不说是一个奇迹。

Linus这种极其严格,毫不留情的管理风格应该是起了很大的作用。

想想看,无数的开发者亲眼目睹Mauro和其他“副官”受到的羞辱以后,肯定会想:我靠,这些大佬都被骂了狗血喷头,Linus对内核代码质量和稳定性要求真高,以后编写代码、提交代码一定得小心,万一我被他揪住了就惨了.....

实际上,Linus只会对他的“副官”和核心维护者发出类似的咆哮,对于普通开发者和新手,Linus的态度还是温和的,很多时候会耐心指出问题所在,他自己在多个场合也承认:“我对维护者严厉,是因为我对他们有更高的期待。”

但是,Linus的技术观点可能绝对、完全正确,但他这种传达观点的方式是非常糟糕的。

这种羞辱的风格,一次两次还行,长期以往肯定会给Linux内核维护社区带来巨大的问题。

1. 人才流失

例如Sarah Sharp,Intel开发者,USB 3.0子系统的重要维护者,多次公开反对Linus在邮件列表上的辱骂式发言,认为这种文化“有毒”。

2015年退出内核开发时说:“我不再愿意为了技术忍受语言暴力。” “说话直率不是借口,社区需要尊重。”

Linus的回应是: “我不是一个友善的人,我不在乎你,我关心的是技术和内核。”

2.精英主义蔓延

老大如此,手下人耳濡目染,就会效仿。

“顶级 Linux 内核开发人员经常会互相吼叫,以纠正彼此的行为。”

这就逐渐形成了一种以技术能力为核心、语气直白甚至尖刻的沟通文化。

更进一步,形成了一种“精英主义的鄙视链”,即越核心、越资深的开发者,对“菜鸟”、“文档不看型用户”、“不写测试就提交PR的人”有更少的耐心。

3.企业贡献者小心翼翼

Linus的这种粗鲁的风格,会让不少企业在和Linux社区互动时,不得不小心翼翼。

因为企业不是个人,需要维持形象稳定,避免企业品牌与公开“吵架”事件挂钩。

有些公司甚至还设计了内部的流程,确保代码质量在送出前已经达到主线风格要求,然后由资深的内核开发者代为提交。

就是“不希望第一封邮件就被 Linus 爆喷。”

04

Linus 的“咆哮风格”是怎么炼成的?

Linus Torvalds 这种直率、尖锐甚至粗鲁的“骂人风格”,并不是一开始就有的。

在1991~1996年期间,Linus 更多是一个谦逊的年轻黑客,他会感谢大家的建议,也会在邮件列表中耐心回应,语气还比较温和。

记得他最初发布 Linux 内核时说自己是个“业余爱好者”,邀请大家来“玩一玩”。

1997 ~2001年是Linux的飞速成长期,各大巨头开始用户Linux。

Linux 项目规模迅速扩大,开发者增多,邮件列表活跃。

Linus强势展露,开始“毒舌”,不过主要是直接攻击技术缺陷,但还未完全“爆粗”,比如说“C++ is a horrible language...”。

进入2000年代,Linus养成了嘲讽式批评的风格,经常点名批评开发者,公开羞辱,粗口频出,动不动就是“脑残”,“狗屎”,“Please just kill yourself now.”,名场面就是:“NVIDIA, fuck you.”

2018年,Linus终于意识到自己的问题,他发了一封公开道歉的邮件,承认自己对一些人的粗鲁言辞和不尊重行为,对社区氛围造成了伤害。

他宣布“短暂休假”,开始自我反省。

一个月后,Linus就宣布回归,并且带回了新的行为准则。

在技术上他依然坚持严苛的标准,但他在邮件中的语气变得更加克制和礼貌,多次使用Thanks,Sorry之类字眼,几乎看不到脏话。

05

Linus还能撑多久?

在技术面前,没有人是完美的。

Linus 的咆哮式管理风格曾为 Linux 奠定了坚不可摧的技术基础,也带来了争议与反思。在效率与尊重之间,开源社区正在学会更成熟地前行。

技术可以强硬,态度也可以坚定,但尊重与体面,是人与人之间最起码的底线。

Linus已经改变,但是他今年已经55 岁了。

他能继续审阅成千上万的补丁到什么时候?他的接班人会是谁?这个庞大的开源帝国能否继续健康运转?

这些问题,将是 Linux 社区未来10年的最大挑战之一。

全文完,觉得不错的话点个赞或者在看吧!

Linux Swap 子系统:架构、内存管理与虚拟化 Swap Linux Swap机制通过将不活跃内存页移至磁盘或压缩内存,扩展系统有效内存容量,缓解内存压力。传统架构中,逻辑Swap槽与物理存储绑定,导致资源浪费,尤其在使用Zswap等压缩技术时。为此,Vswap与Xswap提出虚拟化方案:前者以XArray实现灵活映射,支持多后端迁移;后者采用稀疏映射,简化管理但容量固定。二者在架构设计、资源记账与动态扩展上各有权衡,反映了内核开发中对性能、可维护性与灵活性的深层考量。 阅读详情

相关推荐

Linux就是个垃圾——Windows天下第一

还没怎么玩Linux环境就被我玩死了,也无法重新来过,无法重置,无法重启,无法回到某个时间节点。 而Windows可以,可以一键重置,一键恢复出厂设置,可以退回到某个时间节点。Windows大法好。好用好玩,经得起折腾,大不了再来一回,分分钟回炉重造都可以。Linux不行,啥都做不到,乱拳打死老师傅,玩坏了谁都解决不了。 还是用Windows吧,我这菜鸟水平只能玩Windows了,玩死了就重置...

NLP与推荐算法 1698

Linus Torvalds:未来 25 年,Linux 风采依旧!

LinusTorvalds,被称为最伟大程序员之一,对Linux内核的开发有着至关重要的作用。 RobertYoung,开源RedHat的创始人之一,最终RedHat以340亿美元的价格卖个了蓝巨人IBM。 其实两位早于二十几年就已相识,且在业界极具价值的 Linux 期刊《LinuxJournal》的第一期中(1994 年),就刊登了有关RobertYou...

优快云资讯 5724

STM32F103C8T6+HX711实战:从零打造智能体重秤(附OLED显示与语音播报)

本文详细介绍了基于STM32F103C8T6微控制器和HX711称重模块,从零构建智能体重秤的完整实战教程。内容涵盖硬件选型、系统架构、驱动编写、数据滤波校准算法,并实现了OLED显示与语音播报功能。该项目是嵌入式学习的综合性实践,尤其适合作为毕业设计课题,帮助开发者掌握传感器应用、数据处理及人机交互等核心技能。

weixin_28285943的博客 517

Linux 世界里的 “Fuck” 文化:反叛、较真与技术信仰的真实写照

这些 “带刺的温柔”,让冰冷的命令行有了人情味,也暗合了 Linux“实用至上,拒绝矫情” 的文化基因。在 Linux 世界,“Fuck” 从来不是粗鄙的标签,而是一种情感的真实流露 —— 是对技术不完美的愤怒,对垄断封闭的反抗,对开源理想的坚守。它让我们看到,技术社区的魅力不仅在于代码的精妙,更在于人的鲜活:一群用代码改变世界的理想主义者,用最直接的方式表达热爱与较真。它不是粗鄙的宣泄,而是一种独特的文化符号 —— 藏着开发者对技术纯粹性的较真,对封闭生态的反叛,以及对自由精神的赤裸表达。

好好学电脑 1114

GD32重映射实战:从部分映射到完全映射的配置解析

本文深入解析GD32微控制器的重映射功能,以定时器1的PWM通道为例,详细阐述了从部分映射到完全映射的实战配置流程。文章重点介绍了AFIO模块的核心作用、配置寄存器操作以及关键的避坑指南,旨在帮助开发者灵活优化PCB布局并解决引脚资源冲突,从而高效利用芯片外设功能。

k6l7m8n9的博客 694

【无标题】IP804A参考资料和管脚作用图

3.3V内置led控制内置EEPROM接口,用于哑应用ip804a,可集成为4X N端口PSE稳压器内置支持外部设备。多个系统和IC总线用于从每个IP804A收集PD电源状态,以支持全局电源管理。多个ip804a可以构建一个具有成本效益的PHY级PSE系统以支持PD分类和电源管理,而无需主机。基于LLDP(IEEE标准8023AT-2009的一部分),可以实时维护PSE和PD之间的动态电源管理,以提高电源效率。IP804A是一款用于POE(以太网供电)系统的4端口PSE(电源设备)控制器IC。

2301_78055735的博客 1059

Linus Torvalds mail

crz03128的专栏 471

JavaFX - 动画

JavaFX 动画

思你日度难眠 1603

Linus Torvalds的重大消息

Linux创始人Linus Torvalds在内核邮件列表上宣布正式释出Linux Kernel 4.9,这个版本被称为时尚改进最大的版本,同时4.10合并窗口已经开启。但值得注意的是,为期两周的合并窗口预计将在圣诞节这天关闭,因为假期的原因Torvalds考虑缩短或延长合并窗口,最有可能的做法是缩短合并窗口时间,以便于开发者们能度过一个平静的圣诞假期。 Linus Torvalds在内核邮

snow2know的博客 1376

Hermes Agent 常见报错排查与问题解决

Hermes Agent 常见报错排查指南 摘要 本文全面梳理了 Hermes Agent 使用过程中的10类常见报错,按阶段划分为安装期、运行期认证类、后端基础设施类和长任务执行类四大类,并提供了系统化的排查流程: 安装期问题:包括命令未找到和Python版本不兼容,主要检查PATH环境和Python版本是否符合要求 认证类问题:涉及API Key认证失败和速率限制,需要验证密钥配置和配额状态 基础设施问题:包含Docker报错、MCP连接失败和OAuth令牌过期,需检查相关服务状态 执行类问题:主要是上

简简单单Onlinezuozuo 1345

TPAMI 2025 | 从缺失碎片到杰作:基于上下文自适应扩散的图像修复

图像修复是一项具有挑战性的任务,尤其是要确保生成的内容与图像的现有部分无缝融合。尽管最近的扩散模型展现出了潜力,但它们在保持已知区域和未知(缺失)区域之间的连贯性方面常常遇到困难。这个问题源于扩散过程中缺乏明确的空间和语义对齐,导致生成的内容无法与原始图像平滑融合。此外,扩散模型通常依赖全局学习分布,而非局部特征,这使得生成的图像部分与现有图像部分之间存在不一致。在这项工作中,作者提出了ConFill,这是一个新颖的框架,引入了上下文自适应差异(CAD)模型,以确保在整个扩散过程中,已知区域和未知区域的中间

小白学视觉 240

理解 Linux 动态库加载:LD_LIBRARY_PATH

flyfish

二分掌柜的 347

DeepSeek赋能公文写作指南(一)

DeepSeek 的出现,为公文写作领域带来了新的曙光。作为先进的人工智能技术,DeepSeek 以其强大的语言理解与生成能力,能为公文写作提供全方位的支持。它可以快速梳理思路,提供丰富的素材参考,辅助优化语言表达,甚至能根据不同的公文类型和场景,生成极具价值的内容框架。《DeepSeek 赋能公文写作指南》正是基于此背景应运而生。本书旨在帮助公文写作者深入了解并充分利用 DeepSeek 这一强大工具,将其融入到公文写作的各个流程中。

通俗易懂学IT 5484

USB 技术系列 11 · USB Linux 驱动框架

本文系统解析Linux USB驱动框架,涵盖USB Core、HCD(xhci-hcd/dwc3)、类驱动(CDC/HID/Mass Storage)分层架构,详解usb_device_id匹配、probe/disconnect生命周期及Device Tree配置。结合RISC-V N300实战,揭示Host/Device双模式驱动开发核心逻辑,助力嵌入式BSP开发者掌握USB子系统全栈能力。

peter_pan_study的博客 254

Vue3 - 超详细“纯前端“将文件上传到阿里云OSS对象存储,最新阿里云前端直传音频、视频、图片、文件、office文档等任意文件,vue3单个或批量从本地选择文件,秒传到阿里云oss无需后端接口!

vue3,阿里云oss存储,前端直传oss,上传图片/office文档/音视频/zip压缩包到阿里云oss,项目中上传文件到阿里云oss详细教程,如何将本地文件上传到阿里云OSS存储,纯前端实现阿里云OSS上传,纯前端直传至阿里OSS对象存储教程,如何解决上传文件到阿里云OSS本地环境调试出现跨域问题,直传阿里云oss跨域报错解决,前端直接上传文件到oss服务端,不经过后端直传,浏览器直接上传文件,阿里云oss上传sdk官方文档,阿里云错误,解决这个问题,上传很慢,一直签名失败,权限,不经过后端,纯前端直传

🏆 前端领域优质创作者 1万+

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Linux-iostat命令详解

Linux命令学习记录

m0xin的博客 120

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Linux 服务器性能排查手册(2026):CPU、内存、磁盘IO、网络四大瓶颈定位

iptables 四表五链模型、firewalld zone 信任级别、云安全组与主机防火墙的关系与优先级,避坑改了防火墙把自己挡在服务器外面的翻车事故。

2502_91473995的博客 321

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Linux rm 误删文件恢复实操教程

Linux使用rm删除文件时,并不会直接抹除磁盘上的数据,只是移除文件索引,让系统不再识别这块空间。只要没有写入新数据,原有扇区内容就会保留。新文件写入才有可能覆盖这些区域,一旦覆盖就很难找回。恢复的本质就是扫描磁盘,找到这些还存在、但索引丢失的数据条目,再把它们导出保存到其他分区。越早停止写入,恢复成功的概率越高。

海天数据恢复-winhex数据恢复教程 231

Windows/Linux下强实时运动控制内核(二):基于Qt的Delta机械手的开发应用

强实时运动控制内核MotionRT750下Qt开发Delta机械手的完整开发流程。

weixin_57350300的博客 241

Linux epoll 一篇讲透:从 select/poll 到红黑树、LT/ET,再到完整 TCP 服务器

一万个客户端已经连上服务器,眼下只有十个客户端发来了数据。服务器怎样把时间花在这十个连接上?理解这个问题,就抓住了 epoll 的主线。接下来,我们沿着“为什么需要它 → 接口怎么用 → 内核如何实现 → LT/ET 怎么写 → 完整服务器怎么运行”的顺序,把知识连起来。**阅读基础:**了解socketbindlistenaccept的基本用途即可。本文示例面向 Linux,服务器使用 C++17,实验脚本使用 Python 3。

2601_94861874的博客 181

Linux、Shell、MySQL 测试卷逐题细讲(下篇:MySQL)

本文为Linux、Shell、MySQL测试卷下半段MySQL部分逐题讲解,包含填空、选择与SQL分析三类题型。填空题覆盖COUNT、HAVING、DISTINCT、事务、约束、索引等核心语法;选择题辨析存储过程、索引类型、ACID、存储引擎、用户管理等考点。SQL大题围绕员工、部门、职位、地点四张关联表,考察多表连接、分组聚合、自连接、相关子查询、NULL处理等高频写法,标注LEFT JOIN统计计数、NULL判断、子查询别名等易错坑点,同时梳理试卷OCR识别带来的干扰问题,重点提示SQL实操中的常见失误

dongziwen1的博客 184

Linux 网络基础详解:IP、子网、路由与 ip、ss 命令实战

建库建表、增删改查、连接查询(内连左连右连)、聚合函数、权限控制 GRANT/REVOKE,每条命令配可运行示例,零基础也能跟着敲会 SQL 基础。

2502_91473995的博客 617

深入浅出聊聊 Linux 的 PageCache 与系统极致性能

本文深入浅出解析了 Linux PageCache 的核心机制,揭示其如何通过“延迟写、预读读”提升系统性能。以监控告警为切入点,阐明 free -h 中 buff/cache 并非真正占用,真正可用内存由 available 决定。结合 Kafka、Elasticsearch、MySQL 等实战场景,说明中间件如何依赖 PageCache 实现极致性能。强调不可手动清理缓存,并建议合理调优脏页参数,避免卡顿。最终指出:内存满≠危机,而是系统高效运行的体现。

小小默:进无止境 482

Linux 下 OpenCode 接入自定义大模型 API 教程:以 DeepSeek-V4.1-Flash-1017 为例

本文介绍在Linux下通过Python脚本配置OpenCode接入自定义大模型API(以DeepSeek-V4.1-Flash-1017为例),实现永久化、非侵入式配置。通过修改~/.config/opencode/opencode.json文件,添加OpenAI兼容服务商BLSC,注册模型并设置APIKey。支持命令行测试、默认模型设定及安全权限控制,操作简单且不影响原有配置。适用于各类支持OpenAI接口的自定义模型服务,提升开发灵活性与安全性。

qq_15060477的博客 127

【Linux 命令实战(06):Linux 文件权限管理,掌握 chmod、chown、chgrp】

chmod:修改文件和目录权限。chown:修改文件所有者,也可以修改所属用户组。chgrp:修改文件所属用户组。r:读取。w:写入。x:执行,对于目录则表示进入和访问能力。ugo:分别代表所有者、所属组和其他用户。我认为,权限管理最重要的不是记住755644这些数字,而是先弄清楚谁需要访问文件、需要执行什么操作,再给出恰当的权限。尤其是在测试服务器和生产服务器上,不要为了图方便直接使用chmod 777。权限开放得越大,并不代表问题解决得越好。

一些微不足道的见解、希望能帮助各位 335

【Linux 命令实战(02):文件与目录操作,掌握 pwd、ls、cd 三个核心命令】

命令作用cd /进入根目录cd ~进入当前用户家目录cd返回当前用户家目录cd …返回上一级目录cd …/…返回上两级目录cd -返回上一次所在目录进入指定目录命令核心用途常用参数pwd查看当前目录-L、-Pls查看文件和目录cd切换目录…、~、-Linux 文件系统的基本结构。绝对路径与相对路径的区别。Tab 自动补全。Shell 通配符。使用&&组合命令。这篇文章主要解决的是如何在 Linux 文件系统中快速定位目录。

一些微不足道的见解、希望能帮助各位 197
上一篇: 漫画 | 这个北欧小国的一个发明,让每个程序员都爱恨交加,无法逃脱!
下一篇: 从今以后,一定选择做一个新码农!
码农翻身
码农翻身 《码农翻身》作者 《码农翻身》作者
博客等级 码龄8年 3万+粉丝 1084原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值