如何通过 SSH 使“邮件”命令正常工作?

如何通过 SSH 使“邮件”命令正常工作?

当通过 SSH 登录到我的服务器时,该$ mail命令无法正常工作。它返回的不是邮件列表No mail for <user>

$ mail在机器上的终端上可以正常工作,所以这绝对是使用 SSH 的问题,这就是我需要访问它的方式。

答案1

我可以通过输入文件路径来正确读取用户邮件:

mail -f /var/spool/mail/$USER

我在读取(root)用户电子邮件时也遇到了一些问题,我使用 phil 用户 ssh 登录,然后将用户更改为 root 输入sudo su,然后发出mail命令:

没有给菲尔的邮件

因此,mail 命令似乎尝试读取您打开 ssh 连接的用户的电子邮件。结果发现原因是$MAIL变量值错误:

[root@preprod ~]# echo $MAIL
/var/spool/mail/phil

答案2

尝试使用sudo su -“-”将允许为您要切换到的用户设置配置文件和环境变量,然后允许邮件命令按预期运行。

注意:它将适用于所有环境变量,而不仅仅是 $MAIL。

相关内容