最快,最簡單的方法就是把上面的命令中/etc/rc.local
文件(不sudo
!)。這是一個在啓動時調用的shell腳本。
更正確的做法是將服務文件創建到/etc/init.d
目錄中。要開始查看任何簡單的文件到該目錄中,請複製並修改它,並確保它是可執行文件。基本的(未經測試)例如:
#!/bin/sh -e
### BEGIN INIT INFO
# Provides: gpsd
# Required-Start:
# Required-Stop:
# Default-Start: 1 2 3 4 5
# Default-Stop:
# Short-Description: Run my GPSd
### END INIT INFO
#
case "$1" in
start)
gpsd /dev/ttyAMA0 -F /var/run/gpsd.sock
;;
stop)
killall -KILL gpsd
;;
restart|force-reload)
killall -KILL gpsd
sleep 3
gpsd /dev/ttyAMA0 -F /var/run/gpsd.sock
;;
*) echo "Usage: $0 {start|stop|restart|force-reload}" >&2; exit 1 ;;
esac
一旦擁有了確保它是在開機啓動,讓您的系統會自動調用service gpsd start
。這是通過基於Debian的發行版中的update-rc.d
命令和RHEL上的systemctl
完成的。
如果你讓我們知道你的Linux發行版,我們可以更具體。
這是一個覆盆子pi所以,這是rasberrian jessie。 – Niana
不知道是否相關,但安裝GPS帽子的指示要求殺死該gpsd serv.ce.在這裏引用「注意,如果你使用的是Raspbian Jessie或更新版本,你需要禁用gpsd安裝的systemd服務,這個服務有systemd監聽本地套接字並且在客戶端連接時運行gpsd,但是它也會會干擾手動運行的其他gpsd實例(如本指南中所述),您將需要通過運行以下命令來禁用gpsd systemd服務:「 – Niana
似乎您已在/ etc/init中擁有'gpsd'文件.d'被禁用,你只是想創建一個新的工作不同?也許'/ etc/rc.local'是一個更好的解決方案......不確定! – urban