BeagleBone BLUE:如何在启动时启动磁强计

2024-05-16 11:43:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我制作了一个小Python3脚本,用于记录MPU9250磁性数据。我可以通过

debian@beaglebone:~$ sudo systemctl start logdata.service 
debian@beaglebone:~$ sudo systemctl status logdata.service 
● logdata.service - Logging of 6D-Sensor to SD-card
   Loaded: loaded (/lib/systemd/logdata.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2020-09-20 10:32:19 UTC; 16s ago
 Main PID: 1622 (python3)
    Tasks: 1 (limit: 1026)
   Memory: 9.9M
   CGroup: /system.slice/logdata.service
           └─1622 python3 /var/lib/cloud9/oe8bck/imu.py

Sep 20 10:32:19 beaglebone systemd[1]: Started Logging of 6D-Sensor to SD-card.

但在启动时启用时,它不会启动:

debian@beaglebone:~$ sudo service logdata status
[sudo] password for debian: 
● logdata.service - LSB: log sensor data to SD-card
   Loaded: loaded (/etc/init.d/logdata; generated)
   Active: active (exited) since Sun 2020-09-20 09:40:18 UTC; 1min 38s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 550 ExecStart=/etc/init.d/logdata start (code=exited, status=0/SUCCESS)

Sep 20 09:40:36 beaglebone logdata[550]: /usr/local/lib/python3.7/dist-packages/rcpy-0.5.1-py3.7-linux-armv7l.egg/rcpy/__init__.py:127: UserWarni
Sep 20 09:40:36 beaglebone logdata[550]:   warnings.warn('> Installing signal handlers')
Sep 20 09:40:36 beaglebone logdata[550]: Press Ctrl-C to exit
Sep 20 09:40:36 beaglebone logdata[550]: Bye BeagleBone!
Sep 20 09:40:36 beaglebone logdata[550]: Traceback (most recent call last):
Sep 20 09:40:36 beaglebone logdata[550]:   File "/var/lib/cloud9/oe8bck/imu.py", line 59, in <module>
Sep 20 09:40:36 beaglebone logdata[550]:     data=mpu9250.read()
Sep 20 09:40:36 beaglebone logdata[550]: mpu9250.error: Failed to read magnetometer data
Sep 20 09:40:36 beaglebone logdata[550]: Initiating cleanup...
Sep 20 09:40:36 beaglebone logdata[550]: Done with cleanup

在脚本中添加等待状态没有帮助,因此我认为守护进程是在I2C总线正确初始化之前启动的。哪种服务提供这种服务

非常感谢您的提示

韩国, 克里斯托夫


Tags: topydatainitlibstatusservicesudo
1条回答
网友
1楼 · 发布于 2024-05-16 11:43:32

sudo systemctl启用MyService.service

我找到了这个信息。在这些地址联机,以便在Linux上设置服务文件

因此,sudo systemctl start MyService.service使.service文件在当前会话期间工作

并且,sudo systemctl enable MyService.service使.service文件在您重新启动或引导系统时在引导期间工作

如果你需要更多的信息,请直接询问

另外,当我使用/etc/systemd/system作为启动/引导的文件位置时,我还看到您正在使用/etc/init.d

相关问题 更多 >