使用旧式 BSD PTY 代替 /dev/pts?

使用旧式 BSD PTY 代替 /dev/pts?

我正在尝试使用旧数据库,该数据库仅接受来自旧式 BSD 样式伪终端 /dev/ttyp 或 /dev/tty 的连接。它无法识别 /dev/pts/9 样式 PTY。通过 SSH 进行连接。

我最后一次使用它是在 2002 年的 RedHat Linux 7.2 上,当时我必须重建具有 Legacy PTYS 支持的内核,然后从 fstab 中删除 devpts。然后 RHL 自动恢复使用 /dev/ttyp。我现在需要使用 Debian,我正在 Squeeze 6.0.7 上尝试这个,但如果有帮助的话,我愿意回到 Lenny 或升级到 Wheezy。我已经重建了具有 Legacy PTYS 支持的 2.6.32 内核,但我不知道如何强制使用旧版 ttyp。menuconfig 不允许将 devpts 排除在内核之外。

在 Squeeze 中,devpts 不再挂载在 fstab 中。我找到了一个挂载 devpts 的 init 脚本 (/etc/rcS.d/S03mountdevsubfs.sh),并尝试注释掉“domount devpts”行,并将“umount /dev/pts”放入 rc.local,但 Squeeze 只会给我一个 /dev/pts/9。我在整个文件系统中搜索“mount /dev/pts”,但没有成功。

有人知道如何强制使用旧式 BSD ttyp 进行 SSH 连接吗?

答案1

如果不修补 OpenSSH,你就无法做到这一点,因为在当前版本中,OpenSSH 仅在以下情况下使用 BSD 样式的 ptys:已编译在不支持任何其他功能的系统上(请参阅openbsd-compat/bsd-openpty.c)。

相关内容