标签: session

`ps` 中的“会话领导者”是什么?

什么是会话领导者,因为ps -d它选择除了会话领导者之外的所有进程?

process ps session

92
推荐指数
3
解决办法
4万
查看次数

在 PuTTY 或终端关闭后保持进程运行

我在Raspbian (Debian) 机器上运行Node.js服务器,我想远程启动和停止服务器。这对我来说意味着使用PuTTY访问 shell,除非当我关闭 PuTTY 终端或超时时,我的服务器会随之关闭,因为我只是在前台执行我的服务器。

有没有办法让它继续下去,但之后仍然有办法终止进程?

ssh session services sysvinit

70
推荐指数
4
解决办法
29万
查看次数

断开连接后如何恢复外壳

我在远程 CentOS 5.6 机器上做一些工作,但我的网络一直在掉线。有没有办法在重新连接后恢复挂起的会话?

编辑:我正在用 yum 进行一些更新和安装,我担心如果进程一直挂在他们正在做的事情中间,这可能是一个问题。

linux shell networking session

54
推荐指数
4
解决办法
9万
查看次数

我可以以 root 身份在另一个用户的桌面上启动图形程序吗?

以下是我认为我需要了解的其他问题:

  • 来自非 X 会话?(意味着 root 没有登录到 X)

  • 如果多人登录 X,我是否可以自动检测谁在哪个屏幕上,从而以编程方式检测我需要在哪个屏幕上启动应用程序?

  • 我可以以用户身份启动应用程序吗?(好吧,我 99.999% 确定这是肯定的)

  • 我可以检测 X 组的用户是否登录到 X 吗?

root xorg session

40
推荐指数
2
解决办法
3万
查看次数

tmux 会话在未知 pts 中丢失,原因和可能的解决方案?

我试图重新附加到长时间运行的 tmux 会话以检查 python 网络应用程序。然而tmux attach声称没有正在运行的会话,并ps显示一个tmux进程(第一行),但用问号而不是pts数字。

这是什么意思——这个 tmux 会话是否永久丢失了,可能是什么原因造成的?有没有办法查看 python 进程的当前状态,在 tmux 会话中产生并在pts/19(第二行)中运行?

[mhermans@web314 ~]$ ps -ef | grep mhermans
mhermans 16709     1  0 Mar04 ?        00:26:32 tmux
mhermans  8526 16710  0 Mar04 pts/19   00:20:04 python2.7 webapp.py
root      9985  6671  0 10:18 ?        00:00:00 sshd: mhermans [priv]
mhermans 10028  9985  0 10:18 ?        00:00:00 sshd: mhermans@pts/16
mhermans 10030 10028  0 10:18 pts/16   00:00:00 -bash
mhermans 16247 10030  6 10:28 pts/16 …
Run Code Online (Sandbox Code Playgroud)

process tmux session

35
推荐指数
2
解决办法
2万
查看次数

如何运行在登录屏幕之前启动的脚本?

我正在校准我的触摸屏,发现最好的工具是 xinput_calibrator。所以我用了它。它有两个选项(其中一个不起作用),所以我在这里是第二个。它说我应该“在以您的 X 会话开始的脚本中”执行此命令:

xinput set-int-prop "3M 3M USB Touchscreen - EX II" "Evdev Axis Calibration" 32 14410 2146 14574 2115

所以我尝试了~/.xinitrc,~/.xsession~/.xsessionrc,所有这些都不存在。所以我创建了它们,确切的内容是这个命令。前两个文件使我的登录失败(登录后,我退回到登录屏幕)。

使用最后一个文件,校准是有效的,但只有在登录后...

我需要在登录对话框出现之前运行该命令。我想在/etc/X11/xinit/xinitrc没有结果的情况下将此命令添加到末尾(没有任何改变)。此外,我尝试将其添加到/etc/X11/Xsession.d/40x11-common_xsessionrc(在检查了一些文件之后)的末尾,但结果与将其添加到~/.xsessionrc.

如何在登录屏幕显示之前运行此命令(这是在窗口管理器启动之前,还是在 X 会话启动之前)?

(如果重要的话,我正在使用默认窗口管理器运行 Kubuntu)

更新因为我使用的是 Kubuntu,所以我的显示管理器是 kdm。正如接受的答案所暗示的那样,我编辑了该文件/etc/kde4/kdm/Xsetup,并且如此处所述我在默认情况下存在的命令之前添加了该命令。它就像一个魅力:)

startup x11 session

21
推荐指数
1
解决办法
3万
查看次数

跨登录会话重用 D-Bus 会话

我通过多个登录会话访问一台机器。会话的生命周期可能重叠也可能不重叠。就我而言,这些登录会话目前始终通过 SSH,但我也更愿意处理本地会话。

