CentOS软件那么老为什么大家还要用它?

2023-05-16

作为一个专业的服务器系统,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 主机上的系统只要能维持稳定,并支持我运行这些虚拟机(或容器)就可以。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CentOS软件那么老为什么大家还要用它? 的相关文章

  • 如何在命令行中使用带有 cut 的正则表达式?

    我有一些这样的输出ls alth drwxr xr x 5 root admin 170B Aug 3 2016 drwxr xr x 5 root admin 70B Aug 3 2016 drwxr xr x 5 root admin
  • 检测到的 JDK 版本:1.6.0-24 不在允许范围 1.7 内

    当我运行命令时 mvn clean package 我收到错误 Detected JDK Version 1 6 0 24 is not in the allowed range 1 7 如何修复上述错误 我尝试检查安装的jdk版本并得到了
  • 内存屏障和 TLB

    内存屏障保证数据缓存的一致性 但是 它能保证TLB的一致性吗 我发现一个问题 在线程之间传递 MappedByteBuffer 时 JVM java 7 update 1 有时会因内存错误 SIGBUS SIGSEG 而崩溃 e g fin
  • svn:无法打开请求的 SVN 文件系统

    我尝试在LAMPP环境中设置svn 我的 svn 存储库位于 var svn repos 以及repos目录属于root root 现在 当运行命令时 svn import test http localhost svn m init 我看
  • 在 docker 容器内挂载 nfs 共享

    有谁知道如何使用 centos 基础镜像在 docker 容器内挂载 nfs 共享 我试过这个命令 mount server dir mount point 并得到下一个错误 mount nfs rpc statd is not runni
  • gcc 找不到 cc1plus

    我正在尝试在 CentOS 6 上安装 python 包 pandas 但我遇到了 gcc 编译器问题 sudo pip install pandas creating build temp linux x86 64 2 7 pandas
  • 在 Linux 中向当前日期添加 x 秒

    我这里有两台 Linux CentOS 6 0 机器 我需要在当前日期时间上添加 或删除 5 秒 最后 我的两台机器都会有5秒的差距 一台时间正确 另一台或多或少有5秒 我知道我可以使用以下命令更改日期 date s DD MMM YYYY
  • phpMyAdmin + CentOS 6.0 - 禁止

    当我想访问我的 phpMyAdmin 时 我总是收到此消息 w3m localhost phpmyadmin Forbidden You don t have permission to access phpmyadmin on this
  • 在Linux中使用自定义规则在多个端口上运行的SSH服务[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在努力设置一台在多个端口上运行 SSH 服务的服务器 例如端口 22 和 5522 这些端口应该具有一组不同的规则 即 我们为端口 2
  • PHP 5.3.8 上的 Mime 类型检测失败并显示 fileinfo

    我在 CentOS 服务器上安装了 PHP 5 3 8 时 无法使用 fileinfo 检测简单 PNG 文件的 mime 类型 问题 基本上 如果我有以下代码 如您所见 该文件是 PNG 图像 文件的头字节已被检查并
  • 如何在 CentOs 中安装 php-xml

    我正在尝试在 CentOs 6 5 上安装 php xml 我输入命令yum install php xml 我收到此错误 Loaded plugins fastestmirror Loading mirror speeds from ca
  • 在 php.ini 上启用curl_exec

    我想运行带有curl 的php 脚本 但以下功能被 php ini 禁用 exec passthru shell exec 系统 proc open popen curl exec curl multi exec show source 我
  • 如何从 Mac OS X 交叉编译到 Linux x86?

    我正在运行 Mac OS X 10 5 8 并希望使用 GCC 4 1 2 为目标 CentOS 5 3 进行编译 我怎么能 编译GCC 4 1 2工具链及相关工具 使用该工具交叉编译目标 CentOS 5 3 任何帮助是极大的赞赏 最简单
  • Docker CentOS 映像不会自动启动 httpd

    我正在尝试使用 Apache 和 PHP 程序运行一个简单的 Docker 映像 如果我跑的话效果很好 docker run t i p 80 80 my httpd bin bash 然后手动启动Apache service httpd
  • 从现有虚拟机创建 docker 镜像

    我需要使用 CentOS 和 MySQL 创建 docker 基础镜像 但我已经有这样的虚拟机 没有docker 如何从现有的虚拟机创建基础 docker 镜像并在另一台带有 docker 的机器上使用它 虽然其他评论者正确地指出 将虚拟机
  • 在哪里可以找到 PHP 的错误日志文件?

    在哪里可以找到错误日志文件 我需要检查它们以解决安装后显示的内部服务器错误suPHP https wiki archlinux org title SuPHP 您可以使用lsof https en wikipedia org wiki Ls
  • MariaDB 10 CentOS 7 移动数据目录的问题

    CentOS 7 和 MariaDB 10 的全新 最小 安装 我有一个额外安装的镜像卷 我想将其用于数据目录 当 my cnf mysqld 被注释掉时 启动顺序正常并正常完成 我已经复制了数据 sudo cp R p var lib m
  • 缺少单独的调试信息,请使用: debuginfo-install glibc-2.12-1.47.el6_2.9.i686 libgcc-4.4.6-3.el6.i686 libstdc++-4.4.6-3.el6.i686

    CentOS 6 2 GNU gdb GDB 红帽企业 Linux 7 2 50 el6 当我使用 GDB 调试简单的 C 代码时 我看到以下警告 Missing separate debuginfos use debuginfo inst
  • CentOS目录结构是树形的吗?

    CentOS 上有相当于树的东西吗 如果你的 Centos 系统上没有安装 tree 无论如何我通常建议服务器设置使用最小安装磁盘 你应该在命令行中输入以下内容 yum install tree y 如果没有安装 那是因为您没有正确的存储库
  • proc_open() 失败并显示“权限被拒绝”

    我正在尝试使用proc open 执行程序并打印结果 但是 我不断收到 许可被拒绝 的消息 已将脚本和可执行文件的 chmod 设置为 0777 但无济于事 ini get safe mode 是假的 可能出什么问题了 我正在使用 Cent

随机推荐

  • set容器(c++黑马程序员笔记)

    3 8 set multiset容器 3 8 1 set基本概念 简介 所有元素都会在插入时自动被排序 本质 set multiset属于关联式容器 xff0c 底层结构是用二叉树实现 set和multiset区别 set不允许容器中有重复
  • map函数

    3 9 map multimap容器 3 9 1 map基本概念 简介 map中所有元素都是pair pair中第一 个元素为key 键值 xff0c 起到索引作用 xff0c 第二个元素为value 实值 所有元素都会根据元素的键值自动排
  • 解决Maven配置本地仓库路径不生效问题多个方法详解。(已成功解决自己遇到的问题)

    首先我尝试了很多种方法 xff0c 就是这个方法让我成功 xff0c 和大家分享一下 xff01 xff08 我用方法二成功的 xff01 xff09 maven本地仓库默认值 xff1a 用户家目录 m2 repository 由于本地仓
  • Servlet快速学习和Tomcat快速部署(web)

    Servlet快速学习和Tomcat快速部署 xff08 web xff09 一 快速入门二 执行流程三 生命周期四 Servlet体系结构五 Servlet urlPattern配置六 XML配置方式编写Servlet七 Tomcat快速
  • 蓝桥杯必备模板(python)

    蓝桥杯必备算法模板 xff08 python xff09 xff1a 前缀和模板差分模板二分双指针位运算最大公约数和最小公倍数模板判断质数和埃氏筛法模板唯一分解定理和质因数分解关系和模板快速幂并查集区间合并回溯算法模板 xff1a DFS
  • 蓝桥杯必备模块及常用操作(python)

    蓝桥杯必会模块 xff08 python xff09 xff1a 字符类型模块日期函数模块 常用 优先级队列itertools模块collections模块Bisect模块List 集合set 集合Math模块 字符类型模块 先看点常用但比
  • string的几个常见库函数

    文章目录 前言一 strlen直接求字符串长度二 strcpy用来赋值三 strcat追加字符串四 strcmp用于比较两个字符串五 strstr子串查找六 strtok应用七 加长度限制八 strerror 九 其他操作1 iscntrl
  • vector详解

    在开始学习C 43 43 的STL之后 xff0c 相信大家都学会通过查文档来了解一些库函数 xff0c 今天我来给大家介绍vector xff0c 从基本的使用到vector背后的源码实现 xff0c 迭代器等展开讲 xff0c 仔细阅读
  • 如何利用开源思想开发一个SEO友好型网站

    当你对一个网站进行 SEO 优化的时候 xff0c 不要期望你的努力能立即得到回报 耐心等待并更正内容营销策略 xff0c 最终会发现你的网站很受用户欢迎 下面就教你如何利用开源思维开发一个SEO友好型网站 xff01 首先 xff0c 你
  • 【STM32】串口通讯USART串口中断配置

    目录 STM32 USART 简介 程序编写 硬件接线 实际波形 STM32 USART 简介 STM32的USART通用同步异步收发器是一个串行通信设备 xff0c 可以灵活的与外部设备进行全双工数据交换 有别于USART xff0c 还
  • openmv第三天之标记跟踪

    AprilTag是一个视觉基准系统 感觉就是一个可以定位 校准帮助openmv来找到 定位的东西 官方解释的用处 xff1a 简单来说 xff0c 只要把这个tag贴到目标上 xff0c 就可以在OpenMV上识别出这个标签的3D位置 xf
  • 【A_star三维路径规划】A_star算法无人机三维路径规划【含Matlab源码 1387期】

    一 A star算法简介 0 引言 随着现代技术的发展 飞行器种类不断变多 应用也日趋专一化 完善化 如专门用作植保的大疆PS X625无人机 用作街景拍摄与监控巡察的宝鸡行翼航空科技的X8无人机 以及用作水下救援的白鲨MIX水下无人机等
  • 【路径规划】A_star算法机器人动态避障路径规划【含Matlab源码 1033期】

    一 A star算法简介 1 A Star算法及其应用现状 进行搜索任务时提取的有助于简化搜索过程的信息被称为启发信息 启发信息经过文字提炼和公式化后转变为启发函数 启发函数可以表示自起始顶点至目标顶点间的估算距离 也可以表示自起始顶点至目
  • C语言打印输出字符串的几种方法

    思路分析 知识点补充 1 xff0c 在C语言中 xff0c 一维数组的数组名实际上就是指向数组首项元素的指针 2 xff0c 如果指针p已经指向一个字符串 xff0c 判断字符串是否结束 xff0c 一般采用while p 61 39 0
  • 对‘fmt::v9::detail::throw_format_error(char const*)’未定义的引用

    在学习视觉SLAM十四讲第十二章的过程中 xff0c 尝试跑了一下单目稠密地图构建的代码 xff0c 在编译源代码的过程中遇到该问题 xff0c 编译结果中显示长篇的 CMakeFiles dense mapping dir dense m
  • [STM32F103C8T6] 串口

    1 非中断串口发送数据 串口发送 接收函数 xff1a HAL UART Transmit 串口发送数据 xff0c 使用超时管理机制 HAL UART Receive 串口接收数据 xff0c 使用超时管理机制 HAL UART Tran
  • 【C语言】strcat函数_字符串追加/连接

    前言 xff1a 在C C 43 43 的学习过程当中一定一定要多刷题 xff0c 牛客网作为国内内容超级丰富的IT题库 xff0c 尤其是它的C C 43 43 xff0c 有从入门到大厂真题 xff0c 而且大部分的考试题目也是从中抽取
  • SWUST OJ448: 字符串查找

    题目描述 在一段句子中找出给定字符串出现在句子中第一个字母出现的位置 句子中字符个数小于4500 字符串字符个数小于120 输入 两行 第一行是给定字符串 第二行是句子 输出 整数 xff0c 字符串出现的位置 样例输入 abcde thi
  • C语言十进制转十六进制

    输入 xff1a 123 输出 xff1a 7B include lt stdio h gt int main int n scanf 34 d 34 amp n int a 100 int count int i 61 0 while 1
  • CentOS软件那么老为什么大家还要用它?

    作为一个专业的服务器系统 xff0c RHEL 系统理论上每一个软件包都有 RedHat 内部的人员负责维护 xff0c 这个维护包括长期 xff08 和系统生命周期一样长 xff09 的开发 更新 测试 运维等 也就是说你能从 RHEL