답변:
이 작업을 수행하는 가장 좋은 방법은 화면을 사용하는 것입니다. 연결이 끊어 지더라도 세션을 지속적으로 열어 두어야합니다 (다시 사용을 시작하려는 경우 a를 수행하면 screen -r
다시 열림).
실행하려는 명령 앞에 접두사를 붙이면 screen
(예 :) ssh -t user@host screen command
작업이 수행됩니다.
쉘의 백그라운드에서 실행 &
하려면 전체에를 추가 할 수도 있습니다 .
앞서 언급했듯이 screen
모든 트릭을 수행 할 수 있습니다. 그러나 필요한 것만이 아닙니다. 몇 년 동안 화면을 사용해 왔으며 이제 시스템에 로그인 할 때마다 화면을 사용합니다. 이러한 구성 으로 설치 screen
하고 작성 하십시오 ~/.screenrc
.
sessionname vcflists
startup_message off
deflogin off
vbell off
msgminwait 0
msgwait 10
log off
backtick 1 0 0 hostname
caption splitonly "%?%F%{= yk}%:%{= Kk}%? %n %t%="
hardstatus alwayslastline "%{= rY} %1` %{= kg} %0c %{= bY} %-w%{= Yk} %n %t %{-}%+w %=%{g}%l "
그런 다음를 실행하십시오 screen -Rd vcf
. 이것이 바람직한 스크린 호출입니다. 이름이 vcf * 인 이전에 생성 된 세션에 다시 연결하거나 모호한 경우 경고를 받거나 세션을 아직 열지 않은 경우 세션이 생성됩니다. CTRL+ A는 모든 것을 수행하는 메타 키입니다. CTRL+A C
( CTRL+ A, C)는 세션 내에 새 창 (화면)을 만듭니다. CTRL+A SPACE
라운드에서 다음 창으로 초점을 이동합니다. CTRL+A D
연결간에 모든 창을 작동 상태로 유지하면서 현재 세션을 분리합니다. looooong 작업을 시작한 경우 화면에서 분리했다가 나중에 다시 연결하여 어떤 일이 발생하는지 확인할 수 있습니다. ssh 세션이 손실 된 경우에도 마찬가지입니다. 열려있는 모든 창과 모든 작업이 시작된 상태에서 화면이 활성화되어 있습니다.
화면 내부의 일부 창을 닫으려면 exit
쉘에서 시작하십시오. 모든 창에서 모든 쉘 / 태스크를 닫고 화면을 종료하려면-메시지가 표시 CTRL+A CTRL+\
되면 "Y"를 누르십시오.
나머지는 모두 man screen을 참조하십시오.