[英]Making install script on linux mint
我編寫了一個程序,當我在閑置狀態中有未讀消息時,就會打開Logitech G9 LED燈。 我正在嘗試使用腳本使程序可安裝,但是我不知道應該去哪里。 現在,該程序依靠g9led和python來工作。 如果我制作安裝腳本,那么移動可執行文件的最佳位置是哪里? /usr/bin
嗎?
我的安裝腳本如下所示:
#!/bin/bash
cd /tmp
wget http://als.regnet.cz/data/g9led.c
gcc g9led.c -o g9led -lusb
rm g9led.c
mv g9led /usr/bin/g9led
mv unread_msg_monitor.py /usr/bin/unread_msg_monitor.py
sed -i ". /home/papes1ns/.virtualenvs/unread/bin/activate && python /home/papes1ns/Projects/hes_slack_integration/unread.py &" /etc/rc.local
echo "finished"
exit 0
https://github.com/papes1ns/slack_unread_msg_monitor/blob/master/unread_msg_monitor.py
將可執行文件(放在某處)放在主文件夾中沒什么問題。
但是就自動化軟件而言,而不是/etc/rc.local
,請考慮使用init方案來控制您的服務並使它們在啟動時啟動。
例如,如果您的系統上具有runit (sudo apt-get install runit),則將創建2個腳本,例如g9monitor.runit
:
#!/bin/sh
cd /home/papes1ns
exec chpst -upapes1ns:papes1ns python unread_msg_monitor.py
和g9led.runit
:
#!/bin/sh
cd /home/papes1ns
exec chpst -upapes1ns:papes1ns g9led
然后將以上文件復制到/etc/sv/
目錄:
sudo mkdir -p /etc/sv/g9monitor /etc/sv/g9led
sudo cp g9monitor.runit /etc/sv/g9monitor/run
sudo cp g9led.runit /etc/sv/g9led/run
使它們可執行,並在/etc/service
創建軟鏈接:
sudo chmod +x /etc/sv/g9monitor/run /etc/sv/g9led/run
sudo ln -sf /etc/sv/g9monitor /etc/service/g9monitor
sudo ln -sf /etc/sv/g9led /etc/service/g9led
建立鏈接后,服務應啟動。 然后,您可以通過sv
命令控制它們:
sudo sv status g9monitor
sudo sv down g9led
sudo sv up g9led
要禁用它們,請刪除鏈接:
sudo rm -f /etc/service/g9monitor
sudo rm -f /etc/service/g9led
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.