那里应该有什么?

那里应该有什么?

这个论坛以及其他地方的许多问题实际上都可以归结为来自 Linux 环境的人无法在 Solaris 上使用等效命令。通常这是因为支持不同的选项等。

这个问题旨在记录(问答形式)合理的 Solaris 安装应始终包含的内容。用户再也不会因为某些东西不可用而感到沮丧。

我们重点关注 Solaris 新手/访客在提问时最常询问的软件包。

这是关于标准用户空间工具,例如findgrep以及您拥有的工具。如果您正在寻找有关开发工具(例如编译器、make 等)的类似帖子,那么您应该看看这里

答案1

那里应该有什么?

以下是我认为所有 Solaris 主机都应该可用的工具列表:

  • 顶部。是的,prstat很优越,但是来自 Linux 世界的人已经习惯了top。故事结局。
  • GNU tar。这绝对是必须的。大多数软件包都是用 GNU tar 制作的,Sun 的 tar 和 GNU tar 之间存在一点(但很重要)的不兼容性。养成使用 GNU tar 而不是 Sun tar 解压下载的软件包的习惯。
  • GNU binutils。一些开源包在构建阶段需要它们。
  • GNU coreutils。仅仅因为date..并且因为 GNU tail 可以跟随旋转的日志文件。
  • GNU findutils。 GNUfind比 Sun 支持更多选项。
  • GNU awk。与 Sun 的 awk/nawk 的细微差别。
  • GNU diffutils。与 Sun 的同行不同。尤其patch
  • GNU grep。比Sun的grep更先进。
  • GNU sed。与 Sun 的 sed 存在细微差别。
  • Vim 编辑器。因为来自 Linux 的人们希望找到它。

这些包应该是您的一部分默认安装无论您使用 JumpStart (Solaris 10)、IPS (Solaris 11) 还是其他工具。

上述工具会占用几百K的磁盘空间。实在是没有理由不是默认安装它们。

该列表重点关注用户需要的工具,特别是当他们从 Internet 上挑选 shell 脚本并期望它们能够工作时。如果您是系统管理员,那么您可能会说这个列表更长,但那是另一回事了。换句话说,没有考虑纯系统管理工具(是的,我知道区分并不容易)

如果您正在创建将用于构建 C/C++ 二进制文件的主机,请查看这个帖子

索拉里斯 11

你很幸运。几乎所有东西都已经在那里了,所有东西都来自官方 Oracle Solaris 存储库但请注意,即使软件包在全局区域中可用,它也不会自动安装在本地区域中。

每个软件包都可以使用以下命令安装(以 root 身份):

pkg install <pkgname>

例如:

pkg install //solaris/text/gawk

套餐:

项目 包名 安装GL后的路径
-------------- -------------------------------------- - --------------------
顶部 pkg://solaris/diagnostic/top /usr/bin YN
GNU tar pkg://solaris/archiver/gnu-tar /usr/bin YN
GNU binutils pkg://solaris/developer/gnu-binutils /usr/bin NN
GNU coreutils pkg://solaris/file/gnu-coreutils /usr/bin YN
GNU findutils pkg://solaris/file/gnu-findutils /usr/bin YN
GNU awk pkg://solaris/text/gawk /usr/bin YN     
GNU diffutils pkg://solaris/text/gnu-diffutils /usr/bin YN
GNU grep pkg://solaris/text/gnu-grep /usr/bin YN
GNU sed pkg://solaris/text/gnu-sed /usr/bin YN
Vim 编辑器 pkg://solaris/editor/vim /usr/bin NN

笔记:

  • g路径:如果存在等效的 Sun 工具,则二进制文件的名称带有前缀。

  • G:默认安装在全局区域中吗? (即服务器安装)

  • N:默认安装在本地区域吗?



索拉里斯10

您确实应该升级到 Solaris 11。好多了。

但是,如果您仍然停留在 Solaris 10 上,那么您可以从 Solaris Companion Disk 获取软件包。以前由 Sun 自己分发,但现在由Sun免费软件。这是一个值得您信赖的网站。不要考虑下载源代码并自行构建,因为这不是必需的。

从下表下载各个软件包。

每个软件包都可以使用以下命令安装(以 root 身份):

pkgadd -d <pkgname>

例如:

pkgadd -d SFWtop

套餐:

项目 包名 安装后路径
-------------- -------------------------------------------------- ----------
顶部 SFWtop /opt/sfw
GNU tar(已安装)/usr/sfw
GNU binutils(已安装)/usr/sfw
GNU coreutils SFWcoreu /opt/sfw
GNU findutils SFWgfind /opt/sfw
GNU awk SFWgawk /opt/sfw
GNU diffutils SFWdiffu /opt/sfw
GNU grep(已安装)/usr/sfw
GNU sed SFWsed /opt/sfw
Vim 编辑器 SFWvim /opt/sfw

答案2

我对当前的 Solaris 并不熟悉,但当我使用它时,GCC(gcc 和 g++)是绝对必须的。 GNU make 也是如此。我们还安装了 bash,默认的 shell 非常缺乏交互式使用(不过,我们使用系统的 shell 来执行脚本)。

可能会需要 vim(我见过的原始 vi 的所有衍生版本都以某种古旧的方式迷人,但 Linux 世界中的每个人都安装了 vim)。

答案3

“什么包”的问题已经被其他人很好地回答了。

我认为“来自哪里”的问题值得另一个答案。

开放式CSW是在 Solaris 上安装开源软件包的重要资源。它们比其他的更新和全面。

此外,“pkgutil”工具为您提供了 Solaris 10 上类似 apt/yum/pkg 的功能。

答案4

还要考虑:

  • 恩诅咒
  • 屏幕
  • 拉索夫
  • 同步

由于 Linux 的过去,不一定需要,但对我来说几乎是必备的:Dtrace 工具包:http://www.brendangregg.com/dtrace.html(因为你想要每个进程的 IO 统计信息:)

在 Solaris 11 中,这是 pkg:/system/dtrace/dtrace-toolkit。

相关内容