Solaris / OpenSolaris的隐藏function

在Solaris或OpenSolaris上可以find的有用的命令,工具或窍门在典型的Linux发行版中是不可用的?

使用ZFS的Live Upgrade会创build操作系统引导环境的可写快照。 使用Live Upgrade,您可以将修补程序应用于快照引导环境,然后使该快照可启动。 在下一次重新启动时,你会得到一个打补丁的操作系统 如果您发现修补程序有问题,则可以使旧快照可启动,重新启动,并且已经退出了更改。 这是一个相当不错的解决scheme来修补。

引导环境的ZFS需要Solaris 10u6或更高版本。

另外,Solaris Zones对于应用程序隔离非常有用。 很明显DTrace是非常好的,但是RedHat正在和System Tap打起来。

任何曾经听说过Solaris的人也都听说过ZFS,DTrace和SMF。

如果您真的想了解Solaris的某些隐藏/较less已知的function,我build议您阅读JörgMöllenkamp的“ 不太知名的Solarisfunction”电子书。

不要忘记SMF(服务pipe理)。 我还没有看到可比的Linux(任何指针感激地接受)。 它确实救了我(和同事)很多票务处理:)

Linux有许多Linux人员希望拥有的function。 这些包括:

  • ZFS :提供极高灵活性的文件系统,比现在可用的任何东西都多。 dynamic增长和减less,快照,克隆等 – 所有这些都是免费的。
  • DTrace :一个debugging器,可以向您提供有关内核如何工作的详细信息。 由于内核写入的方式,DTrace本质上比SystemTap更灵活。
  • SMF :又一个替代System V初始化脚本的系统 – 但是这个似乎比其他任何人都对它感兴趣。
  • 区域和容器 :这些非常灵活,让很多人兴奋:它们提供了非常灵活的虚拟化。

一些个人经验…

我发现Zones非常简单而且有用,我只是为我在家里运行的每一项服务创build了一个 – 这样我就可以玩并testing一些东西,而不会把所有的东西都废弃掉。 其中一个区域是反向代理(Sun Web Java Proxy),以便我可以轻松地使用不同的Web服务器。

此外,我发现opencsw(以前称为Blastwave)软件包层次结构好得多,以至于看到任何东西 – 它总是处理所有的依赖关系。

而且 – 不要忘记 – 二进制兼容性。 如果一个应用程序被指定为需要内核1.2.3_4的Linux,那么最好使用它。 在Solaris上,一切工作在未来的版本上。 对我来说,这意味着升级,当我想要,没有压力做。

如果您想深入了解以下几个有趣的文档: 较less了解的Solarisfunction

只是品尝 – pipe理特价:

Live Upgrade服务pipe理工具资源pipe理pfiles fuser / export / home? /家? 则autofs? lockfs关于核心和崩溃CacheFS Jumpstart企业工具包

(我听起来像广告?对不起…)

Solaris的两个最重要的原因似乎是DTrace和ZFS,两者都不能直接用于Linux。

kstat来获得各种令人敬畏的内核统计信息。

不一定是隐藏的,但对Linux人来说并不明显的是过程观察工具:pstack,pmap,pflags,pfiles,pcred,psig和pldd。 此外,prstat或多或less与top相当,但也可以聚合用户,区域,项目和显示微观状态记帐的资源使用情况。

查看在一个OS实例中pipe理大量应用程序的项目和任务。

我不知道在Linux上有一个相当于coreadm的地方,虽然它可能分散在/ proc的某个地方。

Logadm有一点钝,但是是logrotate的一个很好的替代品,而且通常更强大/更灵活。

多级安全(angular色,授权,configuration文件)的安排不同于Linux(SELinux上下文,AppArmor)。

OpenSolaris中的图像打包系统(IPS)非常整齐,但仍处于重大的发展阶段。

此外,LiveUpgrade +1。 这很好,特别是ZFS快照。

大多数您习惯的GNU用户空间可用,并且可能默认安装在全新的Solaris上。

快速重新启动 OpenSolaris将跳过x86硬件上正常的HW Probing / BIOS POST / GRUB进程,允许在<10秒内重新启动,而不是在〜2分钟内重新启动。 甚至支持引导备用的引导环境(例如恢复僵化的升级)。

ZFS和SMF都很棒,但solaris的一个真正的痛苦就是软件包pipe理员比linux的同行们年纪大了。

而且所有的工具在微妙的方面都是不同的(killall任何人?),如果你大部分时间pipe理linux机器,切换到solaris意味着一次又一次地读取手册页。 一个糟糕的“更多”的传呼机和总是稍微错误的terminal使你的生活困难。

Solaris崩溃分析工具 – 帮助分析Solaris内核崩溃转储的最佳工具。

kssl,内核SSL模块。 来自ksslcfg(1M)的报价

ksslcfgpipe理内核SSL代理模块的smf(5)实例。 启用S​​SL的Web服务器可以使用其内核SSL代理的服务来提高HTTPS数据包处理的性能。

与Linux不同,“lsof -o”(显示文件偏移量)可以工作。 这对于显示读取或写入大量数据的过程有多远很有用。

统一的“不太知名的Solaris特性”教程很有帮助。

可能是新玩家最大的陷阱,典型的Linux用户可能会试图在Solaris主机上运行killall ;

System Administration Commands killall(1M) NAME killall - kill all active processes SYNOPSIS /usr/sbin/killall [signal] DESCRIPTION killall is used by shutdown(1M) to kill all active processes not directly related to the shutdown procedure. killall terminates all processes with open files so that the mounted file systems will be unbusied and can be unmounted. killall sends signal (see kill(1)) to the active processes. If no signal is specified, a default of 15 is used. The killall command can be run only by the super-user. ATTRIBUTES See attributes(5) for descriptions of the following attri- butes: ____________________________________________________________ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | |_____________________________|_____________________________| | Availability | SUNWcsu | |_____________________________|_____________________________| SEE ALSO kill(1), ps(1), fuser(1M), shutdown(1M), signal(3C), attri- butes(5) SunOS 5.10 Last change: 14 Sep 1992 1