출력이 다른 터미널에 표시될 때 왜 비밀번호를 묻지 않습니까?

출력이 다른 터미널에 표시될 때 왜 비밀번호를 묻지 않습니까?

내가 사용할 때 :

date > /dev/tty3

출력은 첫 번째 cli 터미널로 파이프됩니다.

하지만 내 질문은 터미널이 비밀번호를 묻지 않는 이유입니다. 우리는 출력을 위해 터미널을 사용하고 명령이 터미널로 전달되는데 어떻게 비밀번호를 묻지 않고 출력을 표시할 수 있습니까?

답변1

터미널은 사용자의 소유이므로 이미 터미널에 액세스할 수 있기 때문입니다. 예를 들어:

$ tty
/dev/pts/10

$ ls -l /dev/pts/10
crw--w---- 1 terdon tty 136, 10 Sep 16  2022 /dev/pts/10

그래서 나는 이것을 가지고 있습니다. 이제 새 터미널을 열고 다음을 실행합니다.

$ date > /dev/pts/10

그리고 예상대로 첫 번째 터미널 창에 나타납니다. 이제 root다음과 같이 터미널을 열면 sudo xterm다음이 표시됩니다.

[root@oregano terdon]# tty
/dev/pts/12

일반 사용자로 해당 터미널에 쓰려고 하면 다음과 같은 결과가 나타납니다.

$ ls -l /dev/pts/12
crw--w---- 1 root tty 136, 12 Sep 16 14:06 /dev/pts/12

$ date > /dev/pts/12
bash: /dev/pts/12: Permission denied

따라서 비밀번호는 요청되지 않지만 쓰기 권한이 있는 터미널에만 쓸 수 있습니다.

관련 정보