最通用的方法 - 解决不同格式的“下层”或差异的方法是:smit install
smit install - 作为 smit 的一部分,它将引导您通过一系列对话框以帮助进行选择。最终,这会调用程序 /usr/sbin/geninstall
那么,这个问题的下一个方面是:geninstall 调用了什么?
Legacy INSTALLP
(也称为BFF - 备份文件格式)
installp/bff格式使用命令installp。
从命令行使用installp非常简单:
installp还是一个软件包管理器,它可以解决和安装依赖项 - 如果在/software/repository/directory中可用
以下命令演示了一些常见的LPP/installp/BFF打包操作。
从/software/repository/directory安装some.fileset.name,同时查找并安装依赖项 - 如有必要,还可以增加文件系统大小
installp -d /software/repository/directory -agX some.fileset.name
-d:以BFF格式存储软件包/软件包的目录
-a:应用
-g:解决并应用依赖项(如果有)
-X:如有需要,增加目标文件系统大小
列出存储库中的软件
installp -d /software/repository/directory -L
-d:以BFF格式存储软件包/软件包的目录
-L:列出目录中的LPP软件包
重新生成/software/repository/directory中的TOC
inutoc /software/repository/directory
卸载一些文件集名称
installp -ug some.fileset.name
-u:卸载参数
-g:递归卸载依赖于some.fileset.name的软件
列出/验证已安装的软件包
lslpp -L
列出已安装的LPP软件包-不区分根、usr或共享组件
lslpp -l
列出已安装的LPP软件包-包括独立的根、usr和/或共享组件
lppck -v some.fileset.name
-v:验证内容
验证some.fileset.name的完整性
lslpp -h some.fileset.name
-h:历史记录
列出当前和先前版本的some.fileset.name的安装历史(安装日期)
-w:所在位置
lslpp -w /some/file/name
识别包含/some/file/name的文件集
RPM - RedHat软件包管理器
在AIX上,rpm是标准的rpm工具,可以参考任何Linux指南来了解如何使用它。请注意,已安装的RPM版本比较古老,可能会缺少一些你期望的选项。
michael@x071:[/usr/sbin]rpm --version
RPM version 3.0.5
默认情况下,/usr/bin/rpm 已安装,并且是名为 rpm.rte 的文件集的一部分。
michael@x071:[/usr/sbin]lslpp -w /usr/bin/rpm
File Fileset Type
----------------------------------------------------------------------------
/usr/bin/rpm rpm.rte File
从AIX 7.2开始(我现在无法访问),它具有rpm版本4,并且还包括yum以帮助解决RPM依赖地狱的问题。
ISMP
InstallShield多平台
我从未尝试过通过命令行安装ISMP,所以这里没有快速摘要。这种打包方式的主要“用户”是第三方VAR和软件供应商。IBM软件组也经常使用 - 过去更多(例如db2v6或v7,以及apache-1和httpd-2的初始版本)。
可以在https://www.ibm.com/support/knowledgecenter/ssw_aix_72/install/ismp_installation.html找到一个快速描述(感谢Jeff Schaller提供的链接,于2020年10月更新指向AIX 7.2文档)。
关键点似乎是installp和RPM从不需要用户交互,而ISMP可能需要(即,可能需要响应文件才能无人干预)。
个人笔记
对我个人来说,ISMP是一个“历史注释”,因为我越来越少见到它的使用(甚至IBM软件组似乎也不再使用它)。此外,在AIX上,我更喜欢避免使用RPM。并不是因为我不喜欢RPM - 而是因为常见的缺陷(在我看来)是RPM软件包不知道installp已经安装了什么(反之亦然),而且RPM会在没有警告的情况下覆盖其他installp软件包的内容,或者在之后没有警告地删除一些部分。这把刀两面割:当“旧的”有更新时,“新的”就会出问题。简而言之 - 混合使用会导致麻烦!
个人而言,在2001年,我认为拥有三种不同的安装程序是一个很好的主意。还有geninstall来控制它们。然而,通过排除故障的经验教会了我不同的看法!