Centos 6.4 中的 /dev/pts/ptmx

Centos 6.4 中的 /dev/pts/ptmx

我在 CentOS 上运行的服务器上遇到了问题。CentOs 已升级到 6.4 版并包含所有更新。更新是根据官方存储库进行的。在运行 V-Server 的服务器上。

本地 /fstab

------------------------------------FSTAB------------------------------------------

Device           Mountpoint  FStype   Options                  Dump Pass

/dev/sda1        /boot       ext3     rw,noatime               1    2
/dev/vg0/root    /           ext3     rw,noatime               1    1
/dev/vg0/swap    none        swap     sw                       0    0
/dev/vg0/usr     /usr        ext3     rw,noatime               1    2
/dev/vg0/var     /var        ext3     rw,noatime               1    2
/dev/vg0/log     /var/log    ext3     rw,noatime               1    2
/dev/vg0/tmp     /tmp        ext3     rw,noatime,nosuid,noexec 1    2
/dev/vg0/home    /home       ext3     rw,noatime               1    2
/dev/vg0/vz      /vservers   ext3     rw,noatime               1    2
tmpfs            /dev/shm    tmpfs    defaults                 0    0
devpts           /dev/pts    devpts   rw,gid=5,mode=620        0    0
sysfs            /sys        sysfs    defaults                 0    0
proc             /proc       proc     defaults                 0    0

问题在于/dev/pts/ptmx

root@Hostname #/dev/pts > ls -la <br>
total 0<br>
drwxr-xr-x  2 root       root      0 Sep 12 12:34 .
drwxr-xr-x 18 root       root   3860 Sep 12 12:34 ..
crw--w----  1 mmichalski tty  136, 0 Sep 12 12:53 0
c---------  1 root       root   5, 2 Sep 12 12:34 ptmx

可以看到它没有权限。同样的情况也发生在运行虚拟环境中。下面是虚拟环境的 fstab 文件

在 Vserver 上虚拟运行的 fstab

none    /proc           proc    defaults                0 0
none    /tmp            tmpfs   size=16m,mode=1777      0 0
none    /dev/pts        devpts  gid=5,mode=620          0 0

什么原因导致该问题以及在哪里寻找解决方案?

答案1

节点的默认模式为ptmx0000。请参阅man mount并搜索ptmxmode。您可以通过 来验证您的挂载选项mount

对于我的机器(不是 CentOS)

$ mount | grep devpts
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)

那么模式确实是 0000。

$ ls -l /dev/pts/ptmx 
c--------- 1 root root 5, 2 Sep  6 10:13 /dev/pts/ptmx

然而,/dev/ptmx是重要的一个,它是由创建的udev

$ grep -ri ptmx /usr/lib/udev/*
/usr/lib/udev/rules.d/50-udev-default.rules:SUBSYSTEM=="tty", KERNEL=="ptmx", GROUP="tty", MODE="0666"

$ ls -l /dev/ptmx
crw-rw-rw- 1 root tty 5, 2 Sep 12 13:58 /dev/ptmx

相关内容