Linux发行版安装软件选择:编译、软件包or容器?

来源:互联网 发布:php小偷程序破解 编辑:程序博客网 时间:2024/06/06 00:09

原文地址


gos_update
拿到服务器无论是部署 Web 服务或者是自建 MySQL 集群亦或是建设一个企业私有云储存,不管是什么模式第一步都离不开搭建环境。

不过 Linux 发行版上的软件基本上都是版本号冻结的,只是随后会打上一个补丁来修补漏洞,例如,截止发这篇聚能聊得时候:Debian 8 的 php-fpm 的版本是:php5-fpm (5.6.30+dfsg-0+deb8u1),而 php.net 官网的版本已经是 5.6.31 了。因此对于一些最求较新软件版本的程序来说特别是前端,使用操作系统的二进制软件包显然是无法满足需求的。有些发行版还会提供 backports,不过 backports 的软件毕竟只是少数并不一定会有自己想要的软件。

所以,针对操作系统软件版本跟不上需求的时候,就会有三个选择:

  1. 手动编译该软件的源码至最新稳定版
  2. 寻找使用与操作系统的软件源
  3. 使用容器解决这个问题

不过每一种方法都会有一定的缺陷:

一、编译模式的话,的确很自由但是有时候编译了一个软件就需要把连带的依赖包也给编译了,导致如果不及时关注相关的软件的版本情况就很容易忘记更新,而且升级编译源代码的时候的确很烦躁~~

二、新的软件源也增加了一定的安全隐患,万一维护网络被攻陷藏了毒怎么办?而且软件源也有一定的更新延时,做不到源码编译那样第一时间升级。还有就是,软件源如果没有第三方提供镜像,在中国下载速度恶劣的话只有 B/s 的下载速度。

三、Docker 并不是很多小白或者不喜欢Docker得并不会愿意使用,而且容器软件对于更新版本的便捷性和一些设置还是有待完善。

原文地址


原创粉丝点击