相关疑难解决方法(0)

更改进程的父进程?

是否可以更改进程的父进程?如果是,如何?

例如,

  • 如何screen设法将会话screen及其内部运行的进程附加到不同的 shell 进程?父进程有变化吗?

  • 我似乎听说过其他更改程序运行的 shell 进程的方法,但我不记得了。程序的父进程是否也发生了变化?

  • 我以为disown在一个进程上改变了进程的父进程,只是因为名字disown暗示了这一点。但我发现这不是真的。

  • Emacs 客户端可以在不同的终端选项卡上附加到 emacs 服务器。父进程有变化吗?

process gnu-screen job-control disown

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

尽管 nohup 关闭终端时,为什么铬浏览器会被杀死?

这个问题很老了,我仍然不清楚为什么。


2014 年的原始问题:

在 Gnome 终端选项卡中,我跑了

$ nohup chromium-browser &
Run Code Online (Sandbox Code Playgroud)

但是当我关闭终端选项卡时,chromium-browser也会退出。不nohup应该阻止吗?吉尔斯说:

nohup 和 disown 都可以说是抑制 SIGHUP,只是方式不同。nohup 使程序最初忽略信号(程序可能会改变这一点)。nohup 还尝试安排程序没有控制终端,以便在终端关闭时内核不会向它发送 SIGHUP。disown 纯粹是 shell 内部的;它会导致 shell 在终止时不发送 SIGHUP。

那么 nohup 不是让铬浏览器忽略 SIGHUP 吗?

我也在其他可执行文件上看到了这一点,例如 Emacs(GUI 模式)。但不是在 xeyes 上。

发布问题时,这发生在 32 位 Ubuntu 12.04 上。


2015年更新,

现在我运行的是 Ubuntu 14.04,google-chrome而不是chromium-browser安装。以前发生在 Chrome 浏览器上的事情现在也发生在 google-chrome 上。nohup google-chrome 2>/dev/null &当终端选项卡关闭时,它不会被关闭。/usr/bin/google-chrome是一个指向 bash 脚本的链接/opt/google/chrome/google-chrome。为什么nohup应用于 bash 脚本不起作用?我们如何让它在 bash 脚本上工作?Python脚本呢?

chrome nohup

14
推荐指数
1
解决办法
5177
查看次数

标签 统计

chrome ×1

disown ×1

gnu-screen ×1

job-control ×1

nohup ×1

process ×1