Как предвидеть процесс, начатый выскочкой?
Возможно ли предвидеть процесс, начатый выскочкой?
root@me:~# ps aux | grep my-app
root 2208 0.2 0.0 1456 480 ? S 17:38 0:01 /opt/me/my-app
root@me:~# fg 2208
-bash: fg: 2208: no such job
root@me:~# fg $(pidof my-app)
-bash: fg: 2208: no such job
2 ответа
fg нужен номер работы, а не PID. Вы не можете использовать номер задания, потому что любой процесс, запущенный upstart не дитя вашей оболочки. Не появится в jobs выход.
ПытатьсяreptyrНапример:
reptyr 2208
reptyrутилита, которая берет существующую работающую программу и подключает ее к новому терминалу.
Не пропустите эту заметку:
reptyrзависит отptrace(2)системный вызов для подключения к удаленной программе. В Ubuntu Maverick и выше эта возможность отключена по умолчанию из соображений безопасности. Вы можете включить его временно, выполнивecho 0 > /proc/sys/kernel/yama/ptrace_scopeкак root или навсегда, отредактировав файл
/etc/sysctl.d/10-ptrace.conf, который также содержит больше информации об этой настройке.
Также обратите внимание reptyr только присоединяет процесс к другому терминалу. Это не означает, что процесс становится дочерним элементом вашей текущей оболочки.
fgКоманде нужен job_id, а не идентификатор процесса, вам нужно запустить jobs команда и получить job_id процесса