关于ubuntu设置sh文件开机自启动python3和sudo python3问题

news2024/11/19 22:35:20

关于ubuntu设置sh文件开机自启动python3和sudo python3问题

  • 说明
    • 系统为 ubuntu22.04
    • python是python3.10.12
    • ros系统为ros2 humble
  • 背景
  • 解决方法
  • 补充

说明

系统为 ubuntu22.04

python是python3.10.12

ros系统为ros2 humble

背景

将一个py文件设置为开机自启动,服务启动时报错,显示找不到rclpy模块。
直接运行./autotest.sh没有问题,sudo ./autotest.sh报错如下。

在这里插入图片描述

解决方法

1、打开两个终端,分别输入以下命令,如下图所示。

python3
import sys
sys.path
和
sudo python3
import sys
sys.path

在这里插入图片描述
2、查看上图打印结果,找到sudo python3那边没有的部分,如上图红框显示。
3、将缺少部分写在XXX.pth文件中,并保存于 /usr/local/lib/python3.10/dist-packages/路径下(路径根据自己实际情况修改,应该可以写在一个pth文件中吧,我也没查,就直接写了两个),如下图所示。
在这里插入图片描述
4、此时运行还会缺少一些so文件,报错如下:

Traceback (most recent call last): File “/home/tls/ws/firbot/ui_design/bringup.py”, line 8, in import rclpy File “/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/init.py”, line 49, in from rclpy.signals import install_signal_handlers File “/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/signals.py”, line 15, in from rclpy.exceptions import InvalidHandle File “/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/exceptions.py”, line 15, in from rclpy.impl.implementation_singleton import rclpy_implementation as _rclpy File “/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/impl/implementation_singleton.py”, line 32, in rclpy_implementation = import_c_library(‘._rclpy_pybind11’, package) File “/opt/ros/humble/lib/python3.10/site-packages/rpyutils/import_c_library.py”, line 39, in import_c_library return importlib.import_module(name, package=package) File “/usr/lib/python3.10/importlib/init.py”, line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) ImportError: librcl_action.so: cannot open shared object file: No such file or directory The C extension ‘/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/_rclpy_pybind11.cpython-310-x86_64-linux-gnu.so’ failed to be imported while being present on the system. Please refer to ‘https://docs.ros.org/en/{distro}/Guides/Installation-Troubleshooting.html#import-failing-even-with-library-present-on-the-system’ for possible solutions

解决方法为:找到你所缺文件(如librcl_action.so)路径,创建一下软链接就可以了。

sudo ln -s /opt/ros/humble/lib/lib* /usr/lib

补充

1、开机自启动的autotest.sh文件放在了/etc/init.d/目录下,如下图所示。
在这里插入图片描述
2、都设置完之后可以启动一下看一下是否启动成功,下图是启动成功的状态。

sudo service autotest.sh start
sudo service autotest.sh status

在这里插入图片描述
也可通过命令关闭。

sudo service autotest.sh stop

在这里插入图片描述
最后,重启系统就可以看下是否设置成功了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1031998.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何对pdf文件进行压缩?

如何对pdf文件进行压缩?一般来说,PDF文件里面一般会包含大量的图像、文本和其他类型的独裁,这使得它们的文件大小相对于其他文档要大得多(其实主要是pdf文件里面包含的大量图片,尤其是高清拖)。由于pdf文件…

Tiny11:极限精简的Windows 11系统镜像,老旧电脑的福音(移除Windows11安装要求限制,且支持苹果ARM架构CPU,全版本资源下载)

文章目录 优点和适用场景系统下载系统版本说明系统安装Tiny11 设置安装简体中文语言方法Windows 11,作为微软最新一代操作系统,固然有其强大的功能和卓越的性能,但有时,更轻、更小、更快速的需求也在用户的考虑范围之内。这就是Tiny11存在的理由。Tiny11是基于Windows 11的…

【收藏】如何最快取得NISP二级和CISP

【收藏】如何最快取得NISP二级和CISP 👉今天小编来给大家讲解一下如何最快的取得NISP二级和CISP证书 ✅我们从如下几个方面为大家讲解: 🔺报名条件 🔺考试形式 🔺考试题型 🔺如何备考 🔺证书用途…

Wish下单支付教程,测评养号需要满足哪些技术要点?

Wish是2011年成立的一家高科技独角兽公司,有90%的卖家来自中国,也是北美和欧洲最大的移动电商平台。 它使用一种优化算法大规模获取数据,并快速了解如何为每个客户提供最相关的商品,让消费者在移动端便捷购物的同时享受购物的乐趣…

C# VS CS1752解决办法

代码报错: Severity Code Description Project File Line Suppression State Error CS1752 项目文件行抑制状态 错误cs1752无法嵌入互操作类型“ActUtlTypeClass”。 将引用的dll打开其属性 选择属性,将嵌入互操作类型改为false即可。

Java多线程篇(4)——wait/notify和park/unPark

