菜鸟科技网

installp命令如何使用?

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

installp命令如何使用?-图1
(图片来源网络,侵删)

installp 命令简介

installp 命令通过处理 LPP (Licensed Program Product) 软件包来管理系统软件,这些软件包通常存储在安装介质(如 CD-ROM、DVD、NFS 共享目录或系统镜像文件)上。

核心功能:

  • 安装:从介质上安装新的软件或文件集。
  • 更新:将已安装的软件升级到新版本。
  • 维护:修复已安装软件中的错误。
  • 移除:从系统中删除已安装的软件。
  • 查询:检查软件包的安装状态、内容等。

基本语法

installp 命令的基本语法结构如下:

installp [选项] -a | -d <安装介质路径> <软件包标识符> ...

关键参数解释:

installp命令如何使用?-图2
(图片来源网络,侵删)
  • 选项:控制 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 选项自动处理依赖关系。

installp命令如何使用?-图3
(图片来源网络,侵删)
# 从挂载点 /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

最佳实践和注意事项

  1. 先备份:在进行任何重大的系统修改(如更新核心系统文件集 bos.*)之前,务必备份你的系统(使用 mksysb 命令创建系统镜像),这是最重要的黄金法则。
  2. 使用预览模式 -p:对于不熟悉的操作,特别是更新核心组件时,先用 -p 选项预览,检查依赖关系和将要安装的文件集,避免意外。
  3. 查看日志文件installp 的执行日志会保存在 /tmp/installp.log/tmp/installog.* 文件中,如果安装失败,第一时间查看这些日志文件,它们会提供详细的错误信息。
  4. 理解 LPP Sourceinstallp 需要一个完整的 LPP Source(软件包源),这通常是一张 AIX 安装光盘或从光盘创建的目录结构,仅仅把几个 .bff 文件丢进一个目录是不够的。
  5. 权限:执行 installp 命令通常需要 root 用户或 aixinsta 组的权限。
  6. 替代工具 nim:在企业环境中,对于多台 AIX 服务器的管理,强烈推荐使用 NIM (Network Installation Management),NIM 可以集中管理软件包、维护级别、系统镜像等,实现大规模、自动化的 AIX 系统部署和维护,效率远高于手动使用 installp

lppchklslpp 的关系

installp 通常不单独使用,它会与其他几个命令配合,形成一个完整的工作流:

  • lslpp (List LPP)查询,用于列出已安装的软件包及其状态、版本等信息,常用于安装前检查现状。
    • lslpp -l bos.rte:列出 bos.rte 的详细信息。
    • lslpp -f bos.rte:列出 bos.rte 包含的所有文件。
  • lppchk (LPP Check)校验,用于检查已安装软件包的文件是否完整、权限是否正确、是否被意外修改,在安装后或系统出现问题时运行,非常有用。
    • lppchk -v:详细检查并报告所有不一致的地方。
  • installp执行,负责安装、更新、卸载等实际操作。

典型工作流:

  1. 检查现状lslpp -l bos.*
  2. 预览操作installp -p -d /mnt bos.rte
  3. 执行安装/更新installp -a -d /mnt bos.rte
  4. 验证结果lslpp -l bos.rtelppchk -v

希望这份详细的指南能帮助你全面了解 installp 命令!

分享:
扫描分享到社交APP
上一篇
下一篇