linux – 无法写入其他用户“您已关闭写入权限”

前端之家收集整理的这篇文章主要介绍了linux – 无法写入其他用户“您已关闭写入权限”前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
出于某种原因,我无法写入我系统上的其他用户.
[root@hostname ~]# write
write: you have write permission turned off.
[root@hostname ~]# mesg y
[root@hostname ~]# mesg
is y
[root@hostname ~]# write
write: you have write permission turned off.

还需要启用/纠正其他什么工作?

解决方法

测试strace write和strace mesg显示他们识别你的tty的方式略有不同.

write将首先执行readlink(“/ proc / self / fd / 0”,…)以查找tty的名称,然后在生成的路径上执行stat调用.

另一方面,mesg将调用fstat(1,…),它会跳过使用readlink的步骤而不依赖于/ proc文件系统.

请注意,它们还会查看不同的文件描述符0 vs 1.通常,交互式shell将具有引用相同tty的文件描述符0,1和2.如果你以某种方式使你的shell运行0和1引用不同的东西,例如,如果你重定向其中一个,这可以解释mesg和write的输出之间的差异.

如果文件描述符都引用相同的tty,则差异的另一个可能原因可能是您的/ proc安装程序没有按预期运行或者您的tty的字符设备inode已被替换.

猜你在找的Linux相关文章