进程登录与用户登录

进程登录与用户登录

在Ubuntu 14.04系统中,who有以下输出:

user1   :0           2016-05-02 14:49 (:0)
user1   pts/4        2016-05-02 15:10 (:0)

所以显然只是pts/4使用了。但是,例如,sudo fuser /dev/pts/1产生输出2573,即cupsd。因此,该终端也被进程使用。

为了使用终端,必须登录。user1已登录;

  • cups是否也进行登录等流程?
  • 如果是,普通用户登录和普通用户登录有什么区别?过程登录?它没有出现在who.

答案1

任何程序都可以分配伪终端,它不必涉及登录。它只是进程间通信的另一种形式,如果应用程序需要模拟终端,这非常有用。

一个例子是Expect程序。它在生成程序时分配一个伪终端,以便该程序就像由用户交互运行一样。

至于显示在who输出中,需要将程序设置为 UIDroot或设置为 GID 才能utmp更新/var/run/utmp列出哪个用户登录到每个终端的文件。这通常仅适用于创建交互式登录的程序,例如loginxterm` gnome-terminal, or

相关内容