CentOS软件那么老为什么大家还要用它?
作为一个专业的服务器系统,RHEL 系统理论上每一个软件包都有 RedHat 内部的人员负责维护,这个维护包括长期(和系统生命周期一样长)的开发、更新、测试、运维等。也就是说你能从 RHEL 系统源上获得的每一个软件包,出现问题都可以找 RedHat 负责。所以 RHEL 不可能无限制的扩充自己的软件库,不能信手拈来想加什么就加什么,因为加进来是要负责的,是对应相应的人力成本的。所以软件源的规模必须受到限制,企业级用户特别需要的才会有,可有可无的都要评估一下哪个可以加进来哪个不要。这绝对不是普通的桌面用户群所期望的,因为普通的桌面用户群体的宗旨是 “多多益善,我可以忍受不严重的 bug,但是你不能没有我要的功能软件”。比如你如果没有可以解码播放 rmvb 等格式的播放器,那我是肯定忍不了的。但是如果你提供,只是有一点点广告或者有一点 bug,那我是没问题的,比完全没有要强百倍。
而 CentOS 的软件源的匮乏程度比 RHEL 可能强一点,毕竟它可以不需要对 “甲方爸爸” 负责,所以稍微大胆点多加点东西是能理解的。但是受到系统老旧程度和人手限制,能加的也有限。毕竟很多人只是用 CentOS,但是肯为 CentOS 打包维护更多软件的人凤毛麟角。
软件 “老” 而且会越来越 “老”
一个服务器系统的生存周期非常长,动不动就是十年起步。组成系统的软件在系统构建初期就订下了基线版本,比如在 RHEL-7.0 初次构建的时候选择的 gcc 版本是 4.8,那么即使到现在 (2021 年 11 月)上游最新的 gcc 版本已经更新了 11.2,RHEL-7 最新的系统上的 gcc 仍然是基于的 4.8 版本。虽然应用户需求,中间 backport 了很多修复性和新特性的 patch,但是单论特性肯定还是不能和 11.2 版本比的。这就是为什么说软件老,且越来越老的原因。
那么作为一个普通的桌面用户,如果你想使用新版 gcc 上的某些特性,你会发现自己既没有能力完美的单独更新系统的 gcc 到最新(因为受到其它软件包依赖的限制),也极少有人有能力单独把需要的新特性所对应的代码 backport 到老版本上来增强特性。这样的窘境就完全限制住了用户所能 “享受” 的功能和特性的范围。系统已经生存的时间越久,被限制的越死。
CentOS 和 RHEL 一样的,即使 CentOS 的人有意翻新一些软件的版本,它们绝大部分情况下也无能为力,因为 CentOS 还要随着 RHEL 走呢,所以没法偏离的太远,否则它自己没有那么多人力单独维护。
综上所述,“CentOS 软件那么老为什么大家还要用它?” 这个问题中的 “大家” 就包括了两类人。一类是没有必要用但是瞎跟风才用的。另一类是需要用的。
没必要用但是瞎跟风用的人群
这类人多以新人为主,因为 RHEL(及其下游系统)作为现在最主流的服务器系统,每一个想要入行 Linux 的人基本都会被告知应该从此学起,特别是网上众多的教程、帖子也多是围绕 RHEL 类系统。而 RHEL 系统又是收费的,一般人用不到,于是免费的 CentOS 作为 RHEL 的克隆版就被不明所以的新人误以为是 “免费的 Linux 旗舰版”。好像有一种 “我花 4000 元买的课程免费给大家下载” 一样的 “不赚白不赚” 的喜悦。
殊不知 RHEL 或者说 CentOS 对于普通的桌面用户来说 “又老又资源匮乏”,所以这类用户用久了之后就会发现,周围仍然有很多人在不明所以的安利 CentOS 类系统,但是自己用起来又觉得 “不好用”,于是在心底里产生了 “CentOS 软件那么老为什么大家还要用它?” 的疑问。
但是这个问题为什么没有形成规模,可能是因为大部分人迫于周围很多人都在说 CentOS 好,而自己如果体会不出 CentOS 的好,特别是还问出来,那会显得自己很 Low。
需要用的人群
作为专业的服务器操作系统,RHEL 确实是值得服务器用户使用的。企业级用户就不用说了,某些个人用户也有需要使用面向服务器的操作系统的时候。虽然我上面说 RHEL/CentOS 类的系统对于普通桌面用户来说不好使,那是因为普通桌面用户最主要的需求是系统没有严重 bug 的情况下提供越多越新的功能越好。但是需要服务器系统的用户的需求则是系统能持续稳定运行的时间越长越好。
比如我有一个笔记本电脑,我平时用它办公、浏览网页、看视频、打游戏等,我对它上面的系统的需求就是:
给我提供尽可能多的软件资源能让我选
让我能不费力的跟着享受当前非常新的很多软件特性
即使某个软件或某次更新有 bug,但系统只要维持 1 天以上不死机就可接受。因为基本上我晚上睡觉就关机了,坚持到下次修复没什么困难。
同时我在远处的某个地方还有一台工作机,这个工作机我需要它跑很多定时执行的任务,需要它长期维持某些程序的运行。这个 “长期” 可不是一两天的事,甚至一两个星期都不行,而是以年甚至更久为单位。如果能做到一次开机到死不用重启最好。
我给这个工作机装的一个不算新的 RHEL8 系统,除了非公司大楼停电,它基本没死机重启过。而上面我跑了很多虚拟机,我在这些虚拟机里面装了各种系统,有能支持更多新特性的 Fedora 系统,有比较稳定的 CentOS 系统等。而这个 host 主机上的系统只要能维持稳定,并支持我运行这些虚拟机(或容器)就可以。
相关文章:
CentOS软件那么老为什么大家还要用它?
作为一个专业的服务器系统,RHEL 系统理论上每一个软件包都有 RedHat 内部的人员负责维护,这个维护包括长期(和系统生命周期一样长)的开发、更新、测试、运维等。也就是说你能从 RHEL 系统源上获得的每一个软件包,出现问…...
聚观早报|飞猪:五一出游需求爆发;特斯拉一季度盈利同比跌20%
今日要闻:飞猪:五一出游需求爆发;特斯拉一季度盈利同比暴跌20%;郑渊洁永远不再发表作品;KargoBot推出无人化自动驾驶卡车;中国6G通信技术研发取得重要突破 飞猪:五一出游需求爆发 4 月 19 日&a…...
Redis缓存雪崩、穿透、击穿
Redis缓存雪崩、穿透、击穿 解决方案正常的缓存流程Redis缓存雪崩Redis缓存雪崩解决方案 Redis缓存穿透Redis缓存穿透解决方案 Redis缓存击穿Redis缓存击穿解决方案 解决方案 布隆过滤器,分布式锁 正常的缓存流程 Redis缓存雪崩 Redis中的key大面积失效࿰…...
不要老盯着ChatGPT,这几家公司的产品同样不容小觑
Adept.ai 2022 年成立,致力于一款能够代替人类使用电脑、操控软件的AI助手,旗下模型 ACT-1 还处于雏形阶段,但根据官方示例,已经可以完成通过自然语言指令完成特定的任务。公司创始人曾任OpenAI的工程副总裁,后来进入谷…...
DataBinding 大坑总结(网上我暂时搜不到解决方法)
在使用多Module中使用DataBinding会引发一些奇怪的问题,最近好好的腾出时间来折腾这些奇怪的问题: 1:如果当Module启动DataBinding重启AS启动报错的话,就启用允许多行代码 android { defaultConfig {multiDexEnabled true} } de…...
Linux I/O复用函数的使用情况和select接口的介绍
I/O 复用使得程序能同时监听多个文件描述符,这对于提高程序的性能至关重要。通常, 网络程序在下列情况下需要使用 I/O 复用技术: 1.TCP服务器同时要处理监听套接字和连接套接字 2.服务器同时要处理TCP请求和UDP请求。 3.程序同时要处理多个套…...
leetcode:数字转换为十六进制数(详解)
前言:内容包括:题目,代码实现,大致思路,代码解读 题目: 给定一个整数,编写一个算法将这个数转换为十六进制数。对于负整数,我们通常使用 补码运算 方法。 注意: 十六进制中所有字…...
Android 10 设置人脸解锁时,锁屏显示人脸解锁图标
Android 10设置人脸解锁时,锁屏解锁图标不会显示人脸图标,若想显示人脸图标,可参考以下两点进行修改: 1.此处引用人脸图标资源,请参考如下修改: diff --git a/packages/SystemUI/src/com/android/systemui/…...
【嵌入式环境下linux内核及驱动学习笔记-(5-驱动的并发控制机制)】
目录 1、上下文和并发1.1 上下文1.2 共享与临界内核中并发控制机制分为以下几类:并发控制机制的使用场景: 2、 并发控制机制--中断屏蔽3、并发控制机制--原子变量3.1 相关函数原子量类型a.设置原子量的值b.获取原子量的值c.原子变量加减d.原子变量自增自…...
必学宝典 黑马《最新JavaWeb开发教程》上线
对于程序员,所在的行业更迭实属过快,如果是为了找一份好工作,学技术前一定要先了解技术在市场中的需求情况。不然等你学完之后,才发现自己学了已被淘汰、过时的技术,白白浪费了宝贵的学习时间,后悔都来不及…...
【社区图书馆】学习如何读书
人类社会只有发明了发明的方法之后才能发展。同样道理,你们只有学习了学习的方法之后才能进步。 ——查理芒格 进了开发的门,从一开始就在查文档、百度搜 bug 解决的文章、买书,读书。买了很多很厚的工具书,然后拿来垫桌子。再然后…...
CO02工单组件,新增/删除/修改
REPORT zpp153. 事务代码: ZPP153-整散车生产订单自动调整程序名称:ZPP153-整散车生产订单自动调整程序目的:ZPP153-整散车生产订单自动调整开发人员: *(修改日志)--------------------------------------------------------日志号…...
MIT6.824 lab3AB记录
实验目标:基于raft日志复制算法实现的线性一致性kv存储引擎。 线性一致性: 所有的读操作都能够读取到最近一次写操作的结果。所有节点(或者进程)在同一时刻,看到的数据都是相同的。 简而言之,线性一致性…...
一分钟了解美国棒球体系·棒球1号位
美国棒球体系是一个庞大且复杂的体系,涵盖了从青少年到职业的各个层次。下面是美国棒球体系的主要组成部分: 1. 青少年棒球(Youth Baseball) 美国的青少年棒球体系包括各种地区和全国性的联盟,如Little League、Pony…...
通过ObjectMapper和JsonNode 把JSON字符串转换成树结构数据和获取树节点数据
一.简介 今天同事有个需求,要把一个JSON字符串转换成一个树结构的数据并获取节点数据,鉴于自己不想写递归去转换,于是使用ObjectMapper和JsonNode类去实现。 二.依赖 pom文件引入依赖: <dependency><groupId>com.…...
鉴源论坛 · 观模丨面向界面的图形化测试技术
作者 | 熊一衡 华东师范大学软件工程学院博士 苏亭 华东师范大学软件工程学院教授 版块 | 鉴源论坛 观模 01 什么是面向界面的图形化测试(GUI Testing) 图形用户界面(GUI) 是一种通过图形化方式呈现信息、数据、功能和操作的用户界面,旨在…...
Midjourney以图生图的详细教程(含6种案例介绍)
🏆 文章目标:学习并介绍Midjourney以图生图的详细教程 🍀 Midjourney以图生图的详细教程 ✅ 创作者:熊猫Jay 🎉 个人主页:Jay的个人主页 🍁 展望:若本篇讲解内容帮助到您,…...
基于单片机的电路特性测试仪的设计
摘 要 当今社会科技的飞速发展,智能和便捷已经成为人们的日常诉求。现在放大电路在使用过程中经常出现故障,并且需要测试电路数据,但是大多数是手动进行测试,一定程度上影响了工作效率。 为了测量数据更安全更便捷,针…...
五一将迎2亿人次出行,君子签助力旅行社合规高效签旅游电子合同
近日,为规范旅游市场秩序,促进旅行社高质量发展,文旅部发布了《文化和旅游部办公厅关于进一步规范旅游市场秩序的通知》(下称《通知》),对旅游业提出了新的要求。 《通知》中规范了旅行社经营行为。旅行社要…...
IAP升级遇到的问题
文章目录 1. app程序在SystemClock_Config中跑飞2. 程序HAL_Delay中卡死3. 通过外部flash模拟的U盘没能被电脑识别4. 将bin文件拷贝到片内flash中失败5、APP程序跳转过后串口不能工作 这几天在STM32G473使用IAP升级的时候踩了不少坑 1. app程序在SystemClock_Config中跑飞 boo…...
基于OFA的智能写作助手:图文内容自动生成与问答
基于OFA的智能写作助手:图文内容自动生成与问答 1. 引言 你有没有遇到过这样的情况:手头有一堆产品图片,却不知道怎么写吸引人的商品描述;或者看到一张复杂的图表,想要快速提取关键信息却无从下手;又或者…...
Qwen3-VL-4B Pro行业案例:法律合同截图关键条款提取与语义摘要生成
Qwen3-VL-4B Pro行业案例:法律合同截图关键条款提取与语义摘要生成 1. 项目核心能力与应用场景 想象一下,你是一名法务人员或商务经理,每天需要审阅大量来自邮件、聊天记录或扫描件的合同截图。这些截图里包含了付款条款、违约责任、保密协…...
Unity 2022 LTS 实战:用NavMesh Agent和OffMesh Link,5分钟搞定一个会‘跳’会‘绕’的智能敌人AI
Unity 2022 LTS 实战:用NavMesh Agent和OffMesh Link打造智能敌人AI 在3D动作游戏中,一个只会直线追击的敌人往往会让玩家感到乏味。想象一下,当玩家精心设计的陷阱被敌人轻松绕过,或是敌人突然从高处跳下发动突袭时,游…...
当经典耦合器原理‘失灵’时:我在ADS里另辟蹊径优化90度电桥的实战记录
当经典耦合器原理‘失灵’时:我在ADS里另辟蹊径优化90度电桥的实战记录 射频工程师们对90度耦合电桥的设计规范早已烂熟于心——那些教科书上的理想模型、对称结构和完美参数。但当我在3.5GHz频段用Rogers 4003C板材实现时,仿真结果却总与理论预测相差甚…...
数据清洗提速37倍的秘密:Polars 2.0中arrow2内核的零拷贝cast、predicate pushdown与pl.scan_parquet深度调优
第一章:Polars 2.0 大规模数据清洗技巧 面试题汇总Polars 2.0 引入了更严格的惰性执行模型、增强的字符串处理 API 以及对空值语义的统一规范,使其在面试中成为高频考察对象。高频考点聚焦于内存效率、链式操作健壮性及跨类型转换的边界处理。高效处理缺…...
告别模糊深度图:用CREStereo的级联循环网络,搞定手机双摄的立体匹配难题
手机双摄立体匹配的工程突围:CREStereo如何重塑深度图细节 当你在智能手机上使用人像模式时,是否注意到头发丝边缘总会出现不自然的虚化断裂?这种"深度图模糊综合征"正是移动端立体匹配面临的典型挑战。不同于工业级双目摄像头&…...
如何用TradingAgents-CN打造你的AI投资顾问:5步构建智能交易系统
如何用TradingAgents-CN打造你的AI投资顾问:5步构建智能交易系统 【免费下载链接】TradingAgents-CN 基于多智能体LLM的中文金融交易框架 - TradingAgents中文增强版 项目地址: https://gitcode.com/GitHub_Trending/tr/TradingAgents-CN 作为一名有着十年投…...
MoviePy + Pygame实战:给你的游戏加个酷炫开场动画
MoviePy Pygame实战:打造游戏开场动画的完整指南 1. 为什么游戏需要专业级开场动画? 在游戏开发领域,第一印象往往决定了玩家是否会继续探索你的作品。一个精心设计的开场动画能够: 建立游戏世界观:通过视听语言快速传…...
Dalsa线阵相机采图实战:从FreeRun到编码器触发的保姆级配置流程
Dalsa线阵相机采图实战:从FreeRun到编码器触发的工业级配置指南 在工业视觉检测领域,线阵相机凭借其高分辨率、高速成像的特性,已成为印刷、纺织、板材检测等连续运动场景的首选方案。作为行业标杆的Dalsa线阵相机,其工作模式切换…...
Android 12 蓝牙权限适配指南:从经典到低功耗的全面解析
1. Android 12蓝牙权限变革全景解读 去年给医疗设备厂商做BLE固件升级功能时,突然发现测试机上的蓝牙扫描失灵了。排查半天才发现是targetSdkVersion升级到31后,沿用老权限方案导致的兼容性问题。这次踩坑经历让我深刻意识到,Android 12的蓝牙…...
