---
title: RPM包安装
description: "KAE2.0的RPM软件包包括kae-driver、kae-openssl、kae-zip，使用加解密算法需要安装kae-driver和kae-openssl，使用KAEzip相关算法需要安装kae-driver和kae-zip。推荐使用源码的方式来安装KAE2.0，如需在openEuler以外的其他OS上通过RPM包方式安装KAE2.0，则需要通过源码制作RPM包再安装。若需要升级KAE版本，请先卸载旧版本再进行新版本的安装。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/252RC1/accel/kunpengaccel_06_0013.html
sourcePath: /source/zh/kunpengboostkithistory/252RC1/accel/kunpengaccel_06_0013.html
indexId: 28e9c756e84fbab2f49e5f273b8a66a36f093648804f7985a6f7fb487fe8b13472
---
# RPM包安装

KAE2.0的RPM软件包包括kae-driver、kae-openssl、kae-zip，使用加解密算法需要安装kae-driver和kae-openssl，使用KAEzip相关算法需要安装kae-driver和kae-zip。推荐使用源码的方式来安装KAE2.0，如需在openEuler以外的其他OS上通过RPM包方式安装KAE2.0，则需要通过源码制作RPM包再安装。若需要升级KAE版本，请先卸载旧版本再进行新版本的安装。

目前KAE2.0的RPM包是基于指定tag点、特定OS制作的，不具备KAE2.0的最新特性和OS的通用性。


#### 前提条件

- RPM工具能正常使用。
- 使用openssl version命令检查OpenSSL是否为1.1.1x系列，若不符合请参见  安装OpenSSL/Tongsuo
安装OpenSSL。
- 使用以下命令安装相关依赖。

```
yum install -y make kernel-devel libtool numactl-devel openssl-devel chrpath  lz4-devel
```


- 设置OpenSSL环境变量“OPENSSL_ENGINES”为KAE动态库所在目录，使OpenSSL能够识别到KAE引擎。
  1 export OPENSSL_ENGINES=/usr/local/lib/engines-1.1

- 设置LD_LIBRARY_PATH环境变量，使KAE能够识别到UADK驱动动态库。
  1 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib


#### 安装步骤

