Como ver os detalhes que o Ubuntu mostra no momento do login a qualquer momento?


27

Quando eu entro no meu sistema ubuntu, ele me mostra esta mensagem: Como posso vê-lo a qualquer momento? Eu tentei correr, . .bashrcmas não funcionou.

Welcome to Ubuntu 12.10 LTS (GNU/Linux 3.2.0-24-virtual x86_64)

 * Documentation:  https://help.ubuntu.com/

  System information as of Sat Jul 13 06:16:35 UTC 2013

  System load:  0.55              Processes:           96
  Usage of /:   8.1% of 68.74GB   Users logged in:     0
  Memory usage: 55%               IP address for eth0: 198.xx.xxx.xxx
  Swap usage:   0%                IP address for eth1: xxx.1x0.xx.xxx

  => There is 1 zombie process.

  Graph this data and manage this system at https://landscape.canonical.com/

223 packages can be updated.
134 updates are security updates.

Last login: Mon Jul  8 17:47:05 2013 

Tão triste que, na verdade, não existe um comando padrão para realizar isso, e que os métodos mudam com tanta frequência que a resposta aceita e a sua substituição já foram obsoletas!
nealmcb 17/06

Respostas:


16

Você pode mostrar a qualquer momento quando você deseja esta mensagem - m ensagem o f t ele d ay - usando próximo comando no terminal:

cat /etc/motd

ou melhor:

