2

在我的 VPS 服务器(Fedora 9)上,由于 tty[1-6] 上的“权限被拒绝”错误,mingetty 不断重生,即使:

root# ls -la /dev/tty1
crw------- 1 root root 4, 1 Sep 19 14:22 /dev/tty1

更奇怪的是,这不起作用:

root# 猫 </dev/tty1
bash:/dev/tty1:权限被拒绝

我猜这与VM主机有关,但我和我的VPS提供商都没有想法,谷歌也是如此......关于为什么root无法访问具有root rw权限的字符设备的任何线索?

更新:我确定 SELinux 已被禁用;然而,问题仍然存在......

更新: strace 转储:

32399 rt_sigaction(SIGTSTP,{SIG_DFL},{SIG_DFL},8)= 0
32399 rt_sigaction(SIGTTIN,{SIG_DFL},{SIG_IGN},8)= 0
32399 rt_sigaction(SIGTTOU,{SIG_DFL},{SIG_IGN},8)= 0
32399 rt_sigaction(SIGINT,{SIG_IGN},{SIG_IGN},8)= 0
32399 rt_sigaction(SIGQUIT,{SIG_IGN},{SIG_IGN},8)= 0
32399 rt_sigaction(SIGCHLD,{SIG_DFL},{0x807b990,[],SA_RESTORER,0xb7e7b708},8)= 0
32399 open("/dev/tty1", O_RDONLY|O_LARGEFILE) = -1 EACCES (权限被拒绝)
32399 open("/dev/tty1", O_RDONLY|O_LARGEFILE) = -1 EACCES (权限被拒绝)
32399 fstat64(2, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 1), ...}) = 0
32399 mmap2(NULL,4096,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANONYMOUS,-1,0)= 0xb7fe1000
32399 写(2,“bash:/dev/tty1:权限拒绝”...,35)= 35

不能说这对我来说很有意义......

4

4 回答 4

1

我怀疑 SELinux 可能是问题所在。尝试暂时禁用它,看看它是否有效。

于 2008-09-20T15:14:02.247 回答
1

我没有确切的答案,但我有一个建议。

使用 ltrace 和 strace 来了解“幕后”使用的内容,如下所示:

strace -f -o LOG bash -c 'cat < /dev/tty1'

(“ltrace”的参数相同)。检查 LOG 以找出哪个系统调用触发了“权限被拒绝”。也许它会给你一个更多的关键字来提供给谷歌或有用的日志片段来添加到你的问题中。

于 2008-10-05T18:47:26.880 回答
0

进入您的 /etc/inittab 并注释掉以下行(或其他类似的行)。您可能需要重新启动以停止重新生成

c1:12345:respawn:/sbin/agetty 38400 tty1 linux
c2:2345:respawn:/sbin/agetty 38400 tty2 linux
c3:2345:respawn:/sbin/agetty 38400 tty3 linux
c4:2345:respawn:/sbin/agetty 38400 tty4 linux
c5:2345:respawn:/sbin/agetty 38400 tty5 linux
c6:2345:respawn:/sbin/agetty 38400 tty6 linux
于 2011-11-07T16:07:46.800 回答
0

我不确定这是否会对您有所帮助,但必须先检查一下......我发现 - 在许多情况下,系统管理员禁用了对此类内容的访问,因此请尝试查找此文件:/etc/security/access. conf,然后找到“#-:ALL EXCEPT root:tty1”这一行。如果处于活动状态(意味着第一个中没有 #),该行将禁止在 tty1 上进行非 root 登录,但请注意不要更改 - 最好检查您的系统行政。

希望这有帮助

于 2013-08-19T02:19:36.363 回答