我在 HP EliteBook 8470p 笔记本电脑上运行 Solaris 10 1/13 (x86)。我登录 CDE 桌面。一切(音频、视频和网络)似乎都运行正常,直到我注销。当我注销时,屏幕变为空白(与工作区背景颜色相同),但登录窗口没有重新出现。到目前为止,我能够恢复的唯一方法是重新启动笔记本电脑。更新:我了解到如果我“kill -9”我的 Xorg 进程,我可以“注销”。这会让我返回到登录窗口。
到目前为止我尝试过/学到的是:
- 如果我登录 Java 桌面,也会发生同样的事情。
- 所有用户都会受到影响,包括 root 用户。
- 我仍然可以使用 rlogin 和 ssh 远程登录。
- 我仍然可以使用另一个 Solaris x86 工作站的远程桌面登录。
- 登录窗口似乎在那里,但我就是看不到它。首先,我使用 rlogin 远程登录。接下来,我在笔记本电脑上输入我的用户名和密码。然后从我的 rlogin 会话中,我执行“ps -deaf”,我可以看到我的桌面登录过程的列表。我只是在屏幕上看不到任何东西。我可以注销桌面(使用盲键找到注销)。再次,我使用“ps -deaf”来验证注销是否有效。
- ps 命令确认 dtlogin、dtgreet 和 Xorg 仍在运行。
答案1
这不是我喜欢的解决方案,但它确实有效并允许我继续我的实际工作。
我在 /etc/dt/appconfig/types/C/dt.dt 中重写了 XSession_Exit 以运行 shell 脚本。该 shell 脚本会终止属于用户的 Xorg,从而使用户返回到登录窗口。我还自定义了 /etc/dt/config/Xreset,以便在 Xorg 未重新启动时调用脚本来重新启动 cde-login。
这是一个粗略的解决方案,但是目前可以做到。