for i in /etc/update-motd.d/*; do if [ "$i" != "/etc/update-motd.d/98-fsck-at-reboot" ]; then $i; fi; done

Se você quiser ver esta mensagem sempre que abrir um terminal, basta inserir uma das linhas acima no final do ~/.bashrcarquivo (você pode abri-lo com o gedit ~/.bashrccomando).

O / etc / motd é um arquivo em sistemas do tipo Unix que contém uma "mensagem do dia", usada para enviar uma mensagem comum a todos os usuários, de uma maneira mais eficiente do que enviar a todos eles uma mensagem de email.

Mais sobre: http://en.wikipedia.org/wiki/Motd_(Unix)

Relacionado: Como o / etc / motd é atualizado?


As mesmas, mas mensagens de erro de descarga mais curtas (de tempos em tempos, o conteúdo de /etc/update-motd.d é alterado): para i em /etc/update-motd.d/*; faça $ i 2> / dev / null;
Pronto

cat /etc/motdInfelizmente, você não pode mais , como outros observaram. E mudou duas vezes desde então. (Por que não existe um comando padrão para fazer isso? Suspiro)
nealmcb 17/06

32

Parece que mudou. Com o Ubuntu 16.04, não existe, /etc/motdmas você pode cat /var/run/motd.dynamic.


1
Eu tive que usar esse método no Ubuntu 14.04.
J Smith

9
Observe que /var/run/motd.dynamicé apenas uma saída estática em cache da última vez em que foi executada, no login. Para ver realmente saída ao vivo novamente, você tem que executar os scripts que o geram, que estão em /etc/update-motd.d(como esta escrito, no Ubuntu 16.04.4 LTS)
Aaron Wallentine

A partir do Ubuntu 19.04, é agoracat /var/run/motd.dynamic.new
Adam Erickson

7

O Ubuntu executa isso no login:

/usr/bin/landscape-sysinfo

Você pode simplesmente executá-lo através do terminal usando o seguinte comando:

landscape-sysinfo

Interessante. Mas isso é apenas uma parte do motivo completo.
nealmcb 17/06

3

Você ainda não ativou o modo silencioso, como eu vejo. Se você ativar o login no modo silencioso, as respostas nas soluções anteriores não funcionarão.

Você pode ver a motdmensagem em qualquer um /var/run/motd.dynamice /run/motd.dynamicisso foi gerado na última vez em que um usuário fez logon no modo não silencioso . Ambos os arquivos apontam para o mesmo inode, o que significa que são links físicos.

As informações são estáticas após o login, se você não efetuar o login no modo silencioso . O arquivo não será gerado se você for o primeiro usuário que efetua login no sistema e se você possui um .hushloginarquivo. Se você possui um usuário que não possui o .hushloginarquivo, verá o conteúdo obsoleto ao tentar acessá-lo.

A melhor maneira de pensar é criando um .hushloginsimplesmente fazendo touch ~/.hushlogin.

Edite seu .bashrcarquivo e adicione o conteúdo como apontou @Radu Rădeanu:

for i in /etc/update-motd.d/*; do if [ "$i" != "/etc/update-motd.d/98-fsck-at-reboot" ]; then $i; fi; done

Portanto, sempre que você executar . .bashrc, você verá uma nova mensagem em vez da mensagem estática.

Nota: .bashrcé executado para todos os shells interativos sem logon e, portanto, você verá essas mensagens quando abrir um shell interativo digitando bash.


2

Suponho que isso seja gerenciado pelo PAM, via /etc/pam.d/login, procure motd(mensagem do dia).

Você pode produzir a parte estática dessa mensagem com cat /etc/motd. Eu não tenho a parte dinâmica que você mostra, então não posso ajudar com isso.


2

Como observado algumas vezes, os scripts abaixo /etc/update-motd.dsão os que fornecem a saída típica mostrada no login; veja update-motd(5). Mas há pouca ou nenhuma necessidade de reinventar a roda, criando scripts juntos. Use em run-parts(8)vez disso, que é fornecido apenas para esse fim:

sudo run-parts /etc/update-motd.d

É o que o pam_motd(8)módulo PAM faz, executando como root, após a autenticação do usuário e antes de abrir um shell de login do usuário. Um ou mais dos scripts normalmente precisam ser executados como root, portanto, não o deixe sudo, ou você provavelmente verá erros.


1

Você pode executar o landscape-sysinfo para obter informações do sistema e

/usr/lib/update-notifier/update-motd-updates-available

para obter informações sobre pacotes.


Obviamente, isso funciona apenas se você tiver o paisagem instalado. É uma ferramenta comercial (não gratuita) (para quem não conhece).
aenw 6/04

Eu recebo: find: ‘/var/lib/apt/lists/partial’: Permission deniedemktemp: failed to create file via template ‘/var/lib/update-notifier/tmp.XXXXXXXXXX’: Permission denied
nealmcb 17/06

1

Parece que essa saída é gerada pelos scripts localizados na pasta /etc/update-motd.d;
Se você entrar nesse diretório, poderá executar os scripts individuais para os diferentes bits de informação; ou você pode olhar para a fonte dos scripts para ver os comandos que está realmente em execução para obter essa informação, que parecem mudar de versão para versão (usando cat, ou um editor de texto, como nano, pico, emacs, vim, etc.).

Exemplo:

$ ll /etc/update-motd.d/
total 44
drwxrwxr-x   2 root root 4096 Feb 25 21:27 ./
drwxr-xr-x 110 root root 4096 Feb 25 21:33 ../
-rwxr-xr-x   1 root root 1220 Oct 22  2015 00-header*
-rwxr-xr-x   1 root root 1157 Jun 14  2016 10-help-text*
-rwxr-xr-x   1 root root  334 Jan 12 14:30 51-cloudguest*
-rwxr-xr-x   1 root root   97 May 24  2016 90-updates-available*
-rwxr-xr-x   1 root root  299 Jul 22  2016 91-release-upgrade*
-rwxr-xr-x   1 root root  111 May 11  2017 97-overlayroot*
-rwxr-xr-x   1 root root  142 May 24  2016 98-fsck-at-reboot*
-rwxr-xr-x   1 root root  144 May 24  2016 98-reboot-required*
-rwxrwxr-x   1 root root 1204 Jan 15 19:11 99-one-click*

Esta informação está atualizada até o momento desta redação e no Ubuntu 16.04.4 LTS.


1

A resposta de Aaron Wallentine me levou à minha solução. "Parece que essa saída é gerada pelos scripts localizados na pasta /etc/update-motd.d. Se você entrar nesse diretório, poderá executar os scripts individuais para os diferentes bits de informação."

Cada um dos scripts da pasta é /etc/update-motd.dexecutado, acredito, na ordem do número que eles têm em seus nomes no login. Como exemplo, os meus foram:

10-header 30-sysinfo  32-site  35-motd  98-autoreboot-warn

Você pode executar cada um separadamente para exibir seus dados. por exemplo:

cd /etc/update-motd.d
sudo ./10-header  or  sudo ./30-sysinfo**

Você pode executá-los todos juntos assim:

sudo /etc/update-motd.d/10-header ; sudo /etc/update-motd.d/30-sysinfo ; ... usando o ;símbolo (ponto e vírgula) para vincular comandos.

mas quem quer digitar tudo isso, acabei transformando aquela longa cadeia de comando vinculada em um script de shell.

Mude para o diretório bin:

cd /bin

crie um arquivo, chamei meu "clr" porque estou usando-o para limpar minha tela também, chame o seu de qualquer maneira:

sudo touch clr

Torne seu script executável:

sudo chmod +x clr

Eu usei o nano para editar o meu, use o seu favorito:

sudo nano clr

Em seguida, adicione essa longa cadeia de comando anterior ao seu arquivo, lembre-se de usar seus arquivos motd, não os meus, pois eles serão diferentes:

clear ; sudo /etc/update-motd.d/10-header ; sudo /etc/update-motd.d/30-sysinfo ; sudo /etc/update-motd.d/ ; sudo /etc/update-motd.d/32-site ; sudo /etc/update-motd.d/35-motd ; sudo /etc/update-motd.d/98-autoreboot-warn

Salve-o e execute-o sempre que o seu motd for atualizado; observe que eu adicionei o clear ;meu. Assim, quando digitar clr, limpará a tela e exibirá as estatísticas atualizadas.

Eu acho que é tudo o que tenho, espero que ajude alguém.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.