Ubuntu(发行版)是一个Linux大家族,而且个个都称得上是软件精品。所谓“绝对”就是没有任何条件、不受任何限制的意思。那么,Ubuntu怎么可能是永远绝对的免费?难道这不是蛊惑人心的宣传、不能兑现的说辞?这种“绝对免费”的说法有何根据?为什么?

在Ubuntu官方网站的首页,写着一句话:“Ubuntu is, and always will be, absolutely free”,对于我们中国人来说,此言有点太天真了(实为太刺眼),非常不合时宜。哪里会有“天上掉馅儿饼”的这种好事?许多人都不相信,他们认为这是一 种商业诱饵,甚至是一个圈套或是陷阱。有人曾经当面对我说过,Ubuntu是兔子尾巴长不了,钱一花光,就没戏了。如今,时光已经过去5年 多,Ubuntu不仅没有死掉,而且越活越健康、越活越强壮。这是什么原因呢? 以往,我对Ubuntu是绝对的免费,心里面多少也有点疑问,后来,就渐渐地不把它当成一回事儿(不关心),连Ubuntu的官方网站也很长时间不去看 了。这次Ubuntu 10.10 Beta版本的发布,我上Ubuntu官方网站一看,大出我的意料,几乎什么原有的说法或问题的提法都有变化(老说法,我记得很清楚),就是上面的那句话 完全没有变。我开始体会到此言的份量,就开始深入地思考其中的道理。

简单来说,Google是搜索免费,广告服务收费;Ubuntu(严格地说,是Canonical公司)是软件免费,技术服务收费,两者的免费是一 个道理,不直接从主体客户身上赚钱。Google是一个公司赚钱,而Ubuntu是一大片公司(其合作伙伴)赚钱。Google赚钱的前提是把搜索的品质 搞好,Ubuntu赚钱的前提是把软件(即Ubuntu本身)的品质做好。总之,Ubuntu的品质越好,用户越多,那一大片公司(企业)就越能赚 钱,Ubuntu是龙头,那一大片公司是龙身,两者不能分离。

Ubuntu的合作伙伴共有4类:云计算、软件、解决方案和培训,请见官方网站“Find a Partner”栏目,其中云计算伙伴主要有:亚马逊(Amazon)页面服务(AWS)公司、Eucalyptus系统公司等8个世界级的著名合作伙 伴。简单地说,连亚马逊的经营业务也需要有品质优异、真正免费的Ubuntu前端。Ubuntu软件伙伴有数十家,其中比较著名的有MySQL(数据库) 和Openbravo(系统集成)等。Ubuntu解决方案伙伴也有数十家,他们的名字我们几乎都不熟悉。Ubuntu培训伙伴遍布世界各地,亚洲只有台 湾的GeeGo教育公司一家。至今,时间过去已经有5年多了,一种全球良性循环,Ubuntu持续发展的大好局面已经形成。这些Ubuntu伙伴公司的主 营业务都是基于这种绝对免费的产品Ubuntu。但是,我国大陆地区完全是空白,没有一家公司是Ubuntu的合作伙伴,这并不奇怪,有“国 产”Linux在把守国门呢! 现在,我们终于懂得一个道理(或知道一个事实):Ubuntu绝对的免费,用户越多越好,这不是一个神话,而是一种客观需求。事实上,Ubuntu必须要 做好,做成精品,定期出品,不得有误,比如,今年10月10日,Ubuntu 10.10新版本必须准时发布,等着吃奶的是一大片公司。Linux打假,就是为了扫清这种思想障碍,敞开国门,迎接永远绝对免费的Linux大部队的到 来。“国产”Linux的发财梦可以休矣!绝对免费的软件有何不好?我们为什么不去抓住这种商机?

说明1:有人一听说“绝对的免费”,就气得就要昏死过去送医院急救。我很替他们担心,因为,这是不久即将发生的事实。

说明2:我的批评者也很累,因为我几乎每天都在改换话题。多谢!

http://www.linuxidc.com/Linux/2010-09/28395.htm

