Если сервер позволяет аутентификацию с открытым ключом, поместите открытый ключ соединяющегося клиента к серверу ~/.ssh/authorized_keys
файл. Использовать ssh-keygen
на клиенте, создавание пары ключей. Можно также использовать ssh-copy-id
сценарий для копирования открытого ключа в сервер. На генерации ключей можно опустить пароль, таким образом, Вас не попросят его. Обязательно сохраните закрытый ключ (~/.ssh/id_rsa
) безопасный.
Используйте autossh для поддержания туннеля.
Это не говорит "такого PID" или является там ошибкой, - поскольку в этом работает?
kill -TERM -- -GPID
Также отметьте, согласно (подчеркните мой),
человек 1:
"[…], Когда аргумент формы '-n' дан, и это предназначено для обозначения группы процесса […]"
"[…], Если pid - меньше чем-1, то сигнал отправляется в каждый процесс в группе процесса, идентификатор которой - pid […]"
"[…], Если pid отрицателен, но не-1, сигнал должен быть отправлен во все процессы (исключая неуказанный набор системных процессов), чей идентификатор группы процесса равен абсолютному значению pid, […]"
Как в, не PID, но идентификатор группы процесса.
Еще, возможно, Вы можете иметь таким образом забава с/proc / [pid] / статистика
ppid: awk '{gsub(/\([^)]+\)/,"_"); print $4}' /proc/3955/stat
pgrp: awk '{gsub(/\([^)]+\)/,"_"); print $5}' /proc/3955/stat
pkill - НАЗОВИТЕ-g PGRP
Вы могли использовать "pkill" или "killtree" решение, показанное на этом потоке на других из сайтов StackExchange :)
https://stackoverflow.com/questions/392022/best-way-to-kill-all-child-processes
pkill -TERM -P PARENT_PID
Это может иметь отношение к Вам использующий оболочку встроенное уничтожение а не двоичный файл, попытаться использовать
/bin/kill
Если это работает, я предложил бы проверить, добавила ли Ваша оболочка опцию группы процесса к более новой версии. Или просто используйте двоичный файл.
если базовая ОС использует Busybox и, таким образом, говорит Error: kill: bad signal name '-'
, это, скорее всего, проблема с --
.
Вам нужно указать kill -TERM -- -[gpid]
вместо просто kill -- -[gpid]
. TERM — это сигнал по умолчанию.
Не знаю почему.