我们已经准备好了,你呢?

2026我们与您携手共赢,为您的企业形象保驾护航!

Linux的软件依赖结构相当繁杂,一般而言,Linux系统会借助软件包管理器来自动处理这些依赖。举例来说,无论是常见的deb格式还是rpm格式,都面临着较为严重的依赖性问题。相较之下,在Unix系统中,此类问题出现的频率则相对较低。当然,偶尔会遇到缺少某个动态链接库的情况,不过这样的情况极为罕见。即便遇到了,我通常也能较为轻松地解决,比如安装特定版本的VC++库。在OS X(即Mac OS,苹果系统属于商业Unix系统)中,这个问题并不算严重。

那么为什么某些Linux发行版的这个问题就是如此的严重呢?

在QQ群内的多次探讨以及参考了问答平台上的众多意见后,我们得出了一个相对合理的观点,即“这其实是Linux社区对于冗余现象所产生的一种担忧”。换句话说,他们期望系统内所有库文件仅存在一个副本,这样的想法似乎并无不妥。然而,若从另一个角度审视这个问题,情形便截然不同了。若一个库被三十款软件所依赖,那么一旦该库出现故障,这三十款软件将无法正常运作,甚至可能缺失某些功能。这情形就好比串联电路,一旦某个环节出现问题,整个电路便无法正常运作。以Glibc库为例,它是Linux系统中最基础的API,几乎所有其他运行库都对其有所依赖。若系统出现问题,必然会导致其无法正常运行。回想起过去,我也有过为Glibc进行大规模版本更新的经历,现在想来,那时的自己确实年轻气盛,胆量颇大(实则有些鲁莽)。值得一提的是,有些人会移除Linux系统中的某些内置软件,结果导致系统崩溃。其中最典型的例子就是移除系统自带的软件。只需在百度上一搜,就能发现许多年轻人,他们胆子很大。这个行为和我当年升级Glibc差不多。

在Linux系统中,这个问题的根源在于各个发行版的开发者对软件包进行了二次打包处理,并采用了包依赖管理的策略。个人认为,偶尔的冗余并非全是坏事,过分追求全面依赖并不明智。

在知乎上,有人分享了自己的Linux使用心得,其核心观点是:切勿企图让单一Linux系统承担过多功能。理想的做法是,让一个Linux系统专注于单一任务,而将众多任务分配给多个Linux系统。至于如何创建多个Linux系统,无论是通过KVM还是其他方式,都有多种可行方案。感受颇深,的确,从当前形势分析,主流的Linux操作系统主要应用于服务器领域,这种专业化的使用方式无疑是恰当的。

如何解决Linux下如此复杂的以来问题?

撰写此文的主要动因在于一位客户希望将系统从2.0版升级至2.4版。我对此进行了尝试性的操作,结果发现该问题难以解决。2.4版要求升级至1.1.0或更高版本,我尝试安装了更高版本,幸运的是,安装过程顺利,未出现任何问题。经过一番测试,使用体验同样良好。在成功解决该问题后,我们意识到必须对Glibc进行升级,因为当时系统中安装的是32位的Glibc,而我们需要将Glibc升级至64位版本。随后,我陷入了深深的思考。经过四处搜集资料,并在QQ群中与资深人士交流,我终于总结出以下几点宝贵经验。

在软件源中安装应用,虽然看似显而易见,但不少用户实际上都曾尝试过添加非官方的“第三方包”。尽管导入这些包可能耗费了您不少精力,但这样做却可能带来系统不稳定的隐患。因此,建议您尽量在官方软件源中寻找所需的软件包。通常情况下,您所需的软件包都能在官方源中找到。利用这些容器,您可以随心所欲地使用它们,而不用担心会影响到您的系统环境。此外,请避免随意进行软件的升级或降级操作。当然,安全更新是个例外,因为发行版官方已解决所有相关问题,您基本可以安心进行更新;然而,那些不受发行版直接控制的软件包,则需自行进行统一管理。这包括使用snap以及其他类似工具。

关于之前提到的升级难题,这实际上根本无法实现升级。因此,我向客户询问了升级的原因。客户表示,他们发现了几个CVE漏洞,而.4版本已经解决了这些问题。于是,他们有了升级的意愿。随后,我查阅了相关CVE信息,并参照网络上的配置文件修改建议,基本解决了安全上的隐患。

最后补充一点,有些人可能会发现他们的系统中同时存在deb格式的包和rpm格式的包。这种情况并不理想,因为这样很容易引发版本不兼容的问题,进而导致包管理出现混乱,最终可能使整个系统无法正常运行。

Snap正被广泛推广,然而它似乎隐藏着某种阴谋。尽管它确实促进了开源软件的进步,但现在它与开源社区的步伐越来越不一致,几乎转变成了开源的对手。他们意图将Snap打造为唯一的应用商店,一旦实现,便将掌控软件的发布途径。

参考资料:

在Linux系统中遇到那些让人头疼的极其复杂的软件依赖问题,大家通常是如何应对的呢?——源自知乎

Unix 的包依赖是如何形成的? - 知乎

Linux随想——探讨软件之间的相互依赖性,软件包依赖关系揭秘——CSDN博客分享

二维码
扫一扫在手机端查看

本文链接:https://www.by928.com/shan-xi/9485.html     转载请注明出处和本文链接!请遵守 《网站协议》
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。

项目经理在线

我们已经准备好了,你呢?

2020我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

13761152229

上班时间

周一到周五

公司电话

二维码
微信
线