当我使用时:
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
因此,没有密码请求,但您只能写入您有写入权限的终端。