将 Solaris 10 与 Linux 进行比较就像是苹果与橘子。主要区别在于构建环境,任何将 Linux 应用程序迁移到 Solaris 的人都可以证明这一点。我希望甲骨文专注于构建 Linux 源代码/应用程序兼容性模型,而不是试图将 Solaris 定位为 Linux 的替代品。Linux 也不是 Solaris 的替代品!
对于小型应用程序,Linux 很好,对于嵌入式应用程序,它可能更好。对于大型 Iron 应用程序,Solaris 与任何 Linux 发行版都属于不同的类别。查看 Solaris 的 TCP/IP 堆栈、实时调度、服务管理、防弹虚拟化(区域),您将拥有与 Linux 相比的超集功能。添加 ZFS、DTRACE 和多线程调度,您就处于完全不同的操作系统类别中。
Linux 很棒,我喜欢它。Solaris 很棒,我也喜欢它。每个都有其优点和缺点。甲骨文当然不会在 LINUX 上构建它的大型产品,例如 EXEDATA2,因为它在 Solaris 中拥有用于大型环境的卓越产品。
大约九年前,从 v2.5 到 v8,我一直是 Solaris 管理员。我对 Solaris 9 有过一些了解,但几乎没有接触过 10。
我避免使用 Solaris 的原因:
硬件支持不如许多 Linux 或 Windows 操作系统好。它正在改善。
您可以免费运行 Solaris,但不能免费获得更新。甚至没有安全更新。甚至没有 0-day 漏洞。您必须为每个系统购买支持计划,这可能很昂贵。这意味着获取更新的方法是等待下一个“U”版本,然后升级。
OpenSolaris 对我来说太前沿了。它变化太频繁,而且发布的版本太接近不稳定或不可靠,无法满足我的需求。
在 Solaris 和 OpenSolaris 之间,Sun 已经设法完全错过了“欢迎来到 2004”和“我太新太闪亮了,我并没有真正 100% 工作!”之间的快乐媒介。
在 Blastwave 项目崩溃之前,我曾经愿意更多地使用 Solaris。通过那里,我可以获得更新的工具,这些工具更适合 Linux 的做事方式(这是我花费 95% 的专业时间的地方),并以相对简单的在线方式来管理工具和更新。一旦 Blastwave 和 CSW 安定下来,我将查看这两个残余,并决定是否值得再次投入时间和精力。确实,Blastwave 不再是值得信赖的工具来源,这对 Solaris 在我的圈子中的生存能力是一个巨大的打击。
但对我来说,第一个原因是现在我不需要做任何需要 Solaris 的事情。
作为 Oracle 的大客户,我最大的担忧是他们最终会取消 Solaris 或“Oracle Enterprise Linux”(他们对 RHEL 的重新标记)。
显然两者都有其优点和缺点,但我知道他们销售的 OEL 支持协议比 Sun 销售的 Solaris 多得多,当然他们拥有 Solaris 的开发成本,而 OEL 开发成本则很少。
我们都喜欢 Solaris,但如果它卖得不够好并且开发成本太高,那么我相信甲骨文会简单地“资产剥离”它(保留 ZFS 等)并将其出售给其他人。那将是我主要关心的问题。
10-15 年来,最大的担忧一直是 Sun 的未来和 SPARC 的未来。当他们推出 Solaris 10 时,我正准备放弃,它在技术方面取得了飞跃(尽管花了大约 1 年的时间才达到生产价值)。最近对甲骨文的收购增加了很多短期不确定性,但这可能很快就会消失(无论结果如何)。SPARC 似乎仍然是一个失败的原因,尽管围绕他们的“新”CoolThreads 处理器有很多嗡嗡声,但这些处理器过于专业而无法获得广泛接受。
观察行业趋势会很有趣... 多年前,我观察到许多华尔街公司涌向 Linux(从 Solaris/sparc)不是为了 Linux,而是为了 x86。当 Solaris 10 出现时,Solaris 肯定发生了部分逆转,同样是在 x86 上。
包和补丁管理不应该是一个问题,这是一个知识/技能的问题。为了给你一个不同的视角,我的新工作是在 Linux 环境中,包和补丁管理都让我担心。这些是有答案的古老的普遍问题。
我会非常想念 Solaris,其中有些东西在其他地方是找不到的。
如果您不是 Solaris 专家(与 Linux 或 FreeBSD 相比),我能想出的唯一原因是网络上“缺乏”支持/信息。
将 Solaris 10 与 Linux 进行比较就像是苹果与橘子。主要区别在于构建环境,任何将 Linux 应用程序迁移到 Solaris 的人都可以证明这一点。我希望甲骨文专注于构建 Linux 源代码/应用程序兼容性模型,而不是试图将 Solaris 定位为 Linux 的替代品。Linux 也不是 Solaris 的替代品!
对于小型应用程序,Linux 很好,对于嵌入式应用程序,它可能更好。对于大型 Iron 应用程序,Solaris 与任何 Linux 发行版都属于不同的类别。查看 Solaris 的 TCP/IP 堆栈、实时调度、服务管理、防弹虚拟化(区域),您将拥有与 Linux 相比的超集功能。添加 ZFS、DTRACE 和多线程调度,您就处于完全不同的操作系统类别中。
Linux 很棒,我喜欢它。Solaris 很棒,我也喜欢它。每个都有其优点和缺点。甲骨文当然不会在 LINUX 上构建它的大型产品,例如 EXEDATA2,因为它在 Solaris 中拥有用于大型环境的卓越产品。
当我的共享服务器主机从 BSD 切换到 Open Solaris 时,FTP 禁锢就消失了。我不知道是否可以通过使用不同的 FTP 服务器或重新配置默认的 FTP 服务器来在 Open Solaris 上提供 FTP 监禁。
关于该问题的 Joyent wiki 页面的作者将问题归咎于getcwd。
我从 2002 年开始(现在已经 15 年)一直在开发 Solaris,我只能说它一直是我“最喜欢的”操作系统,特别是它的稳定性以及它与已知的商业应用程序(如 networker、oracle)的稳定性(当时还是 Sun)、netbackup 等等。
但它更多的是对 Solaris 的“热情”。
15 年后,对我来说,“主要问题”(如果我们可以称之为问题的话)是:
与其他操作系统相比,缺少在线文档(特别是在尝试调试系统性能时),但 Solaris 10 到来时更好。特别是对于基础设施服务,如 LDAP、kerberos、NIS2LDAP 等。每个系统都单独记录,但你永远无法找到好的文档,让人们同时实现所有内容。
补丁/升级(我的公司必须为 Solaris 开发自己的补丁系统)
缺乏在线兼容的工具/二进制文件(我们经常不得不自己编译并且很少找到预编译的二进制文件)
有时由于缺乏好的工具(solaris 不适合试图了解系统如何工作的初学者)及其特定的内存管理(特别是与 oracle 数据库和使用共享内存的所有内容一起使用时),理解性能问题的困难
另一方面,到目前为止,Solaris 仍然是我最喜欢的操作系统,原因有很多,其中一些是:
我从未尝试过 Solaris 11,但它看起来很棒,我不会反对它。我已经习惯了 Solaris 10(我们仍然在我工作的地方大量使用它)和 RHEL 现在(这也很棒,但完全不同)RHEL 是最简单的方法......如果你不想挣扎当您遇到问题时,您想在 google 的第 1 页上找到解决方案。
Solaris 相当不稳定。玩弄 POSIX 消息队列,会导致许多未记录的行为。另一方面,Linux 就像一个魅力,完全没有问题。
编辑(经过 1.5 年的研究和艰苦的测试):好的,伙计们,也许 Solaris 还不错。问题是 errno.h 默认不是线程安全的。因此,我从其他线程中得到随机错误。因此,我们需要定义 _REENTRANT、_TS_ERRNO 或 _POSIX_C_SOURCE - 0 >= 199506L 以获得 errno 线程安全。请注意,在其他操作系统上,默认情况下 errno 是线程安全的。因此会引起混乱。