温馨提示×

Ubuntu消息提醒功能如何开启

小樊
40
2025-11-25 16:34:57
栏目: 智能运维

Ubuntu 消息提醒开启与配置指南

一 系统级通知总开关

  • 打开系统设置:点击Activities → 搜索并进入SettingsNotifications
  • 在右侧将Do Not Disturb(勿扰模式)关闭;按需为Applications中的具体程序开启或关闭通知,并配置SoundBannersPreviews等选项。这样即可恢复或定制桌面通知的显示与声音提醒。

二 命令行快速测试与安装

  • 安装通知工具(如未安装):sudo apt-get install libnotify-bin
  • 发送一条测试通知:notify-send “Hello Ubuntu” “This is a test notification.
  • 常用参数:
    • -u urgency:设置紧急程度(low/normal/critical)
    • -i icon:指定图标(主题名或文件路径)
    • -t expire-time:显示时长(毫秒)
  • 示例:notify-send “提醒” “该休息了” -u normal -t 5000 -i appointment-new

三 定时提醒的两种可靠做法

  • 方式 A:使用 crontab 定时执行 notify-send
    • 编辑任务:crontab -e
    • 示例(每45分钟提醒一次,自动适配当前用户会话):
      • */45 * * * * XDG_RUNTIME_DIR=/run/user/$(id -u) notify-send “起身活动” “喝水、伸展一下
    • 说明:设置XDG_RUNTIME_DIR可避免会话环境变量缺失导致通知不显示。
  • 方式 B:在脚本中直接使用 notify-send
    • 示例:long_task.sh
      • #!/usr/bin/env bash long_command_here && notify-send “完成” “任务已结束
    • 运行:chmod +x long_task.sh && ./long_task.sh
  • 以上两种方式均依赖系统的桌面通知服务notify-send命令。

四 在定时任务中避免不弹窗的关键要点

  • 设置显示输出:export DISPLAY=:0(部分环境可能是**:1**)
  • 设置会话总线:export DBUS_SESSION_BUS_ADDRESS
    • 例如:eval “export $(egrep -z DBUS_SESSION_BUS_ADDRESS /proc/$(pgrep -u $LOGNAME gnome-session)/environ)”
  • 设置运行时目录:export XDG_RUNTIME_DIR=/run/user/$(id -u)
  • 建议将上述变量与 notify-send 写在同一行命令中,减少环境丢失:
    • */10 * * * * export DISPLAY=:0 && export XDG_RUNTIME_DIR=/run/user/$(id -u) && notify-send “定时” “到点了
  • 排查建议:
    • 查看系统日志确认任务是否执行:grep CRON /var/log/syslog
    • 将任务输出重定向到日志以便调试:… notify-send “msg” >/tmp/notify.log 2>&1
  • 以上要点可显著提升定时提醒在 GUI 会话中的可达性与稳定性。

五 为特定应用开启通知

  • 不同应用需在自身的首选项/设置中打开通知。例如 VLC:打开 VLC → ToolsPreferences → 底部选择 All → 左侧 Control interfaces → 勾选 LibNotify Notification Plugin → 保存。这样播放器即可在 Ubuntu 中显示桌面通知。

0