Logo Informatizzati

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:

MOTD 

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