Device默认开启了H2D(Host to Device)文件传输时的白名单校验功能,对传输文件进行大小、存放目录及权限的校验,仅在白名单列表中的文件才允许使用HDC接口从Host传输到Device。
不同Device加载不同业务包的场景下,开发者需要调用HDC接口将业务包传输到Device,此种场景下,开发者需要参考本章节进行H2D文件传输白名单的配置。
H2D白名单校验文件为Device侧的“/etc/hdcFileTransWhiteList.cfg”文件,您需要在制作Device侧文件系统时修改此文件,文件系统的解压缩及压缩方法可参见定制文件系统,下面仅描述此文件的配置方法。
cd /usr/local/filesys_modify/tempdir
cd etc
chattr -i hdcFileTransWhiteList.cfg
请在此文件中追加需要进行传输的文件的校验规则,配置格式如下:
<文件名> <文件存储目的路径> <文件名匹配规则> <文件大小上限> <文件数量> <文件传输用户权限>
针对昇腾710 AI处理器默认可信路径为:/home/HwHiAiUser/hdcd/devicex,devicex目录需要根据当前Device设备的id号确定,如果当前Device的设备ID是“0 ”,则为“device0”。
其中filepath需要为已存在的路径,例如配置为“/temp”,则:
针对昇腾710 AI处理器,代表目的存储路径为:/home/HwHiAiUser/hdcd/devicex/temp,devicex目录需要根据当前Device设备的id号确定,如果当前Device的设备ID是“0 ”,则为“device0”。
配置示例:
service.tar.gz /service 1 55428800 1 0
chattr +i hdcFileTransWhiteList.cfg
开发者也可以通过重命名白名单校验文件(hdcFileTransWhiteList.cfg)的方式关闭H2D的校验功能,但H2D文件传输的白名单校验功能关闭后,从Host传输到Device的文件不会进行任何限制,需要用户自行控制文件数量与大小,否则会存在Device侧内存空间耗尽,导致应用程序申请不到内存的风险。
关闭H2D校验功能的参考步骤如下:
cd /usr/local/filesys_modify/tempdir
cd etc
chattr -i hdcFileTransWhiteList.cfg
mv hdcFileTransWhiteList.cfg hdcFileTransWhiteList.cfg_back