You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Ubuntu 22.04编译NXP驱动后命令执行异常,疑似“变砖”求助

Ubuntu 22.04编译NXP驱动后命令执行异常,疑似“变砖”求助

别慌,这机器没真变砖,问题根源其实很明确,咱一步步来解决:

问题分析

从你提供的echo $PATHtype sudo结果能看出:

  • 你的环境变量PATH里,/home/cwade/bin排在系统默认的命令目录(比如/usr/bin)前面
  • 当前调用的sudo/home/cwade/bin/sudo,这个文件是aarch64架构的二进制程序,而你的Ubuntu 22.04应该是x86_64架构的系统,所以系统找不到aarch64对应的动态链接器/lib/ld-linux-aarch64.so.1,导致报错。
  • 万幸/bin/ls还能正常用,说明系统原生的命令都没问题,只是被优先级更高的错误文件干扰了。

解决步骤

  1. 先删掉错误的sudo文件
    直接调用系统原生的sudo完整路径来执行删除操作:

    /usr/bin/sudo rm /home/cwade/bin/sudo
    
  2. 清理/home/cwade/bin下其他可能的aarch64文件
    编译NXP驱动时可能不小心把交叉编译工具链里的其他aarch64程序也放到了这个目录,用file命令检查并清理:

    /usr/bin/sudo file /home/cwade/bin/*
    

    找到输出里标注为aarch64的二进制文件,用rm命令删掉它们。

  3. 验证修复效果
    执行以下命令确认:

    type sudo
    

    正常应该输出sudo is /usr/bin/sudo,之后再试sudo ls,应该就能正常执行了。

补充说明

这个问题大概率是你在交叉编译NXP驱动时,误将目标架构(aarch64)的工具程序安装到了个人用户目录,而因为PATH的优先级设置,系统优先调用了这些错误架构的程序,导致出现异常。后续编译驱动时要注意安装路径,避免覆盖或干扰系统原生命令。

备注:内容来源于stack exchange,提问作者cdubs

火山引擎 最新活动