Ubuntu

如何讓 Ubuntu 9.10 桌面系統在啟動時自動將其 IP 地址通過電子郵件發送到列表?

  • February 24, 2010

標題問題說明了一切。我已經建構了一台執行 Ubuntu 9.10 Desktop (AMD 64) 的機器,並且需要它在啟動時將其 IP 地址通過電子郵件發送到電子郵件地址列表。

當網路介面啟動時,腳本/etc/network/if-up.d會執行。執行腳本時會提供許多環境變數,包括 IP 地址和其他網路參數。為自己編寫一個 if-up 腳本應該很容易,該腳本會發送一封包含您想要的資訊的電子郵件。

我認為進行動態 dns 更新可能比電子郵件更有用,但也許你有一些你沒有提到的原因。

這是我的一個舊腳本,它做了一些接近你想要的東西。

/etc/default/if_notify

# interface definitions
IF_OUT='eth0'
EMAIL_OUT='user@example.org'
MSG_OUT_UP='outside interface is up. Address is:'

/etc/network/if-up.d/if_notify

#!/bin/bash

[ ! -x /etc/default/if_notify ] || exit 0

. /etc/default/if_notify

NAME=`hostname -f`

if [ "$IFACE" = "$IF_OUT" -a "$MODE" = "start" ] ; then
   if [ "$IF_IN" -a "$MSG_OUT_UP" -a "$EMAIL_OUT" ] ; then
       IFACE="outside"
       MSG="$MSG_OUT_UP $IF_ADDRESS"
       ADDR="$EMAIL_OUT"
   fi
fi

if [ "$IFACE" -a "$MSG" -a "$ADDR" ] ; then
   echo -e "From:root@$NAME\nTo:$ADDR\nSubject:[IFNOTIFY] Interface $IFACE up on $NAME\n$MSG" \
           | sendmail -f root "$ADDR"
fi

引用自:https://serverfault.com/questions/116391