2015-04-12 166 views
0

我已經寫了一個簡單的bash腳本,它會將最新的鏡像從我的ip鏡像複製到一個目錄中,重命名文件並刪除舊文件。腳本每10秒循環一次。如何在運行linux ubuntu服務器時在後臺運行bash腳本

我想讓這個腳本開始在後臺運行,並且在服務器運行的所有時間都持續運行。

我知道在命令的末尾添加&的部分會導致它在後臺運行。

init.d是執行此操作的最佳位置嗎?

我正在運行Ubuntu服務器。

+0

而不是由腳本循環,你可以爲它創建一個cron作業每10秒運行一次。 –

+0

除了可以運行的最常見的cron作業是每分鐘:( –

回答

1

這類事情通常由服務腳本完成,您可以在/etc/init.d下找到該服務腳本。取決於版本,可能是「System V初始化腳本」或其中一個systemd腳本。

您詢問的排序的簡單服務腳本會自動啓動(根據腳本標題中的註釋,告訴它將使用哪個運行級別),在/var/run之間創建一個文件,告訴腳本使用了什麼process-id (以允許它被殺死),然後在一個循環中運行拷貝,調用sleep 10來按照指示來調整時間。

一個典型的服務腳本應該實現「開始」,「停止」,「重新啓動」和「狀態」。並非所有人都這麼做,但很少有很好的理由不這樣做。

在我的(Debian)系統上,目錄中有一個README文件,這是對該主題的很好介紹。有幾個教程可用於該主題。這裏有幾個: