树莓派用服务方式设置开机启动

1、首先写个简单的python 脚本
脚本很简单,就是树莓派上一个灯闪烁程序,须要学gpio能够看我以前的博客
文件保存在/home/pi/script/ledblink.pypython

  1. #!/usr/bin/env python
  2.   
  3. import RPi.GPIO as GPIO
  4. import time
  5. GPIO.setmode(GPIO.BCM)
  6. GPIO.setup(21,GPIO.OUT)
  7. while True:
  8.   try:
  9.     GPIO.output(21,True)
  10.     time.sleep(1)
  11.     GPIO.output(21,False)
  12.     time.sleep(1)
  13.   except (KeyboardInterrupt, SystemExit):
  14.     GPIO.close()
  15.     print "exit"

启动脚本能够是python,能够是shell,也能够是C语言C++编译的可执行文件。
 shell

二 、开机启动脚本
保存脚本为/etc/init.d/ledblink文件bash

  1. #!/bin/bash
  2. # /etc/init.d/ledblink
  3.   
  4. ### BEGIN INIT INFO
  5. # Provides: embbnux
  6. # Required-Start: $remote_fs $syslog
  7. # Required-Stop: $remote_fs $syslog
  8. # Default-Start: 2 3 4 5
  9. # Default-Stop: 0 1 6
  10. # Short-Description: ledblink initscript
  11. # Description: This service is used to manage a led
  12. ### END INIT INFO
  13.   
  14. case "$1" in
  15.     start)
  16.         echo "Starting LED Blink"
  17.         /home/pi/script/ledblink.py &
  18.         ;;
  19.     stop)
  20.         echo "Stopping ledblink"
  21.         #killall ledblink.py
  22.         kill $(ps aux | grep -m 1 'python /home/pi/script/ledblink.py' | awk '{ print $2 }')
  23.         ;;
  24.     *)
  25.         echo "Usage: service ledblink start|stop"
  26.         exit 1
  27.         ;;
  28. esac
  29. exit 0

复制代码ide

3、设置python脚本开机启动ui

  1. sudo chmod +x /etc/init.d/ledblink

复制代码ip

这样启动改脚本用service 命令就能够rem

  1. sudo service ledblink start#启动
  2. sudo service ledblink stop#中止

复制代码博客

最后设置开机启动就行了it

  1. sudo update-rc.d ledblink defaults

复制代码io

这样就完工了,重启树莓派就会发现led本身闪烁了,中止用sudo service ledblink stop就行。

相关文章
相关标签/搜索