installp 是 AIX(Advanced Interactive eXecutive)操作系统中的一个核心软件包管理命令,用于安装、更新、维护和移除软件,它功能强大,是 AIX 系统管理员日常工作中最常用的工具之一。

installp 命令简介
installp 命令通过处理 LPP (Licensed Program Product) 软件包来管理系统软件,这些软件包通常存储在安装介质(如 CD-ROM、DVD、NFS 共享目录或系统镜像文件)上。
核心功能:
- 安装:从介质上安装新的软件或文件集。
- 更新:将已安装的软件升级到新版本。
- 维护:修复已安装软件中的错误。
- 移除:从系统中删除已安装的软件。
- 查询:检查软件包的安装状态、内容等。
基本语法
installp 命令的基本语法结构如下:
installp [选项] -a | -d <安装介质路径> <软件包标识符> ...
关键参数解释:

- 选项:控制
installp的行为。 -a:自动模式,这是最常用的选项之一,它会自动处理依赖关系(即安装某个软件包所需要的其他软件包),并以非交互方式执行安装,非常适合在脚本中使用。-d <安装介质路径>:指定设备或目录,告诉installp从哪里获取软件包。- 可以是设备名,如
/dev/cd0(光驱)。 - 可以是挂载点,如
/mnt/aix_cd。 - 可以是 NFS 路径,如
nfs:/server/share/aix_lpp_source。 - 可以是包含软件包的目录路径。
- 可以是设备名,如
<软件包标识符>:要操作的软件包名称,通常是软件的缩写,bos.adt(AIX 开发工具)。
常用选项
| 选项 | 全称 | 描述 |
|---|---|---|
-a |
all |
自动处理依赖关系,非交互式安装。 |
-F |
force |
强制安装或更新,即使版本相同或存在冲突。谨慎使用! |
-g |
get |
获取并显示软件包的维护级别信息,但不安装。 |
-l |
list |
列出指定软件包的文件集信息。 |
-p |
preview |
预览模式,只显示将要执行的操作(安装哪些文件集),而不实际执行,这对于检查依赖关系非常有用。 |
-u |
uninstall |
卸载模式,用于移除已安装的软件包。 |
-v |
verbose |
详细模式,显示更详细的安装过程信息。 |
-X |
exclude |
排除模式,与 -u 一起使用,指定在卸载时保留哪些文件集。 |
-Y |
exclude_all |
与 -X 类似,但可以指定一个文件集列表来排除,而不是单个文件集。 |
-w |
what |
显示已安装软件包的维护级别。 |
-c |
check |
检查文件集的完整性。 |
操作示例
查看已安装软件包的维护级别
在安装或更新前,了解当前系统的维护级别很重要。
# 查看 bos.rte 文件集的维护级别 lslpp -l bos.rte # 或者使用 installp 的 -w 选项 installp -w bos.rte
预览安装操作(推荐)
在执行真正的安装前,先预览一下将要发生什么,特别是检查依赖关系。
# 假设你的 AIX 安装光盘已经挂载到 /mnt installp -p -d /mnt bos.adt
输出会显示类似 "Installing following filesets:" 的列表,让你确认。
安装新的软件包
使用 -a 选项自动处理依赖关系。

# 从挂载点 /mnt 安装 AIX 开发工具 installp -a -d /mnt bos.adt
更新软件包
更新和安装的命令基本相同。installp 会自动检测到已有版本并进行升级。
# 更新 AIX 基础操作系统文件集到光盘上的最新版本 installp -a -d /mnt bos.rte
卸载软件包
使用 -u 选项进入卸载模式。
# 卸载之前安装的 AIX 开发工具 installp -u -d /mnt bos.adt
强制安装或更新
当系统提示版本已存在或存在冲突时,可以使用 -F 选项强制覆盖。这可能会导致系统不稳定,请确保你知道自己在做什么。
# 强制安装一个相同版本的软件包(修复损坏的文件) installp -a -F -d /mnt bos.adt
从系统备份(NIM 或 mksysb)安装
如果你有一个创建好的 NIM (Network Installation Management) 资源或 mksysb 系统备份,也可以将其作为安装源。
# 假设你有一个 NIM 资源 aix71_lpp_source installp -a -d /nim/aix71_lpp_source bos.net.tcp_server
最佳实践和注意事项
- 先备份:在进行任何重大的系统修改(如更新核心系统文件集
bos.*)之前,务必备份你的系统(使用mksysb命令创建系统镜像),这是最重要的黄金法则。 - 使用预览模式
-p:对于不熟悉的操作,特别是更新核心组件时,先用-p选项预览,检查依赖关系和将要安装的文件集,避免意外。 - 查看日志文件:
installp的执行日志会保存在/tmp/installp.log或/tmp/installog.*文件中,如果安装失败,第一时间查看这些日志文件,它们会提供详细的错误信息。 - 理解 LPP Source:
installp需要一个完整的 LPP Source(软件包源),这通常是一张 AIX 安装光盘或从光盘创建的目录结构,仅仅把几个.bff文件丢进一个目录是不够的。 - 权限:执行
installp命令通常需要root用户或aixinsta组的权限。 - 替代工具
nim:在企业环境中,对于多台 AIX 服务器的管理,强烈推荐使用 NIM (Network Installation Management),NIM 可以集中管理软件包、维护级别、系统镜像等,实现大规模、自动化的 AIX 系统部署和维护,效率远高于手动使用installp。
与 lppchk 和 lslpp 的关系
installp 通常不单独使用,它会与其他几个命令配合,形成一个完整的工作流:
lslpp(List LPP):查询,用于列出已安装的软件包及其状态、版本等信息,常用于安装前检查现状。lslpp -l bos.rte:列出bos.rte的详细信息。lslpp -f bos.rte:列出bos.rte包含的所有文件。
lppchk(LPP Check):校验,用于检查已安装软件包的文件是否完整、权限是否正确、是否被意外修改,在安装后或系统出现问题时运行,非常有用。lppchk -v:详细检查并报告所有不一致的地方。
installp:执行,负责安装、更新、卸载等实际操作。
典型工作流:
- 检查现状:
lslpp -l bos.* - 预览操作:
installp -p -d /mnt bos.rte - 执行安装/更新:
installp -a -d /mnt bos.rte - 验证结果:
lslpp -l bos.rte和lppchk -v
希望这份详细的指南能帮助你全面了解 installp 命令!
