我最近将系统从 12.04LTS 升级到了 14.04LTS。在 kubuntu 显示后,我收到了此消息
Error found when loading /home/username/.profile :\n\nstdin is not a tty\n\n As a result the session will not be configured correctly. You should fix this problem as soon as feasible.
之后,我点击了“确定”按钮,它消失了,我的屏幕也恢复了正常。但是每次我启动系统时,这个消息都会重新出现。
我尝试了以下命令,但没有成功
cp /etc/skel/.profile ~/.profile
我的 .profile 文件的内容是
# ~/.profile: executed by Bourne-compatible login shells.
if [ "$BASH" ]; then
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
fi
mesg n
答案1
根据此 Ubuntu 论坛帖子, 问题是mesg n
:
在该文件的末尾你有:
mesg n
但它在图形模式下不起作用,因为(取自 man mesg)“mesg 假定它的标准输入已连接到您的终端”。
更改为:
if `tty -s`; then mesg n fi
我想说那mesg n
应该在你的中.bashrc
,而不是在中.profile
,它应该只假设它是在 POSIX shell 中运行。