我在 Linux 中通过远程连接 (xrdp) 使用 Eclipse。我的互联网断开了,因此在 Eclipse 运行时我与服务器断开了连接。
现在我再次登录,并执行“top”命令,我可以看到 eclipse 正在运行并且仍然使用我的用户名。
有什么方法可以让我将该进程重新带回到我的视图中(我不想终止它,因为我正在检查大量代码)?我再次登录后,它没有显示在底部面板上。
这是“顶部”输出:
/home/mclouti% top
top - 08:32:31 up 43 days, 13:06, 29 users, load average: 0.56, 0.79, 0.82
Tasks: 447 total, 1 running, 446 sleeping, 0 stopped, 0 zombie
Cpu(s): 6.0%us, 0.7%sy, 0.0%ni, 92.1%id, 1.1%wa, 0.1%hi, 0.1%si, 0.0%st
Mem: 3107364k total, 2975852k used, 131512k free, 35756k buffers
Swap: 2031608k total, 59860k used, 1971748k free, 817816k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
13415 mclouti 15 0 964m 333m 31m S 21.2 11.0 83:12.96 eclipse
16040 mclouti 15 0 2608 1348 888 R 0.7 0.0 0:00.12 top
31395 mclouti 15 0 29072 20m 8524 S 0.7 0.7 611:08.08 Xvnc
2583 root 20 0 898m 2652 1056 S 0.3 0.1 139:26.82 automount
28990 postgres 15 0 13564 868 304 S 0.3 0.0 26:33.36 postgres
28995 postgres 16 0 13808 1248 300 S 0.3 0.0 6:54.95 postgres
31440 mclouti 15 0 3072 1592 1036 S 0.3 0.1 6:01.54 gam_server
1 root 15 0 2072 524 496 S 0.0 0.0 0:03.00 init
2 root RT -5 0 0 0 S 0.0 0.0 0:04.53 migration/0
3 root 34 19 0 0 0 S 0.0 0.0 0:00.04 ksoftirqd/0
4 root RT -5 0 0 0 S 0.0 0.0 0:00.00 watchdog/0
5 root RT -5 0 0 0 S 0.0 0.0 0:01.72 migration/1
6 root 34 19 0 0 0 S 0.0 0.0 0:00.07 ksoftirqd/1
7 root RT -5 0 0 0 S 0.0 0.0 0:00.00 watchdog/1
8 root RT -5 0 0 0 S 0.0 0.0 0:04.33 migration/2
9 root 34 19 0 0 0 S 0.0 0.0 0:00.05 ksoftirqd/2
答案1
您似乎正在 Xvnc 上运行 X 会话。如果正确,您只需重新连接到 vnc 服务,就像之前所做的那样。
答案2
我不使用 xrdp,但 Eclypse 可能在不同的 X 显示器上运行。如果您的客户端不允许您重新连接到现有显示器,而是创建一个新显示器(和新会话),您可以使用 x11vnc ( apt-get install x11vnc
) 使用 VNC“连接”到已经运行的 X 服务器(无论何种类型),从而获得所需的结果。使用 ssh 登录后,在运行 Eclypse 的机器(“远程主机”)上运行此命令:
x11vnc -passwd somepassword -display :0
然后,在您的当前位置:
vncviewer remotehost:0
如果不起作用,请尝试 :1、:2 等。这假设您可以访问 的每个端口remotehost
。如果不能,您可能必须使用 ssh 隧道将端口 5900 转发给显示器 :0,将 5901 转发给显示器 :1,依此类推:
ssh -L 5900:localhost:5900 remotehost
进而:
vncviewer localhost:0
答案3
如果不执行该进程screen
或类似的实用程序,您将无法使用常规方法重新连接该进程。
不过,似乎有人编写了一些软件来执行此操作。请参阅:我可以 nohup/screen 一个已经启动的进程吗?