특수 파일 /dev/pts/0을 생성할 수 없습니다.

특수 파일 /dev/pts/0을 생성할 수 없습니다.

콘솔에서 Midnight Commander를 사용할 때 창을 "전환"할 수 없습니다(CTRL-o

Not an xterm or Linux console;
the panels cannot be toggled

그러나 내 $TERM설정은 linux.

인터넷 검색 후에 문제가 무엇인지 알아냈습니다 /dev/pts. /dev/pts동적으로 설치 했지만 devpts비어 있습니다. 다른 컴퓨터에서 복사 하려고 하면 /dev/pts/0다음 오류가 발생합니다.

cannot create special file /dev/pts/0
Operation not permitted

어딘가에서 확인하라는 제안을 찾았습니다 sysctl -a | grep pty. 이것은 나에게 다음을 제공합니다:

# sysctl -a | grep pty
kernel.pty.max = 4096
kernel.pty.nr = 0
kernel.pty.reserve = 1024

/dev/pts/작동하는 다른 컴퓨터에서는 다음을 얻습니다.

# sysctl -a | grep pty
kernel.pty.max = 4096
kernel.pty.nr = 8
kernel.pty.reserve = 1024

이것이 정확히 무엇을 의미하는지는 모르겠지만 문제는 다음과 같습니다.

kernel.pty.nr = 0

이 문제를 해결하는 방법에 대한 제안이 있으십니까?

노트: 사용해본 적은 없습니다 udev. 광산 /dev/은 정적입니다(정적 개발 파일은 /dev/pts다음과 같이 설치됩니다).devpts

옳은: 내 /dev/pts는 ( 원래 질문에 명시된 devpts것과는 다르게 ) 마운트되었습니다 .tmpfs

고쳐 쓰다:

# ls -ld /dev/pt* /dev/pts/*
ls: cannot access /dev/pts/*: No such file or directory
crw-rw-rwT 1 root root   5, 2 Oct  2 00:57 /dev/ptmx
drwxr-xr-x 2 root root      0 Sep 30 17:31 /dev/pts

# grep /dev /proc/mounts
/dev/root / ext2 rw,relatime 0 0
devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620 0 0

답변1

버전이 해당 기능 mc으로 컴파일되었는지 확인하세요. subshell다음 명령을 실행하여 이를 확인할 수 있습니다.

$ mc -V
...
With subshell support as default
...

빠른 Google 검색은 다음 2개의 결과를 반환합니다.

내 노트북에서 을 클릭하면 출력에서 ​​다음 명령이 호출되는 것을 볼 ctrl+o수 있습니다 .strace

execve("/usr/lib/mc/cons.saver", ["cons.saver", "/dev/pts/8"], [/* 136 vars */]) = 0

제가 전화할 터미널 mc은 입니다 /dev/pts/8. 따라서 두 번째 링크에서 언급한 것처럼 cons.saver터미널 장치에 액세스할 수 있는지 확인하세요.

관련 정보