如何在 Ubuntu 16.04 LTS 启动时发送电子邮件?

如何在 Ubuntu 16.04 LTS 启动时发送电子邮件?

到目前为止我尝试了一些方法,但都没有成功。

我修改了 crontab,并在命令前面添加了@reboot mail.mailutils ...

我还创建了一个.sh脚本,更改权限,将其添加到初始化文件修改配置sysv-rc-config --level 3 script on并添加必要的行rc.本地

如果您能告诉我还有什么地方可以查看的话我将非常感激!

我只是想在我启动 Ubuntu(桌面版而非服务器)和关闭它时发送一封电子邮件。

我使用的脚本甚至不是一个脚本

mail.mailutils -s "subject" emailaddress <<< "message" 

答案1

首先检查是否可以发送电子邮件。我使用 mailutils 发送电子邮件,发送电子邮件的方式是:

    echo "system start" | mail -s "start" [email protected]

其次,添加一个systemd任务来监听开机和关机事件。

  1. 创建文件 /etc/init.d/myemail,然后添加以下脚本。
  2. sudo update-rc.d myemail 默认值
  3. 现在完成了。
  4. 提示:由于您的电子邮件帐户不像常见的电子邮件格式,因此某些电子邮件提供商会拦截您的电子邮件。

    #! /bin/sh
    ### BEGIN INIT INFO
    # Provides:          myemail
    # Required-Start: 
    # Required-Stop:
    # Default-Start:     1 2 3 4 5
    # Default-Stop:      0 6
    # Short-Description: on boot and shutdown send a email.
    # Description:
    ### END INIT INFO
    
    
    PATH=/sbin:/usr/sbin:/bin:/usr/bin
    
    
    . /lib/lsb/init-functions
    
    
    case "$1" in
      start|status)
            echo "system start" | mail -s "start" [email protected]
            date +"%Y-%m-%d %H:%M:%S   --start" >> /var/log/myemail.log
            ;;
      restart|reload|force-reload)
            echo "Error: argument '$1' not supported" >&2
            exit 3
            ;;
      stop)
            echo "system poweroff" | mail -s "poweroff" [email protected]
            date +"%Y-%m-%d %H:%M:%S   --stop" >> /var/log/myemail.log
            ;;
      *)
            echo "Usage: $0 start|stop" >&2
            exit 3
            ;;
    esac
    
    return 0
    

相关内容