我想在我離開後的指定時間後開啓監控攝像機。註銷後的後臺任務
我想象它是這樣的:
sleep 60 && sudo service motion start &> /dev/null &
但後臺任務似乎被刪除時,我退出。即使我離開後,是否還有辦法讓它堅持下去?並且還擁有root權限?
編輯: 好吧,我最終作出一個腳本,它不是用一個命令它,它看起來大約是這樣的:
#!/bin/bash
if (($UID > 0)); then
echo "Only root can run this script"
exit 1
fi
if [ -z $1 ]; then
TIMEOUT=30
else
TIMEOUT=$1
fi
sleep $TIMEOUT && service motion start &>/dev/null &
exit 0
問題在於它要求在後臺輸入密碼。否則,我認爲這是一個好主意,因爲它似乎以root身份啓動,即使在註銷後仍然保留在那裏。所以只要我能讓它首先要求輸入密碼。 –
我喜歡anishsane的想法,事先運行「最小sudo」。嘗試'sudo echo「現在開始服務動作」; sudo nohup服務動作開始&'。 (還有其他可能性:允許您的帳戶通過/ etc/sudoers使用「服務」,或讓您的相機可以訪問您的帳戶,因此不需要以root身份運行服務。) – leu
我想保留服務命令和相機受保護而不受root用戶的限制。問題在於等待一段時間,然後運行sudo(身份驗證可能已超時),並且在註銷時仍保留在那裏。所以我編寫了一個腳本來完成我需要的功能(請參閱原文)。 –