当通过 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。