Mude o valor motd no sistema operacional UNIX

3

Eu preciso mudar o valor do MOTD usando um script, mas não sei como devo começar. Estou anexando amostra MOTD.

    
por batil 25.04.2014 / 03:07

3 respostas

2

Para gerar um MOTD no estilo que você está mostrando em seu exemplo, você provavelmente desejará usar o comando banner . Você pode alimentar a saída do comando hostname para obter um bom banner do nome do seu servidor.

Para tornar este seu MOTD, você simplesmente desejará direcionar a saída desse comando para o arquivo /etc/motd , que é usado para exibir o MOTD.

$ ...cmd... > /etc/motd

NOTA: Os comandos que mostrarei abaixo podem ser trocados em ...cmd... .

Exemplo

$ banner $(hostname)

 #####   ######   #######  #######  #     #  #######   #####    #####   
#     #  #     #  #        #        ##    #  #        #     #  #     #  
#        #     #  #        #        # #   #  #        #        #        
#  ####  ######   #####    #####    #  #  #  #####    #  ####  #  ####  
#     #  #   #    #        #        #   # #  #        #     #  #     #  
#     #  #    #   #        #        #    ##  #        #     #  #     #  
 #####   #     #  #######  #######  #     #  #######   #####    #####   

Este forro lhe dará praticamente o que você quer:

$ (banner "server"; \
    printf "Hostname: %s\nDate    : %s\nUptime  :%s\n\n", \
    "$(hostname -s)" "$(date)" "$(uptime)")

 #####   #######  ######   #     #  #######  ######   
#     #  #        #     #  #     #  #        #     #  
#        #        #     #  #     #  #        #     #  
 #####   #####    ######   #     #  #####    ######   
      #  #        #   #     #   #   #        #   #    
#     #  #        #    #     # #    #        #    #   
 #####   #######  #     #     #     #######  #     #  

Hostname: greeneggs
Date    : Thu Apr 24 22:39:23 EDT 2014
Uptime  : 22:39:23 up 3 days,  8:34,  6 users,  load average: 0.80, 1.06, 1.49

Caixas de impressão

Além de usar a ferramenta de linha de comando banner para imprimir texto de banner, você pode usar outra ferramenta de ajuda chamada boxes para envolver uma caixa em torno de texto arbitrário.

$ boxes -d shell -p a1l2 <(hostname -s)
##############
#            #
#  greeneggs #
#            #
##############

Podemos usar essa abordagem e aumentá-la para fazer o que você quiser da seguinte forma:

$ boxes -d shell -p a1l2 \
    <(banner "server"; \
        printf "Hostname: %s\nDate    : %s\nUptime  :%s\n" \
        "$(hostname -s)" "$(date)" "$(uptime)")
###################################################################################
#                                                                                 #
#                                                                                 #
#   #####   #######  ######   #     #  #######  ######                            #
#  #     #  #        #     #  #     #  #        #     #                           #
#  #        #        #     #  #     #  #        #     #                           #
#   #####   #####    ######   #     #  #####    ######                            #
#        #  #        #   #     #   #   #        #   #                             #
#  #     #  #        #    #     # #    #        #    #                            #
#   #####   #######  #     #     #     #######  #     #                           #
#                                                                                 #
#  Hostname: greeneggs                                                            #
#  Date    : Thu Apr 24 22:54:09 EDT 2014                                         #
#  Uptime  : 22:54:09 up 3 days,  8:49,  6 users,  load average: 0.63, 0.81, 1.09 #
#                                                                                 #
###################################################################################
    
por 25.04.2014 / 04:57
1

Se você deseja gerar um MOTD dinâmico, confira este guia atualizado

link

Basicamente, você precisa

1) crie /etc/update-motd.d

2) coloque seu script lá

    
por 10.04.2017 / 13:19
0

motd é simplesmente um arquivo. De man motd :

NAME
       motd - message of the day

DESCRIPTION
       The  contents  of  /etc/motd  are  displayed by login(1) after a successful
       login but just before it executes the login shell.

      The abbreviation "motd" stands for "message of the day", and this file has
      been traditionally used for exactly that (it requires much less disk space
      than mail to all users).

FILES
      /etc/motd

Como ponto de vista do script, algo tão simples como isso seria suficiente:

#!/bin/sh
printf "     Welcome to $(hostname -s)\n\n" > /etc/motd
    
por 25.04.2014 / 03:21