Ubuntu为何永远绝对的免费?的更多相关文章

  1. Ubuntu 16.04配置SSL免费证书

    主要参考地址为:https://blog.csdn.net/setoy/article/details/78441613 本篇主要以Apache这个web服务器来讲解,所以前提必须要安装好apache ...

  2. 解决Ubuntu 14.04 下SMPlayer的字幕乱码问题

    1.SMPlayer播放器 对于使用ubuntu系统的同学,虽然系统初始就带有vedio播放器,但是这里强烈推荐SMPlayer,直接在Ubuntu Software Center中就可以免费下载安装 ...

  3. Linux就是这个范儿之第一次亲密接触(2)

    原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处 .作者信息和本声明.否则将追究法律责 1.2 不一样的图形操作 几乎所有Linux的新用户都会认为Linux的图形界面是相当的绚丽又多彩. ...

  4. ASP.NET 5 (vNext) Linux部署

    引言 工欲善其事,必先利其器. 首先,我们先明确下以下基本概念 Linux相关 Ubuntu Ubuntu是基于linux的免费开源桌面PC操作系统 十分契合英特尔的超极本定位 支持x86.64位和p ...

  5. 为什么移动Web应用很慢?

    前些日子,看到Herb Sutter在自己的博客中推荐了一篇文章<Why mobile web apps are slow>,在推荐里他这样写道: “I don’t often link ...

  6. 为什么移动Web应用程序很慢(译)

    前些日子,看到Herb Sutter在自己的博客中推荐了一篇文章<Why mobile web apps are slow>,在推荐里他这样写道: “I don’t often link ...

  7. ubuntu12.10升级至14.04

    之前执行apt-get 不管是什么软件或apt-get update都会遇到fail to fetch http://us.archive.ubuntu.com quantal-updates/mai ...

  8. [转]为什么移动Web 应用程序很慢

    原文出处: Herb Sutter   译文出处: tangzhnju 我写过不少文章来讨论为什么移动Web应用程序很慢,这也引起了不少的讨论.但是不幸的是,这些讨论没有像我喜欢的那样的基于事实. 所 ...

  9. Linux部署ASP.NET 5 (vNext)

    原文:Linux部署ASP.NET 5 (vNext) ASP.NET 5 (vNext) Linux部署   引言 工欲善其事,必先利其器. 首先,我们先明确下以下基本概念 Linux相关 Ubun ...

随机推荐

  1. 超强教程:如何搭建一个 iOS 系统的视频直播 App?

    现今,直播市场热火朝天,不少人喜欢在手机端安装各类直播 App,便于随时随地观看直播或者自己当主播.作为开发者来说,搭建一个稳定性强.延迟率低.可用性强的直播平台,需要考虑到部署视频源.搭建聊天室.优 ...

  2. jenkins 邮件配置

    jenkins 自带一个邮件的通知的功能,但是自带的邮件通知功能,有点简单不能自定义信息,所以我们安装邮件插件Email-ext plugin.1.首先在系统管理-插件管理-安装Email-ext p ...

  3. Git基本使用教程

    1.创建版本库      版本库又可以称为仓库(repository),可以简单理解为一个目录,在这个目录下的所有文件都可以被git管理起来,每个文件的新增.修改.删除Git都可以跟踪,以便在任何时刻 ...

  4. c# 学习心得(函数方法类)

    函数或者说方法都是写在类下的,我们可以通过函数名来调用它们.首先,我们要弄清楚为什么会有函数或者说方法这种东西?这里,我们使用了与前一篇同样的思维方式,先从它的目的或者实用价值出发.当我们在编写程序的 ...

  5. java内存模型-重排序

    数据依赖性 如果两个操作访问同一个变量,且这两个操作中有一个为写操作,此时这两个操作之间就存在数据依赖性.数据依赖分下列三种类型: 名称 代码示例 说明 写后读 a = 1;b = a; 写一个变量之 ...

  6. js从外部获取图片

    图片ping:图片可以从任何URL中加载,所以将img的src设置成其它域的URL,即可以实现简单的跨域,可以使用onload和onerror事件来确定是否接受到了响应 var img=new Ima ...

  7. 实例之JavaScript

    使用JavaScript实现5秒倒计时 <html> <head> <meta charset="utf-8"> <title>&l ...

  8. Web数据持久化存储IndexedDB(不常用)

    IndexedDB是在浏览器中保存结构化数据的一种数据库,为了替换WebSQL(标准已废弃,但被广泛支持)而出现.IndexedDB使用NoSQL的形式来操作数据库,保存和读取是JavaScript对 ...

  9. Sharepoint学习笔记—习题系列--70-576习题解析 -(Q36-Q39)

    Question 36 You are designing a SharePoint 2010 application. You need to design the application so t ...

  10. Java单例模式实现的几种方式

    单例模式好多书上都是这么写的: public class SingleTon1 { private SingleTon1(){ } private static SingleTon1 instance ...