文章目录 Object - wait/notifyobject.wait()object.notify() LockSupport - park/unparkLockSupport.park()LockSupport.unPark() Object - wait/notify object.wait() ObjectSynchronizer::wait 从这段代码可以得到两个信息 1:wait() 底层是对象锁(就…

You must install .NET Desktop Runtime to run this application

使用.Net6 写了个小程序,放到另一台机器上报这个错。 安装 x64的Desktop Runtime 安装 x86的Desktop Runtime 安装 x64的 .Net6 SDK 安装 x86的 .Net6 SDK 均无效,还是报这个错。 最后发现问题是因为生成目录里有一个 xxx.runtimeconfig.json 的文…

23年下考前须知-软考中级信息安全工程师

信息安全工程师主要涉及计算机信息安全方面,在计算机软硬件、网络、应用相关领域从事安全系统设计、安全产品开发、产品集成、信息系统安全检测与审计等方面工作,服务单位可以是国家机关、企事业单位及科研教学单位等。 一、考试报名时间 信安考试一年…

‘Xcode Unable to execute command: Segmentation fault: 11‘

概述, Xcode Unable to execute command: Segmentation fault: 11 解决方案, 添加: Build Setting -> Other Linker Flags -> -ld64 延伸, -ld64是什么, 在 Xcode 的 Build Setting 中,Other Linker Flags(其他链接器标志)用于向链…

c++ 多态的

#include <iostream> #include <string.h> using namespace std;//含有纯虚函数为抽象类&#xff0c;无法实例化 class AbstractDrinking { public://煮水virtual void Boil() 0;//冲泡virtual void Brew() 0;//导入杯子中virtual void PourInCup() 0;//加入辅料…

doxygen c++ 语法

c基本语法模板 以 /*! 开头, */ 结尾 /*!\关键字1\关键字2 */1 文件头部信息 /*! \file ClassA.h* \brief 文件说明 定义了类fatherA* \details This class is used to demonstrate a number of section commands.* \author John Doe* \author Jan Doe* \v…

C++11的一些新特性|右值引用|STL中的一些变化

文章目录 1、{}初始化 2、声明 2.1auto 2.2、decltype 2.3、nullptr 2.4.范围for循环 3、STL中的一些新变化 3.1.新容器 3.2容器中的一些新方法 4.右值引用和移动语义 左值引用和右值引用 左值引用的短板&#xff1a; 右值引用使用场景和意义&#xff1a; move的作…

干货:数据仓库基础知识(全)

1、什么是数据仓库&#xff1f; 权威定义&#xff1a;数据仓库是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合&#xff0c;用于支持管理决策。 1&#xff09;数据仓库是用于支持决策、面向分析型数据处理&#xff1b; 2&#xff09;对多个异构的数据源有效集…

【分享】Word文档如何批量转换成PDF?

Word格式比较容易编辑&#xff0c;是工作中经常用到的文档工具&#xff0c;有时候为了避免文档在传送中出现乱码&#xff0c;或者防止被随意更改&#xff0c;很多人会把Word文档转换成PDF&#xff0c;那Word文档要怎样转成PDF呢&#xff1f;如果Word文档很多&#xff0c;有没有…

两种高效的事件处理模式:Reactor模式与Proactor模式

1.Reactor模式 一般使用同步IO模型实现 &#xff08;1&#xff09;Reactor 负责监听和分发事件&#xff0c;事件类型包含连接事件、读写事件&#xff1b; &#xff08;2&#xff09;处理资源池负责处理事件&#xff0c;如 read -> 业务逻辑 -> send&#xff1b; 使用同…

three.js加载gltf文件过程以及遇到的问题

说明&#xff1a;在vue项目中使用的threejs; 刚开始&#xff0c;我是从网上下载的gltf文件&#xff0c;将.gltf 文件放在了src/assets/xxx.gltf , 对gltf格式的文件并不了解&#xff0c;使用如下方式加载gltf文件时&#xff0c; // 创建gltf加载器对象 const loader new G…

[RF学习记录][参数读取]从yaml文件读取参数变量

robotframework支持从yaml文件读取变量&#xff0c;对于比较多的参数&#xff0c;可以在yaml文件中定义好&#xff0c;在robot脚本中引用 1、定义yaml文件 文件内容如下&#xff0c;注意&#xff0c;变量和变量值之间要以4个字符分开 yaml_demo_name: tester traing_gpt_…

GC1262R/S 国产芯片,具有高效的直接 PWM 控制方式,它可以控制无刷直流电机转速,可替代APX9262R/茂达

GC1262R/S 是单线圈无刷直流电机的 电机驱动器。 具有高效的直接 PWM 控制方式&#xff0c;它可以控制无刷直流电机转速。它集成了最低速度限制模式、可调速度 斜率控制模式、软启动模式、风扇转速计、 锁保护、自动重启、TSD、OCP 和噪声控制模 式&#xff0c;噪声控制模式根据…

JavaScript的Web Worker

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ JavaScript的Web Worker⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 欢迎来到前端入门之旅&#xff01;感兴趣的可以订阅本专栏哦&#xff01;这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量…

全国直播基地排名前十,西南人气最旺的成都直播产业基地即将正式开园

直播产业作为新媒体行业的重要组成部分&#xff0c;在近年来得到了迅速发展。四川成都作为全国直播基地排名前十的城市之一&#xff0c;人气最旺的直播基地——成都天府蜂巢直播产业基地&#xff0c;即将正式开园。 同一决心&#xff0c;推动资源 对于即将开园的成都直播产业基…