Entrega de correio local afetada pelo método de login raiz

1

Acabei de enviar um email local usando a seguinte sintaxe:

echo "Testing" | mail -s "This is just a test" root@localhost

Então eu entro na raiz usando:

sudo -i

E verifique meu e-mail. A mensagem está aí. Se eu repetir o comando mail e logar na raiz usando:

su root

O e-mail não está na minha caixa de correio. Em ambos os casos estou logando na conta root, então o que está acontecendo aqui? É uma instalação básica bastante nova do CentOS 7.

Eu até checou novamente fazendo login usando o su e quando ele não estava lá eu fiz o logout e voltei usando o sudo -i e, com certeza, o email estava lá.

    
por bitofagoob 25.04.2017 / 22:39

1 resposta

1

A causa desse comportamento é a variável de ambiente MAIL . Quando você muda para root com

sudo -i

você simula um login inicial ( -i ) e a variável de ambiente MAIL é definida como /var/spool/mail/root . Quando você muda para root com

su root

A variável de ambiente MAIL permanece em seu valor antigo, ou seja, /var/spool/mail/jo e o comando mail verifica a caixa de correio do usuário e não a caixa de correio raiz. É por isso que você a vê vazia.

    
por 25.04.2017 / 23:40