更新时间:2024-12-05 GMT+08:00
分享

评估软件兼容性

扫描方式

x2hce-ca工具支持两种软件包扫描方式,请明确将要使用的扫描方式和评估的软件包。

  • 扫描源操作系统上单个或多个应用软件包。
  • 扫描源操作系统上单个或多个目录下的所有应用软件包。

操作步骤

  1. 默认登录或切换到root用户下进行工具使用。
  2. 使用如下命令对软件包进行兼容性扫描。
    x2hce-ca scan <option> [-os_name 源系统名称] [-target_os_name 目标系统名称]

    使用以下命令验证Java默认版本:

    java -version

    • 若目标机器上已安装Java1.8.0,则自动执行后续扫描。
    • 若目标机器上未安装Java1.8.0时,根据操作系统的不同处理方式有所不同。
      • 操作系统是HCE 2.0时,会自动安装缺失的Java依赖:java-1.8.0-openjdk-devel、java-1.8.0-openjdk和java-1.8.0-openjdk-headless。
      • 操作系统不是HCE 2.0时,会出现报错信息提示安装缺失的Java依赖。推荐执行以下命令自行安装。

        yum -y install java-1.8.0-openjdk-devel

    • 若目标机器上存在低于1.8.0版本Java版本时,用户需要执行以下命令手动设置Java默认版本为1.8.0。

      update-alternatives --config java

    <option>有如下设置:

    • Dir_Name/App_Name,扫描单个应用软件包。

      以x86和Arm操作系统架构为例:

      扫描/mnt/路径下的应用软件包NetworkManager-1.18.8-1.el7.x86_64.rpm(x86)

      x2hce-ca scan /mnt/NetworkManager-1.18.8-1.el7.x86_64.rpm -os_name centos7.9 -target_os_name hce2.0

      扫描/mnt/路径下的应用软件包NetworkManager-1.18.8-1.el7.aarch64.rpm(Arm)

      x2hce-ca scan /mnt/NetworkManager-1.18.8-1.el7.aarch64.rpm -os_name EulerOSV2.0SP8arm -target_os_name hce2.0arm -arch aarch64
    • Dir_Name1/App_Name1 Dir_Name2/App_Name2,扫描多个应用软件包。

      以x86操作系统架构为例:

      扫描/opt/x2hce-ca/scan/路径下的应用软件包grep-3.4-0.h3.r3.eulerosv2r9.x86_64.rpm和/opt/x2hce-ca/scan/rpm/路径下的应用软件包groff-1.22.4-5.h1.eulerosv2r9.x86_64.rpm(x86)

      x2hce-ca scan /opt/x2hce-ca/scan/grep-3.4-0.h3.r3.eulerosv2r9.x86_64.rpm /opt/x2hce-ca/scan/rpm/groff-1.22.4-5.h1.eulerosv2r9.x86_64.rpm -os_name centos7.9 -target_os_name hce2.0

      其中-arch的默认值为x86_64。

    • -b Dir_Name,扫描单个目录下的所有应用包。

      例如,扫描directory1目录下的所有应用包。

      x2hce-ca scan -b directory1 -os_name centos7.9  -target_os_name hce2.0
    • -b Dir_Name1 Dir_Name2,扫描多个目录下的所有应用包。

      例如,扫描directory1和directory2目录下的所有应用包。

      x2hce-ca scan -b directory1 directory2 -os_name centos7.9 -target_os_name hce2.0

      建议单个目录下放置不超过750个文件,且文件总大小不超过900M,过多的软件包可能会导致工具故障。

    • -l rpm_Name,扫描本地安装的软件。
      例如,扫描openssl。
      x2hce-ca scan -l openssl -os_name centos7.9 -target_os_name hce2.0
    • -l rpm_Name,扫描多个本地安装的软件。
      例如,扫描openssh和openssl。
      x2hce-ca scan -l openssl,openssh -os_name centos7.9 -target_os_name hce2.0

      -l参数仅支持CentOS操作系统。

    参数

    参数类型

    说明

    -os_name

    String

    源操作系统。

    可选参数,默认参数为centos7.9。

    例如设置为-os_name centos8.2,指选择源操作系统为CentOS 8.2。

    -target_os_name

    String

    目标操作系统。

    可选参数,默认参数为hce2.0。

    例如设置为-target_os_name hce1.1,指选择目标操作系统为Huawei Cloud EulerOS 1.1。

  3. 结果分析。

    以扫描/tmp/x2hce-ca_test目录下的三个RPM包为例,命令执行后将有如下输出。

    • 软件包的兼容性评估报告保存在/opt/x2hce-ca/output/software/目录下,请自行下载查看具体评估结果。
      • 每个软件包有同名Html格式文件,软件包兼容的评估结果如下。

        不兼容的评估结果如下。

      • 详细的依赖包兼容性、接口兼容性等信息可在软件包同名Excel格式文件中查看。

    • 对于扫描失败的应用软件包,请在/opt/x2hce-ca/output/software/目录下查看对应Excel报告。

相关文档