Set MOTD on Ubuntu 18.04
Changing the message of the day text on Ubuntu to show hostname

Modifying the message of the day text to remove all the stuff I don't want to see, and showing the name of my host when logging into my VM via SSH.
All the banner/message of the day files are stored in /etc/update-motd.d/ folder. They are ran in numerical order, as long as the file is set to be executable.
root@hostname:~# ll /etc/update-motd.d/
total 57
drwxr-xr-x 2 root root 10 Apr 22 21:32 ./
drwxr-xr-x 86 root root 170 Apr 22 21:33 ../
-rwxr-xr-x 1 root root 1233 Apr 22 21:18 00-header*
-rw-r--r-x 1 root root 1157 Aug 6 2018 10-help-text*
-rwxr-xr-x 1 root root 4646 Sep 27 2019 50-motd-news*
-rw-r--r-x 1 root root 604 Mar 21 2018 80-esm*
-rw-r--r-x 1 root root 3017 Mar 21 2018 80-livepatch*
-rwxr-xr-x 1 root root 299 May 18 2017 91-release-upgrade*
Files are listed above are displayed roughly below;
- 00-header - basic system information:
Welcome to Ubuntu 18.04.4 LTS (GNU/Linux 5.3.18-2-pve x86_64)
- 10-help-text:
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
- 50-motd-news: looks like this checks for news from the Ubuntu website and is updated periodically:
* Kubernetes 1.18 GA is now available! See https://microk8s.io for docs or
install it with:
sudo snap install microk8s --channel=1.18 --classic
* Multipass 1.1 adds proxy support for developers behind enterprise
firewalls. Rapid prototyping for cloud operations just got easier.
https://multipass.run/
- 80-esm - looks like this will display extended security update information if this is enabled / supported on your system
- 80-livepatch - displays a message about Livepatch, content will change if Livepatch is enabled:
* Canonical Livepatch is available for installation.
- Reduce system reboots and improve kernel security. Activate at:
https://ubuntu.com/livepatch
- 91-release-upgrade - presumably displays that your system is due an upgrade.
I don't want to see the information from 10-help-text, 50-motd-news, 80-esm, 80-livepatch, to stop these from running we just need to set the files as not executable with the chmod -x command.
Navigate to the folder, cd /etc/update-motd.d/
, run the chmod -x command chmod -x 10-help-text 50-motd-news 80-esm 80-livepatch
. To re-enable a message run chmod with the +x chmod +x 50-motd-news
Now to add the hostname using some ascii text, this can be done using a program call figlet which can be installed using apt install figlet. Or you can simply use DuckDuckGo with figlet followed by the text to generate the text. e.g https://duckduckgo.com/?q=figlet+slant+nginx - the 'slant' part of the text specifies the name of the font, a full list can be found on the figlet website

We then copy the figlet text from DDG and paste it into a new file on the system, I've called it hostname.asc - open the file with nano /etc/update-motd.d/hostname.asc
and paste the text straight in, ensuring that it has maintained its formatting.
hostname.asc
_
____ ____ _(_____ _ __
/ __ \/ __ `/ / __ \| |/_/
/ / / / /_/ / / / / _> <
/_/ /_/\__, /_/_/ /_/_/|_|
/____/
Then add another MOTD file in the update-motd.d folder, numbered so that it appears in the correct order. I've called my file 01-hostname. Open the file with nano /etc/update-motd.d/01-hostname
and enter in the following text to output the hostname.asc file to screen on login:
01-hostname
#!/bin/sh
printf "$(cat /etc/update-motd.d/hostname.asc)"
As the file is not executable yet it still won't display on login - chmod will need to be used to make the file executable: chmod +x 01-hostname
After a reboot/logout and back in, when you try to login again you should get the updated motd:
