MOTD

Plugin from Sebastian Oehm

Overview

Display system information (CPU, memory, disk usage, Docker containers and Compose stacks, service status, etc.) after SSH/console login.

Introduction

License: MIT GitHub Releases Last Commit GitHub Downloads (all assets, all releases) GitHub Downloads (all assets, latest release)

Maintained fork of dkaser/unraid-motd, which is no longer maintained.

Planned ideas are collected in the roadmap (no guarantee that all of them will be implemented).

Configuration

Configuration can be stored at /boot/config/plugins/motd/config.yaml.

To view the full configuration, run motd --dump-config

All options, defaults and module behavior are described in detail in the configuration reference.

Settings page

The configuration can also be edited in the webGUI under Settings → MOTD. If no config.yaml exists yet, the page shows the defaults.

  • Preview renders the current editor content as it would appear at login, without saving it.
  • Save validates the YAML and writes it to /boot/config/plugins/motd/config.yaml. Invalid YAML is rejected with the parser error, and the existing file is left unchanged.
  • Load defaults replaces the editor content with the default configuration (not saved until you click Save).

The same checks are available on the command line: motd --check-config -c <file> validates a file, and motd --preview --width 100 -c <file> renders it without a terminal.

Global

  • warnings_only will hide content unless there is a warning, per-module override available
  • display arrange module output in columns. Either one or two modules can be included per row.
  • border draw borders around the output of each module.
display:
  - [sysinfo]
  - [docker, cpu]
  - [services, networks]
  - [user-drives, system-drives]

Header

  • show display fancy header at beginning of output
  • use_hostname if true, display the hostname. If false, display custom_text
  • font select font to use for output. Run figurine -l to get a list of available fonts, or figurine -sl Test to view a sample of all fonts.

Generic options

  • warnings_only overrides global setting for that module only
  • border overrides global setting for that module only

CPU temperatures

  • warn/crit are temperatures to consider warning or critical level

Disk usage

  • warn/crit percentage of disk space used before it is considered a warning or critical level, default is 70% and 90% respectively

Docker

  • ignore list of ignored container names
  • ignore_stopped list of container names that will not trigger a warning when stopped (they are hidden from the output while stopped; other non-running states still trigger a warning)
  • check_health, restart_warn and restart_window control the detection of unhealthy containers (Docker healthcheck) and restart loops, which are shown in red. See the configuration reference for details.

Docker Compose

Reports the status of docker-compose stacks managed by the Compose Manager plugin. Stacks are read from disk rather than from running containers, so a stack that has been fully stopped with docker compose down (which removes its containers) is still reported as stopped, unlike the docker module.

  • projects_path directory containing one subdirectory per compose stack, default /boot/config/plugins/compose.manager/projects
  • ignore list of ignored stack names
  • ignore_stopped list of stack names that will not trigger a warning when fully stopped (they are hidden from the output while stopped; a stack with only some containers running still triggers a warning)
  • check_health, restart_warn and restart_window work as for Docker: stacks with unhealthy containers or restart loops are shown in red. See the configuration reference for details.

VMs

Reports the state of libvirt VMs from virsh list --all (opt-in, add vms to display). Running and idle VMs are OK. A shut-off VM is a warning unless it is listed in ignore_stopped; paused, crashed, suspended or shutting-down VMs are always a warning. The module is skipped when the VM service is disabled in Unraid or virsh is not installed, and shows "Unavailable" when virsh fails or takes longer than 5 seconds (for example while libvirt is still starting).

  • ignore list of ignored VM names
  • ignore_stopped list of VM names that will not trigger a warning when shut off (they are hidden from the output while shut off)
global:
  display:
    - [sysinfo]
    - [docker, vms]
vms:
  ignore_stopped: [Windows 11]

UPS (NUT)

Reports the UPS state from upsc of Network UPS Tools, for example the NUT plugin (opt-in, add ups to display). Shows status, battery charge, runtime and load; the title includes the UPS model when NUT reports it. Online is OK. On battery, replace battery, overload, bypass, off or an unknown status is a warning; low battery and forced shutdown are critical. The battery charge is a warning at or below battery_warn and critical at or below battery_crit. The module is skipped when upsc is not installed, and shows "Unavailable" when upsc fails (for example a wrong UPS name or an unreachable NUT server) or takes longer than 5 seconds.

  • ups UPS to query, as name@host or name@host:port, default ups@localhost (upsc -l lists the names on a host)
  • battery_warn / battery_crit battery charge in percent, default 50 and 20
global:
  display:
    - [sysinfo]
    - [docker, ups]
ups:
  ups: ups@localhost
  battery_warn: 50
  battery_crit: 20

GPU

Shows NVIDIA GPUs from nvidia-smi (opt-in, add gpu to display; needs the Nvidia Driver plugin). Each GPU is listed with its index, name, temperature, utilization and VRAM used/total, followed by the active compute processes with their VRAM use. Processes running in Docker containers are shown by container name, all others by process name. The title is OK, Warning or Critical based on GPU temperature. With warnings_only (the global default is true) only GPUs at or above warn are listed. The module is skipped when nvidia-smi is not installed and shows "Unavailable" when it fails or takes longer than 5 seconds. Values a card does not report are shown as "n/a".

  • warn / crit GPU temperature in °C, default 80 / 90
  • show_processes list the processes using the GPU, default true
global:
  display:
    - [sysinfo]
    - [docker, gpu]
gpu:
  warn: 75

Network

  • show_ipv4 / show_ipv6 show IPv4/IPv6 addresses in output

System information

No extra config

Download Statistics

0
Total Downloads
6
This Month
1
Avg / Month

Downloads by Month

Loading chart...

Related apps

Explore more like this

Explore all

Details

Repository
https://raw.githubusercontent.com/SebastianOehm/unraid-motd/main/plugin/motd.plg
Last Updated2026-10-23
First Seen2026-10-23