Debian

Debian - 一旦有網際網路連接可供使用,如何在啟動時執行腳本?

  • January 6, 2022

我正在執行 Debian 7 Wheezy,一旦有功能齊全的網際網路連接,我需要在啟動時啟動一些螢幕。但是,如果網際網路連接中斷並再次連接,則不會。因此,僅在啟動後的第一個功能網際網路連接上。

您能否為此發布一個虛擬腳本並告訴我將其放在哪裡並使其在給定條件下執行?

該腳本只需要啟動螢幕然後終止,但螢幕應該繼續。


編輯 我已經聽說過該/etc/network/if-up.d/文件夾。但是,如果網際網路連接失去然後重新建立,我如何確保腳本不會再次執行?

將您的腳本放入/etc/network/if-up.d並使其可執行。每次出現網路介面時,它將自動執行。

要使其僅在每次啟動時第一次執行時才起作用,請讓它檢查您在第一次之後創建的標誌文件是否存在。例子:

#!/bin/sh

FLAGFILE=/var/run/work-was-already-done

case "$IFACE" in
   lo)
       # The loopback interface does not count.
       # only run when some other interface comes up
       exit 0
       ;;
   *)
       ;;
esac

if [ -e $FLAGFILE ]; then
   exit 0
else
   touch $FLAGFILE
fi

: here, do the real work.

引用自:https://unix.stackexchange.com/questions/166473