首页 > 解决方案 > 有没有一种安全的方法可以在没有 sudo 权限的情况下从 C++ 关闭 Jetson Nano (Linux)?

问题描述

我知道这个问题听起来很奇怪,但我想做的是为 Jetson Nano 创建一个 C++ 程序,它应该在启动时自动运行,完成后关闭系统。由于它是自动启动的,因此我无法指定 sudo 密码,因此我需要一种方法来做到这一点,例如通过授予关闭脚本的执行权限或其他方式。如果您知道更好的解决方案,请随时分享,我会很高兴任何提示。

第二个问题是我找不到 C++ 命令来安全地关闭基于 Linux 的 Jetson Nano。我尝试了 2 种不同的解决方案:

int (main) {
    system("/bin/sh -c shutdown -P now");
}

这样做了 2 次后,系统启动时卡在了登录循环中,所以我的整个操作系统都被破坏了。我不得不重新安装到另一个 SD 卡。

int (main) {
    reboot(LINUX_REBOOT_CMD_POWER_OFF);
}

这也有效,但它会严厉地关闭 Jetson Nano,通常在关闭时显示的内核消息不会显示。由于我不想冒另一个系统故障的风险,任何人都可以建议一种经过批准且安全的方法来关闭 Jetson Nano 吗?谢谢!

标签: c++linuxsudoshutdown

解决方案


推荐阅读