簡體   English   中英

udev不會正確執行規則

[英]udev won't execute rule properly

udev沒有正確運行我的bash腳本。

繼承我的統治:

ACTION=="add", KERNEL=="sd*1", SUBSYSTEM=="block", ATTRS{idVendor}=="0930", ATTRS{idProduct}=="6544", RUN="/usr/local/bin/usb-bmw-in"    
ACTION=="remove", KERNEL=="sd*1", SUBSYSTEM=="block", ATTRS{idVendor}=="0930", ATTRS{idProduct}=="6544", RUN="/usr/local/bin/usb-bmw-out"

以下是執行的腳本:

#!/bin/bash
echo timer > /sys/class/leds/led1/trigger
rsync --delete-after -c --preallocate -r /media/NAS/Sync/Musik/BMW/ /media/24366EC6366E9916/
umount /dev/sdc1
echo default-on > /sys/class/leds/led0/trigger
echo none > /sys/class/leds/led1/trigger

該腳本應該點亮一個紅色指示燈,表明它正在工作。 然后它應該將我的汽車播放列表復制到USB棒並卸載設備。

完成后,它應該點亮綠色LED並關閉紅色LED。

紅色指示燈正常亮起,rsync命令也會被觸發,但就是這樣。 紅色LED仍然亮着,設備仍然安裝且綠色LED未打開。

當我手動運行腳本時,它的工作正常。

實際上通過在umount命令上方的底部移動兩個echo命令並使用setsid重新啟動腳本在后台shell中,如stackexchange上的用戶“Alives”所解釋的那樣:

https://unix.stackexchange.com/a/79545

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM