我正在做一個項目,讀取GPS加密狗輸出的GPS值,需要以編程方式 啓動gpsd守護進程。以編程方式在linux中啓動GPSD守護進程
即我需要自動執行以下命令; sudo gpsd/dev/ttyUSB0 -F /var/run/gpsd.sock
如上所述,手動啓動守護程序後,我能夠通過代碼讀取座標。但不知道如何通過他的代碼啓動守護進程。
我正在做一個項目,讀取GPS加密狗輸出的GPS值,需要以編程方式 啓動gpsd守護進程。以編程方式在linux中啓動GPSD守護進程
即我需要自動執行以下命令; sudo gpsd/dev/ttyUSB0 -F /var/run/gpsd.sock
如上所述,手動啓動守護程序後,我能夠通過代碼讀取座標。但不知道如何通過他的代碼啓動守護進程。
爲Debian它只是
dpkg-reconfigure gps
由於GPSD是一個守護進程,你可以設置要在啓動時自動運行的守護進程。如何做到這一點取決於你擁有哪個啓動系統。舉例來說,如果你有systemd,你必須寫一個gpsd.service文件,這樣
[Unit]
Description=GPSd daemon service file
[Service]
Type=forking
User=root
Group=dialout
TimeoutStartSec=0
ExecStart=/usr/local/sbin/gpsd /dev/ttyUSB0 -F /var/run/gpsd.sock
[Install]
# Grouping mechanism that let systemd start groups of processes up at the same time
WantedBy=multi-user.target
的東西,然後在/lib/systemd/system
安裝,最後用下面的命令
$ sudo systemctl enable gpsd
$ sudo systemctl start gpsd
開始命令只是將gpsd作爲systemd守護進程運行,而無需重新啓動系統。
避免在程序中使用'sudo'。也許你可以配置你的'udev'來在加密狗插入或激活時守護守護進程。 – 2013-03-21 06:20:40
實際上,這是我需要知道的......如何配置以在加密狗插入時啓動守護進程 – Taani 2013-03-21 06:31:49
仔細研究'udev'的文檔... – 2013-03-21 06:32:36