답변:
기존 답변은 잘 작동 할 수 있지만 BusyBox (홈 라우터와 같은 최소 하드웨어 용 셸 및 도구 세트)가 필요했습니다. 내 시스템이없는 screen, dtach, at, disown, 또는 nohup! SO ( link )의 tbc0 덕분 에이 보석을 찾았습니다. 즉시 리턴되지만 서버 프로세스는 계속 실행됩니다.
ssh myserver 'sleep 100 >&- 2>&- <&- &'
또는 여러 명령이 필요한 경우 :
ssh myserver '(echo one; sleep 100; echo two; sleep 200) >&- 2>&- <&- &'
설명:
>&- -stdout 핸들을 닫습니다2>&- -stderr를 닫습니다<&- -가까운 stdin& -배경에 프로세스를 넣다이것은 외부 프로그램을 사용하지 않으며 ksh, ash, Bourne shell, bash 등에서 작동해야합니다.
프로세스를 백그라운드로 설정하고 세션을 닫으면 프로세스는 init (PID 1)에 의해 채택됩니다.
세션이 있고 할 경우 :
]$ sleep 10000 &
]$ exit
다른 세션을 열고 다음을 실행하십시오.
]$ ps -ef | grep sleep
501 26387 1 0 16:37 ? 00:00:00 sleep 10000
root 26422 21360 0 16:40 pts/0 00:00:00 grep sleep
내 프로세스가 여전히 실행 중이며 상위 프로세스가 1 (초기화)임을 알 수 있습니다.
또는 데몬처럼 스크립트를 설정할 수 있습니다. 빠른 검색은이 유용한 링크 인 http://onlamp.com/python/pythoncook2/solution.csp?day=1을 표시 합니다. 그 접근 방식을 원한다면.