跳转至

U盘升级工程无法运行

1.故障排查

检查磁盘空间

  • 使用SSH工具进入设备后台
  • 执行以下命令查看/usr分区的可用空间: df -h
  • 重点关注/usr分区的可用空间
  • 如可用空间不足,可对工程存放路径下的垃圾文件进行清理

2.空间清理

2.1 空间清理示例脚本

#!/bin/bash

# 保留的系统文件列表
BIN_KEEP="bsd download gdbserver mountex SysSet"
LIB_KEEP="libcbl.so libcbl.so.6 libcbl.so.6.0.0 libcbl.so.6.15.2 libgtl.so libplatform.so libplatform.so.0 libplatform.so.0.0.0 libplc5v_driver.so libplc6v_driver.so libprotobuf-lite.so libprotobuf-lite.so.15 libprotobuf-lite.so.15.0.1 librttr_core.so librttr_core.so.0.9.6 libscl.so libscl.so.0 libscl.so.0.0.1 libservcli.so libservcli.so.1 libservcli.so.1.0.0 libSysSetGui.so libWecon6VProtocolClient.so"

# 目标路径
BIN_PATH="/usr/local/bin"
LIB_PATH="/usr/local/lib"

# 清理函数
clean_directory() {
    local dir_path=$1
    local keep_list=$2

    for file in "$dir_path"/*; do
        if [ -f "$file" ]; then
            filename=$(basename "$file")
            if ! echo " $keep_list " | grep -q " $filename "; then
                rm -f "$file"
            fi
        fi
    done
}

# 清理目录
if [ -d "$BIN_PATH" ]; then
    clean_directory "$BIN_PATH" "$BIN_KEEP"
fi

if [ -d "$LIB_PATH" ]; then
    clean_directory "$LIB_PATH" "$LIB_KEEP"
fi

2.2 使用方法

  1. 将脚本保存为clean_space.sh并将该脚本放入U盘根目录。
  2. 将U盘插入设备后使用U盘升级功能执行该脚本

2.3 注意事项

  • 脚本会清理/usr/local/bin/usr/local/lib目录下的非系统文件
  • 保留列表中的系统文件不会被删除
  • 执行前建议备份重要数据