O que é a mensagem “Você tem novo e-mail” no Linux / UNIX?

378

Às vezes, quando eu faço o login em uma caixa e 'su' para o root, recebo uma mensagem bonitinha dizendo que tenho email (graças a DEUS não é da AOL).

  • Onde está esse e-mail?
  • O que ele contém?
  • Quem / o que enviou?
  • Qual a importância disso?

Isso é mesmo "mail" real no mesmo sentido que o email? Ou é apenas o meu sistema me dizendo algo?

EDIT: Em relação a , eu seria capaz de me enviar e-mails usando o programa sendmail da seguinte forma: email@localhost ?

    
por n0pe 04.07.2011 / 17:23

7 respostas

317

Onde está esse e-mail?

É provável que esteja no arquivo de spool: /var/mail/$USER ou /var/spool/mail/$USER são os locais mais comuns no Linux e no BSD.

(Outros locais são possíveis - verifique se $MAIL está definido - mas, por padrão, o sistema só informa sobre /var(/spool)/mail .)

Normalmente, o arquivo de spool está em um formato mbox muito simples, para que você possa abri-lo em um editor de texto ou pager.

Para uma maneira um pouco mais conveniente, a maioria das distribuições vem com um programa chamado mail (ou Mail , mailx ). Você pode tentar mutt ou alpine ; você pode até configurá-lo para ser enviado para uma caixa de correio externa. (Veja "este e-mail real?" Abaixo.)

O que ele contém e quem / o que enviou?

Na maioria das vezes, as mensagens contêm a saída de tarefas agendadas, ou um relatório de segurança do sistema por logwatch , ou lixo similar. Leia e descubra.

Qual a importância disso?

Depende muito do conteúdo de cada mensagem.

Você deve pelo menos escanear os cabeçalhos dos assuntos - muitas vezes as pessoas ignoram o e-mail por meses sem perceber que seus trabalhos cron diários falham.

Isso é mesmo "mail" real no mesmo sentido que o email? Ou é apenas o meu sistema me dizendo algo?

Sim para ambos - é gerado pelo seu sistema informando algo, mas também é um e-mail real e pode ser tratado como tal.

Você pode (e deve) configurar seu software de e-mail - o "MTA", também conhecido como /usr/sbin/sendmail - para encaminhar as mensagens para o seu endereço de e-mail pessoal. As instruções exatas variam dependendo de qual MTA (se houver) você instalou, se é um computador pessoal ou um servidor, se você tem seu próprio domínio ou usa um @ gmail.com , e assim por diante .

Observe que /usr/sbin/sendmail hoje em dia é uma API compartilhada e não significa necessariamente o MTA original do Sendmail. Na verdade, você não deveria usar o Sendmail, mas algo mais moderno como o OpenSMTPD, o Postfix ou o Exim4. Todos eles fornecem a mesma ferramenta /usr/sbin/sendmail , mas são mais fáceis de configurar, mais seguros e igualmente poderosos.

    
por 04.07.2011 / 18:30
185

A maneira mais fácil para mim foi executar o seguinte em um terminal:

cat /var/spool/mail/root
    
por 25.11.2011 / 12:46
41

Para quem quer saber como ler essas mensagens uma a uma, você pode usar apenas 'mail'

$ mail

Em seguida, digite um número de mensagem da lista que você deseja ler.

Para ir para a próxima mensagem, você pode digitar 'next', outro comando útil é 'delete'.

Para ver mais sobre como o programa mail funciona, consulte a saída de man mail .

    
por 30.08.2014 / 21:47
37

Apenas para oferecer alguns esclarecimentos, é há muito tempo que as caixas UNIX executam um daemon de mailer "configurado localmente" que não roteia mensagens pela Internet, mas copia mensagens para outros diretórios de spool de usuários (como @John T mencionou). É um verdadeiro e-mail compatível com SMTP, ele simplesmente não é roteado pela Internet porque não precisa ser.

Portanto, se você acionar um cliente de e-mail (como alpine ou mutt ), poderá enviar e-mails para outros usuários no sistema, endereçando para user@hostname ou, em muitos casos, apenas especificando o usuário. Você provavelmente também tem um utilitário de linha de comando chamado mailx que pode ser usado para enviar um e-mail rápido usando seu shell.

Agora, se você quiser enviar mensagens para usuários em sistemas diferentes daquele em que você está conectado, é aí que começa a verdadeira diversão. Você precisará configurar seu daemon mailer para reconhecer e enviar e-mails externos para um agente de transferência, configurar o agente de transferência e fazer um monte de coisas que ainda não entendi.

    
por 04.07.2011 / 18:31
23

Onde está esse e-mail?

É muito provável que seja armazenado em sua máquina, na pasta de caixa de correio do seu usuário raiz (onde THAT depende do tipo de servidor de correio que você instalou). Você provavelmente pode acessá-lo rapidamente através de alpine .

O que ele contém?

Provavelmente apenas algumas coisas do tipo de relatório do sistema. "Assim e assim tentou entrar 10 vezes com uma senha incorreta" .. "Eu gostaria que alguém executasse atualizações em mim", "driver"  tal e tal está a falhar constantemente "," O bot da NSA aumentou o desempenho em 1% ".. etc ..

Quem / o que enviou?

Serviços no seu servidor, provavelmente.

Qual é a importância disso?

Depende da importância do seu servidor.

    
por 04.07.2011 / 17:29
13

Geralmente, este e-mail está localizado em /var/spool/mail/root quando o daemon do sendmail padrão (usual) está configurado. Ele contém uma mensagem de e-mail RAW que pode ser lida pelo utilitário mail . Quem enviou pode ser encontrado executando o utilitário mail e paginando as mensagens ou lendo os cabeçalhos RAW.

A importância da mensagem geralmente depende do fator anterior, que a enviou:)

Muitos utilitários do sistema usam o subsistema de correio como meio de relatório e registro. Os utilitários do inspetor de logs e outros serviços podem enviar um email para o usuário root local como um lembrete sobre um evento específico, como pouco espaço em disco ou erros de hardware. O daemon do mailer também irá alertá-lo se ele não enviar um e-mail de saída.

    
por 04.07.2011 / 17:28
11

less +G /var/spool/mail/root

mostra as últimas mensagens, no final, se o arquivo.

Exibir diretamente o arquivo de mensagens é uma boa ideia, mas usar cat pode facilmente dar errado. Você não quer que os all rolem, se houver muitas mensagens ou mensagens muito longas no arquivo. Acabei de ver um com 150MB, dois milhões de linhas.

Se você não for root:

sudo less +G /var/spool/mail/root

A opção +G é usada para mostrar a mensagem mais recente primeiro; Não está no topo do arquivo, mas no final.

É uma opção de less , mostrando a última página do arquivo após o início. Isso mostra a última mensagem (mais recente), se couber a uma página, ou o final disso, de outra forma.

O nome do arquivo pode ser /var/spool/mail/mail em vez de /var/spool/mail/root

    
por 03.09.2014 / 02:16