Detto anche MOTD, acronimo di "Message Of The Day" è un messaggio di benvenuto che viene mostrato quando un utente si collega ad un sistema/servizio.
Questo messaggio compare, ad esempio, quando ci si collega via FTP, Telnet o SSH a un sistema remoto.
Il messaggio del giorno può contenere informazioni utili come la data e l'ora del sistema, le regole di utilizzo del sistema o del servizio, lo spazio disco occupato dal tuo utente e quanto spazio libero hai ancora e via dicendo.
Oppure il MOTD può contenere simpatiche amenità come barzellette, le previsioni del tempo, o immagini in formato testo come questa mucchina:
(__) (oo) /------\/ / | || * /\---/\ ~~ ~~ ..."Have you mooed today?"...
La riconosci? Se non riconosci la mucchina di Ubuntu non importa, veniamo al motivo per cui sei approdat* qui, forse.
Il messaggio standard di benvenuto che viene fornito da un sistema Ubuntu è all'incirca questo:
Welcome to Ubuntu 14.04.4 LTS (GNU/Linux 3.13.0-91-generic i686) * Documentation: https://help.ubuntu.com/ System information as of Wed Aug 31 19:27:14 EDT 2016 System load: 5.0 Memory usage: 65% Processes: 475 Usage of /: 12.0% of 384.49GB Swap usage: 0% Users logged in: 37 Graph this data and manage this system at https://landscape.canonical.com/ 835 packages can be updated. (Qualche pacchetto da aggiornare eh? ;-) ) 314 updates are security updates. (questo sistema è sicuramente invulnerabile) New release '16.04.1 LTS' available. Run 'do-release-upgrade' to upgrade to it. No mail. Last login: Mon Aug 29 17:01:12 2016 from somewhere.in.the.cyberspace
A me non piace molto, contiene informazioni che non mi servono e in alcuni casi ho notato rallentamenti in fase di login, dovuti ad alcuni script lanciati per fornire informazioni aggiuntive.
In particolare si tratta delle informazioni fornite dal pacchetto di installazione (per sistemi Ubuntu, ma forse anche per altri) landscape-common
. Molto interessanti, anche molto utili, ma rallenta(va)no il login.
Anche il pacchetto update-notifier-common
rallenta(va) il processo di login, perché ad ogni accesso va a verificare se sono presenti pacchetti da aggiornare.
Questi pacchetti, ma probabilmente anche altri, inseriscono degli script nella directory /etc/update-motd.d/
.
Per ottenere il risultato di velocizzare il login via ssh alla console Linux ho quindi rimosso questi due pacchetti con i seguenti comandi:
sudo apt purge landscape-common update-notifier-common
Se il tuo sistema Ubuntu è un po' datato e il comando sopra non funziona, scrivi questo comando:
sudo apt-get purge landscape-common update-notifier-common
Adesso il contenuto della directory /etc/update-motd.d/ potrebbe assomigliare a questo:
00-header
10-help-text
Lo script 10-help-text contiene informazioni che non mi servono così se vuoi puoi eliminare il file, io mi sono limitato a modificarlo, inserendo il comando exit immediatamente sotto il blocco dei commenti.
Il risultato è questo:
#!/bin/sh # # 10-help-text - print the help text associated with the distro # Copyright (C) 2009-2010 Canonical Ltd. # # Authors: Dustin Kirkland <kirkland@canonical.com>, # Brian Murray <brian@canonical.com> # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. exit [ -r /etc/lsb-release ] && . /etc/lsb-release if [ -z "$DISTRIB_RELEASE" ] && [ -x /usr/bin/lsb_release ]; then # Fall back to using the very slow lsb_release utility DISTRIB_RELEASE=$(lsb_release -sr) fi URL="https://help.ubuntu.com/" if uname -r | grep -qs "\-server"; then URL="https://help.ubuntu.com/$DISTRIB_RELEASE/serverguide/C" fi printf "\n * Documentation: %s\n" "$URL"
A questo punto è giunta l'ora di un ritocco cosmetico.
Nella directory /etc/update-motd.d/ ho creato un nuovo file chiamato 99-footer, al cui interno ho inserito alcuni comandi carini e che portano a questo risultato:
Bello? Brutto? Indifferente? Carino?
A te la fantasia di creare il tuo MOTD come più ti piace. Ecco il codice che ho scritto per ottenere il risultato che vedi sopra:
#!/bin/bash
#
curl -4 -s -N http://wttr.in/Il-nome-della-tua-città | head -n 17
echo "wanna see moon phases? curl wttr.in/Moon"
echo " ";
echo " ";
echo " AAA tttt ";
echo " A:::A ttt:::t ";
echo " A:::::A t:::::t ";
echo " A:::::::A t:::::t ";
echo " A:::::::::A ttttttt:::::ttttttt eeeeeeeeeeee nnnn nnnnnnnn aaaaaaaaaaaaa ";
echo " A:::::A:::::A t:::::::::::::::::t ee::::::::::::ee n:::nn::::::::nn a::::::::::::a ";
echo " A:::::A A:::::A t:::::::::::::::::t e::::::eeeee:::::een::::::::::::::nn aaaaaaaaa:::::a ";
echo " A:::::A A:::::Atttttt:::::::tttttt e::::::e e:::::enn:::::::::::::::n a::::a ";
echo " A:::::A A:::::A t:::::t e:::::::eeeee::::::e n:::::nnnn:::::n aaaaaaa:::::a ";
echo " A:::::AAAAAAAAA:::::A t:::::t e:::::::::::::::::e n::::n n::::n aa::::::::::::a ";
echo " A:::::::::::::::::::::A t:::::t e::::::eeeeeeeeeee n::::n n::::n a::::aaaa::::::a ";
echo " A:::::AAAAAAAAAAAAA:::::A t:::::t tttttte:::::::e n::::n n::::na::::a a:::::a ";
echo " A:::::A A:::::A t::::::tttt:::::te::::::::e n::::n n::::na::::a a:::::a ";
echo " A:::::A A:::::Att::::::::::::::t e::::::::eeeeeeee n::::n n::::na:::::aaaa::::::a ";
echo " A:::::A A:::::A tt:::::::::::tt ee:::::::::::::e n::::n n::::n a::::::::::aa:::a";
echo "AAAAAAA AAAAAAA ttttttttttt eeeeeeeeeeeeee nnnnnn nnnnnn aaaaaaaaaa aaaa";
echo " ";
echo " ";
echo " ";
[ -r /etc/lsb-release ] && . /etc/lsb-release
if [ -z "$DISTRIB_DESCRIPTION" ] && [ -x /usr/bin/lsb_release ]; then
# Fall back to using the very slow lsb_release utility
DISTRIB_DESCRIPTION=$(lsb_release -s -d)
fi
printf "Welcome to %s (%s %s %s)\n" "$DISTRIB_DESCRIPTION" "$(uname -o)" "$(uname -r)" "$(uname -m)"
ip="$(curl -s icanhazip.com)"
echo -e "My public IP is:\e[97m $ip \e[0m"
echo
per applicare le modiche lancia il comando:
run-parts /etc/update-motd.d/
Commenti offerti da CComment