1. 使用SSH远程登录工具，以root账号进入Linux操作系统命令行界面。
2. 请参见获取软件包将获取到的KAE2.0 RPM软件包拷贝到自定义路径下。若KAE代码仓没有相应OS的RPM，则需要通过以下步骤制作RPM包。

  a. 请从    GitCode(https://gitcode.com/boostkit/KAE)
下载KAE2.0源码包，或通过以下命令下载。

```
git clone https://gitcode.com/boostkit/KAE.git -b kae2
```


  b. 在KAE源码目录制作RPM包。

```
sh build.sh rpmpack
```


3. 安装加速驱动软件RPM包kae-driver。
  1 rpm -ivh kae-driver-2.0.1-1.aarch64.rpm

  回显结果如下即表明安装成功。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 Verifying... ################################# [100%] Preparing... ################################# [100%] Preprocessing before installing the driver checking installed modules uacce modules start to install checking installed modules hisi_sec2 modules start to install checking installed modules hisi_hpre modules start to install checking installed modules hisi_zip modules start to install Updating / installing... 1:kae-driver-2.0.1-1 ################################# [100%] installing driver... uacce modules installed hisi_sec2 modules installed hisi_hpre modules installed hisi_zip modules installed

  若安装驱动或重启设备后查询不到设备文件，可能是操作系统自带加速驱动导致，可以卸载驱动后重新加载；或在启动脚本rc.local中加上重新加载驱动命令，以确保重启设备后能正常加载加速器驱动。以下命令以hisi_sec2为例重新加载。 1 2 rmmod hisi_sec2 modprobe hisi_sec2

4. 安装引擎库软件RPM包kae-openssl。
  1 rpm -ivh kae-openssl-2.0.1-1.aarch64.rpm

  回显结果如下即表明安装成功。 1 2 3 4 5 Verifying... ################################# [100%] Preparing... ################################# [100%] Updating / installing... 1:kae-openssl-2.0.1-1 ################################# [100%] installing openssl engine...

5. 安装KAEZip软件RPM包kae-zip。
  1 rpm -ivh kae-zip-2.0.1-1.aarch64.rpm

  回显结果如下即表明安装成功。

  1 2 3 4 5 6 Verifying... ################################# [100%] Preparing... ################################# [100%] installing pre zip... Updating / installing... 1:kae-zip-2.0.1-1 ################################# [100%] installing post zip...

6. 查看相关软件是否已正常安装到系统内。

  a. 查看驱动是否安装成功。

    - 查看“/sys/class/uacce”目录下是否存在加速引擎文件系统。
      1 ll /sys/class/uacce/

      回显信息如下所示，表示驱动安装成功。 1 2 3 4 5 6 lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_hpre-2 -> ../../devices/pci0000:78/0000:78:00.0/0000:79:00.0/uacce/hisi_hpre-2 lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_hpre-3 -> ../../devices/pci0000:b8/0000:b8:00.0/0000:b9:00.0/uacce/hisi_hpre-3 lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_sec2-0 -> ../../devices/pci0000:74/0000:74:01.0/0000:76:00.0/uacce/hisi_sec2-0 lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_sec2-1 -> ../../devices/pci0000:b4/0000:b4:01.0/0000:b6:00.0/uacce/hisi_sec2-1 lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_zip-4 -> ../../devices/pci0000:74/0000:74:00.0/0000:75:00.0/uacce/hisi_zip-4 lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_zip-5 -> ../../devices/pci0000:b4/0000:b4:00.0/0000:b5:00.0/uacce/hisi_zip-5

    - 通过lsmod查看驱动安装情况来判断驱动是否安装成功。
      1 lsmod | grep uacce

      回显信息如下所示，表示驱动安装成功。 1 uacce 32768 3 hisi_sec2,hisi_qm,hisi_zip

  b. 查看UADK框架是否安装成功。
    1 ll /usr/local/lib/libwd*

    回显信息如下，表示安装成功。 1 2 3 4 5 6 7 8 9 10 11 12 -rwxr-xr-x. 1 root root 961 Aug 22 17:23 /usr/local/lib/libwd_comp.la lrwxrwxrwx. 1 root root 19 Aug 22 17:23 /usr/local/lib/libwd_comp.so -> libwd_comp.so.2.5.0 lrwxrwxrwx. 1 root root 19 Aug 22 17:23 /usr/local/lib/libwd_comp.so.2 -> libwd_comp.so.2.5.0 -rwxr-xr-x. 1 root root 377872 Aug 22 17:23 /usr/local/lib/libwd_comp.so.2.5.0 -rwxr-xr-x. 1 root root 973 Aug 22 17:23 /usr/local/lib/libwd_crypto.la lrwxrwxrwx. 1 root root 21 Aug 22 17:23 /usr/local/lib/libwd_crypto.so -> libwd_crypto.so.2.5.0 lrwxrwxrwx. 1 root root 21 Aug 22 17:23 /usr/local/lib/libwd_crypto.so.2 -> libwd_crypto.so.2.5.0 -rwxr-xr-x. 1 root root 715616 Aug 22 17:23 /usr/local/lib/libwd_crypto.so.2.5.0 -rwxr-xr-x. 1 root root 907 Aug 22 17:23 /usr/local/lib/libwd.la lrwxrwxrwx. 1 root root 14 Aug 22 17:23 /usr/local/lib/libwd.so -> libwd.so.2.5.0 lrwxrwxrwx. 1 root root 14 Aug 22 17:23 /usr/local/lib/libwd.so.2 -> libwd.so.2.5.0 -rwxr-xr-x. 1 root root 1342080 Aug 22 17:23 /usr/local/lib/libwd.so.2.5.0

  c. 查看KAE引擎是否安装成功。
    1 ll /usr/local/lib/engines-1.1

    回显信息如下，表示安装成功。

    1 2 3 4 5 6 total 5644 -rw-r--r--. 1 root root 3846524 Aug 22 17:28 kae.a -rwxr-xr-x. 1 root root 995 Aug 22 17:28 kae.la lrwxrwxrwx. 1 root root 12 Aug 22 17:28 kae.so -> kae.so.2.0.0 lrwxrwxrwx. 1 root root 12 Aug 22 17:28 kae.so.2 -> kae.so.2.0.0 -rwxr-xr-x. 1 root root 1967736 Aug 22 17:28 kae.so.2.0.0

  d. 查看KAEZip解压缩模块是否安装成功。
    1 ll /usr/local/kaezip/lib

    回显信息如下，表示安装成功。

    1 2 3 4 5 6 7 8 9 total 440 lrwxrwxrwx. 1 root root 40 Jan 12 2024 libkaezip.so -> /usr/local/kaezip/lib/libkaezip.so.2.0.1 lrwxrwxrwx. 1 root root 40 Jan 12 2024 libkaezip.so.0 -> /usr/local/kaezip/lib/libkaezip.so.2.0.1 -rwxr-xr-x. 1 root root 148096 Jan 12 2024 libkaezip.so.2.0.1 -rwxr-xr-x. 1 root root 146306 Jan 12 2024 libz.a lrwxrwxrwx. 1 root root 14 Jan 12 2024 libz.so -> libz.so.1.2.11 lrwxrwxrwx. 1 root root 14 Jan 12 2024 libz.so.1 -> libz.so.1.2.11 -rwxr-xr-x. 1 root root 143656 Jan 12 2024 libz.so.1.2.11 drwxr-xr-x. 2 root root 4096 Dec 5 18:48 pkgconfig


#### 安装后检查

1. 查看KAE RPM软件包。
  1 rpm -qa kae-driver kae-openssl kae-zip

  显示以下格式内容说明安装成功。 1 2 3 kae-openssl-2.0.1-1.aarch64 kae-driver-2.0.1-1.aarch64 kae-zip-2.0.1-1.aarch64

2. 查看虚拟文件系统下对应的加速器设备。
  1 ls -al /sys/class/uacce/

  回显结果如下。 1 2 3 4 5 6 7 total 0 lrwxrwxrwx. 1 root root 0 Nov 14 03:45 hisi_hpre-2 -> ../../devices/pci0000:78/0000:78:00.0/0000:79:00.0/uacce/hisi_hpre-2 lrwxrwxrwx. 1 root root 0 Nov 14 03:45 hisi_hpre-3 -> ../../devices/pci0000:b8/0000:b8:00.0/0000:b9:00.0/uacce/hisi_hpre-3 lrwxrwxrwx. 1 root root 0 Nov 14 08:39 hisi_sec-0 -> ../../devices/pci0000:74/0000:74:01.0/0000:76:00.0/uacce/hisi_sec-0 lrwxrwxrwx. 1 root root 0 Nov 14 08:39 hisi_sec-1 -> ../../devices/pci0000:b4/0000:b4:01.0/0000:b6:00.0/uacce/hisi_sec-1 lrwxrwxrwx. 1 root root 0 Dec 5 18:59 hisi_zip-4 -> ../../devices/pci0000:74/0000:74:00.0/0000:75:00.0/uacce/hisi_zip-4 lrwxrwxrwx. 1 root root 0 Dec 5 18:59 hisi_zip-5 -> ../../devices/pci0000:b4/0000:b4:00.0/0000:b5:00.0/uacce/hisi_zip-5

3. 查看KAEOpensslEngine加速引擎是否生效。
  以验证RSA性能为例，验证步骤请参见测试同步RSA性能，通过RSA性能命令可以看到指定KAE引擎之后，RSA的性能得到明显提升。

  除上述方法，在执行RSA性能命令过程中，可以在新的终端上同时查看hisi_hpre设备的硬件队列资源情况如下，相同地，SM3/SM4算法可以查看hisi_sec2的硬件队列消耗情况。

  1 cat /sys/class/uacce/hisi_hpre-*/available_instances

  您也可以通过以下命令每0.1秒刷新一次，实时查看hisi_hpre的硬件队列消耗情况。 1 watch -n 0.1 cat /sys/class/uacce/hisi_hpre-*/available_instances

  显示结果从256变为255，说明RSA算法消耗了HPRE加速器一个硬件单元队列，说明KAEOpensslEngine加速引擎已生效。

4. 查看KAEZip库加速引擎是否生效。通过ldd命令查看KAEZip加速库是否链接到libwd库。
  1 ldd /usr/local/kaezip/lib/libz.so.1.2.11

  如果有如下返回信息，说明KAEZlib加速库安装成功。同样的，用户的进程也可以通过ldd命令查看是否使用libwd库。 1 2 3 4 5 6 7 linux-vdso.so.1 (0x0000ffffa631d000) libc.so.6 => /usr/lib64/libc.so.6 (0x0000ffffa6110000) libkaezip.so => /usr/local/kaezip/lib/libkaezip.so (0x0000ffffa60df000) libwd.so.2 => /usr/local/lib/libwd.so.2 (0x0000ffffa607e000) libwd_comp.so.2 => /usr/local/lib/libwd_comp.so.2 (0x0000ffffa605d000) /lib/ld-linux-aarch64.so.1 (0x0000ffffa62e0000) libnuma.so.1 => /usr/lib64/libnuma.so.1 (0x0000ffffa6038000)

5. 查看KAEZstd库加速引擎是否生效。通过ldd命令查看KAEZstd加速库是否链接到libwd库。
  1 ldd /usr/local/kaezstd/lib/libkaezstd.so

  如果有如下返回信息，说明KAEZstd加速库安装成功。 1 2 3 4 5 6 linux-vdso.so.1 (0x0000ffff89774000) libwd.so.2 => /usr/local/lib/libwd.so.2 (0x0000ffff896b5000) libwd_comp.so.2 => /usr/local/lib/libwd_comp.so.2 (0x0000ffff89684000) libc.so.6 => /usr/lib64/libc.so.6 (0x0000ffff894d5000) /lib/ld-linux-aarch64.so.1 (0x0000ffff89737000) libnuma.so.1 => /usr/lib64/libnuma.so.1 (0x0000ffff894b0000)

6. 查看KAELz4库加速引擎是否生效。通过ldd命令查看KAELz4加速库是否链接到libwd库。
  1 ldd /usr/local/kaelz4/lib/libkaelz4.so

  如果有如下返回信息，说明KAELz4加速库安装成功。 1 2 3 4 5 6 linux-vdso.so.1 (0x0000ffff84add000) libwd.so.2 => /usr/local/lib/libwd.so.2 (0x0000ffff84a0e000) libwd_comp.so.2 => /usr/local/lib/libwd_comp.so.2 (0x0000ffff849dd000) libc.so.6 => /usr/lib64/libc.so.6 (0x0000ffff8482e000) /lib/ld-linux-aarch64.so.1 (0x0000ffff84aa0000) libnuma.so.1 => /usr/lib64/libnuma.so.1 (0x0000ffff84809000)
