Існуючі відповіді можуть добре працювати, але мені знадобилося щось для BusyBox (оболонка та набір інструментів для мінімального обладнання, наприклад домашніх маршрутизаторів). Моя система не має screen
, dtach
, at
, disown
, або навіть nohup
! Тож завдяки tbc0 на SO ( посилання ) я знайшов цей дорогоцінний камінь. Він повертається негайно, але серверний процес продовжує працювати:
ssh myserver 'sleep 100 >&- 2>&- <&- &'
Або якщо потрібно кілька команд:
ssh myserver '(echo one; sleep 100; echo two; sleep 200) >&- 2>&- <&- &'
Пояснення:
>&-
- закрити ручку штриху
2>&-
- закрити stderr
<&-
- близький стдин
&
- покласти процес на задній план
При цьому не використовуються зовнішні програми, і вони повинні працювати через ksh, ash, Bourne shell, bash тощо.