我遇到这样的情况:我登录到 RHEL 5.6 系统并启动 VirtualBox。关闭 VirtualBox 后,我遇到的情况是菜单栏可以选择关闭或者锁屏或者注销该系统不存在。我相信原因可能是由于网络负载或其他原因。
我可以关闭或者重新开始从航站楼出发,但同样需要相当长的时间。
我所需要的只是注销当菜单栏不存在时从系统中。我需要得到登录屏幕就像我们最初启动系统时所看到的那样。
有什么选择吗?注销使用终端的用户?
编辑:
ps-ax | grep dm 输出
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ
2352 ? S< 0:00 [rdma_cm]
2908 ? Ss 0:00 rpc.idmapd
3287 ? Ss 0:00 sendmail: accepting connections
3297 ? Ss 0:00 sendmail: Queue runner@01:00:00 for /var/spool/clientmqueue
3504 ? Ss 0:00 /usr/sbin/gdm-binary -nodaemon
3547 ? S 0:01 /usr/sbin/gdm-binary -nodaemon
3549 ? S 0:00 /usr/libexec/gdm-rh-security-token-helper
5080 tty7 Ss+ 7:20 /usr/bin/Xorg :0 -br -audit 0 -auth /var/gdm/:0.Xauth -nolisten tcp vt7
18166 pts/1 S+ 0:00 grep dm
答案1
注销的可能方法:
您可以使用组合键终止 X 服务器:Ctrl-Alt-Backspace(如果已启用),
您可以从任何终端终止 X 服务器的进程(您必须如此
root
,但您也可以通过 SSH 远程执行此操作),您要求窗口或会话管理器退出(如何实现通常取决于所使用的环境),
您可以从任何终端终止窗口或会话管理器的进程(您可以以自己的用户或 root 身份执行此操作,也可以通过 SSH 远程执行此操作),
如果会话是由显示管理器运行的,您可以停止并重新启动显示管理器(您必须如此
root
,但您也可以通过 SSH 远程执行此操作)。停止显示管理器将终止其所有会话。
如何知道X服务器的PID?通常,机器上只运行一个 X 服务器。它运行为root
.进程名称通常类似于X
, 或Xorg
。它通常有一个参数指定该 X 服务器的 ID,:0
是系统中的第一个显示。发送 SIGTERM 通常是停止 X 服务器的正确方法,使用 SIGKILL 很可能会导致图形显示不正常关闭。
如何知道哪个进程是窗口管理器或会话管理器?这取决于使用的环境。通常,这是最初启动属于 X 会话的所有进程的进程。它使用您的用户的凭据运行。pstree -up
将显示流程图。
如何知道显示管理器是哪个进程?如果图形显示由脚本启动(xinit
例如),则没有显示管理器。如果可以通过网络使用 XDMCP 访问图形显示,则存在显示管理器。显示管理器通常作为系统服务运行,无论操作系统使用什么服务运行工具(rc.d init 脚本、systemd、upstart 等)。较旧的系统使用通用的xdm
显示管理器,较新的桌面环境有自己的显示管理器:gdm3
适用于 GNOME、kdm
适用于 KDE、cde-login
适用于 CDE。停止和重新启动是通过适当的操作系统服务命令完成的。