1

У меня есть несколько открытых терминалов. Я хотел бы отправить процессы в этих терминалах в сеанс tmux а не сохранять, закрывать, перезапускать в tmux и затем возвращать процесс в состояние, в котором он находится в данный момент.

Как мне присоединить запущенный процесс не-tmux к сеансу tmux ?

1 ответ1

5

reptyr должен сделать эту работу. Смотрите GitHub

Узнайте идентификатор процесса задания, которое вы хотите перенести. Я обычно делаю это, набирая

ps -p | grep programname

затем перейдите к сеансу tmux, окну, панели, ... и вставьте:

reptyr PID

где PID - это идентификатор процесса, который вы только что узнали.

Этот рабочий процесс должен быть сценарием.

Если появляется какое-то сообщение, это говорит о том, что оно не работает:

Unable to attach to pid 4625: Operation not permitted
The kernel denied permission while attaching
...

Введите как root для разрешения выше:

echo 0 > /proc/sys/kernel/yama/ptrace_scope

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .