You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 16.04(NVIDIA TX2)启动脚本无输出问题求助

解决NVIDIA TX2 Ubuntu 16.04开机启动脚本无输出的问题

我之前在NVIDIA TX2的Ubuntu 16.04上折腾开机启动脚本时,也碰到过和你一模一样的问题——手动跑脚本没问题,开机自动执行就没输出。咱们来一步步排查解决:

1. 核心问题:sudo需要无密码验证

开机自动运行时,脚本里的sudo会触发密码验证,但此时没有交互终端,命令会静默失败,自然不会有输出。你可以给nvidia用户配置免密执行python:

  • 打开终端,运行sudo visudo
  • 在文件末尾添加一行(先通过which python确认你的python绝对路径,比如/usr/bin/python):
    nvidia ALL=(ALL) NOPASSWD: /usr/bin/python
    
  • 按Ctrl+O保存,回车确认,再按Ctrl+X退出编辑器。

2. 捕获所有输出(包括错误信息)

你当前只重定向了标准输出,脚本执行的错误信息会丢到标准错误里,不会写入test_output.txt,所以看不到问题。修改launcher.sh的重定向逻辑:

#!/bin/sh
cd /home/nvidia
sudo python test.py >> /home/nvidia/test_output.txt 2>&1

2>&1会把错误信息也合并到输出文件里,方便你排查到底是哪里出了问题。

3. 用python的绝对路径避免环境变量问题

开机启动的环境变量和终端环境不一样,python可能指向的不是你预期的版本。先通过which python拿到绝对路径,然后修改脚本:

#!/bin/sh
cd /home/nvidia
sudo /usr/bin/python test.py >> /home/nvidia/test_output.txt 2>&1

4. 延迟执行确保系统环境初始化完成

有时候开机启动脚本执行太早,系统某些基础服务还没就绪(虽然你的test.py很简单,但保险起见),可以给脚本加个延迟:

  • 打开Startup Applications,编辑你的启动项,把命令改成:
    bash -c "sleep 10 && /home/nvidia/launcher.sh"
    
    延迟10秒再执行脚本,确保系统环境都准备好。

验证方法

修改完后先手动执行/home/nvidia/launcher.sh确认正常,然后重启系统,查看test_output.txt。如果还是有问题,文件里的错误信息会帮你定位具体问题。

内容的提问来源于stack exchange,提问作者Rahul Bohare

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 03:11:37