我有时需要在这些会话中使用 D-Bus,并且我想在这些登录会话中共享相同的 D-Bus 会话,以便使用 GVFS

推荐的方法是什么?我不想破坏我可能不知道的 D-Bus 的任何使用。我考虑过使用

export $(dbus-launch --autolaunch $(cat /var/lib/dbus/machine-id))
Run Code Online (Sandbox Code Playgroud)

但是(从 Ubuntu 12.04 开始)这似乎不对:

  • 这需要一个 X 会话,但我的 SSH 会话可能会或可能不会转发 X 显示,甚至那些没有相同的$DISPLAY
  • 如果没有可用的 X 显示,则dbus-launch抱怨“自动启动错误:X11 初始化失败”。并且不启动守护进程;
  • dbus-launch那个“男人页面状态--autolaunch的选项被认为是一个内部实现细节(...)。无论如何,没有真正的理由在 libdbus 实现之外使用它。”

dbus-launchD-Bus 套件中的其他工具是否支持自动检测运行dbus-daemon并连接到它?~/.dbus/session-bus/$(cat /var/lib/dbus/machine-id)-${DISPLAY#*:}如果 D-Bus 是通过 X 连接启动的,则必要的信息在其中,但如果没有可用的 X 连接,则似乎不会存储在任何地方。

我应该拼凑自己的 D-Bus 会话文件吗?如果我这样做,我应该使用目录中的~/.dbus/session-bus文件吗?路径是否/var/lib/dbus/machine-id可靠且可移植?

d-bus session

20
推荐指数
1
解决办法
5984
查看次数

Unix中控制终端的概念

有人可以以一种易于理解的方式解释在unix和unix类系统中控制终端的概念吗?它与会话有关吗?如果是,那么如何?

terminal job-control session controlling-terminal

20
推荐指数
1
解决办法
5352
查看次数

文档:Linux Session 的架构

我正在寻找一个很好的概述文档,描述现代 Linux 会话中涉及的守护进程和服务堆栈。尽管阅读了有关dbus, 和 的各种文档systemd,但我仍然没有了解大局。

特别是,我正在寻找这些问题的答案(不要回答问题,他们应该只说明我在寻找什么样的文档):

  • 登录后,哪个进程是用户会话的root?

  • 应该启动哪些进程,为什么?我正在寻找一个与桌面无关的答案,无论是启动 Gnome、KDE、FVWM 还是简单的 shell。

  • 所有这些守护进程都扮演什么角色?哪些会单独运行,哪些会依赖其他人?哪一个应该由谁开始,为什么,以及多长时间?谁应该维护那个动物园?

我在问,因为我发现启动后我有一个完整的守护进程动物园:systemd-journald, systemd-udevd, dbus-daemon, systemd-logind. 但还不够:除了这些,运行超轻量级PDF查看器zathura 进一步填充我的会话dbus-launchdbus-daemonat-spi2-registryd,和at-spi-bus-launcher,后者启动另一个dbus-daemon。他们以前都没有去过那里,也没有人被邀请过,但他们会留在房子里,给我一种令人毛骨悚然的感觉,直到我退出。我确定我在这里遗漏了一些东西......

另一个例子:登录后,我systemd使用我的用户 UID 运行,但我不知道它应该做什么(从 206 版开始,我认为我不应该将其用作会话管理器,对吗?)。它有一个子进程(sd-pam),我没有找到关于它的文档。

他们在做什么?这个设置背后的想法是什么?

澄清我的观点:在“过去”,知道这login会启动我的登录 shell(bash, 执行~/.profile)就足够了 ,从那时起,我可以继续构建会话,具体取决于情况,可能是启动screen, 或startx.

documentation d-bus systemd session

20
推荐指数
2
解决办法
1940
查看次数

屏幕或类似的,用于自动恢复不稳定的 ssh 连接

我经常不得不在不可靠的 wifi 环境中通过 ssh 连接到服务器。在服务器上,我运行 screen,所以如果我断开连接,我可以重新连接并恢复 screen 会话,并从我中断的地方继续,但连接丢失仍然是一个主要的时间消耗:如果连接断开而我'm 在服务器上,终端窗口往往会冻结。我必须杀死该选项卡,打开一个新选项卡,再次通过 ssh 连接到服务器并恢复屏幕会话。我已经尝试过在服务器上运行 screen 并在本地 screen 。无论哪种方式,当连接断开时它都会冻结。

有什么办法可以让我拥有类似于 screen 或 screen 本身的东西,它会自动尝试重新连接并保持会话运行,所以我不必手动重新连接?通常,当我失去连接时,我认为这只是很短的一段时间 - 可能不到一秒钟。

我使用的是 Ubuntu 14.04 LTS,MATE 版。谢谢

ssh gnu-screen session

19
推荐指数
1
解决办法
2832
查看次数