SFTP(Solaris 서버 간에만)를 통해 대량의 파일을 전송해야 하는데 시간이 오래 걸립니다. 이 시간 동안 컴퓨터를 계속 켜둘 수 없었습니다. 나는 시도했다:
nohup sftp server1
셸이 열리면 다운로드된 파일이 표시됩니다. 쉘을 닫으면 중지됩니다. 저는 ps -ef
이 과정을 보지 못했습니다 sftp
. 파일 nohup.out 문: 신호 15에 의해 종료됨
대신 이렇게 하면 ctrl-z작동합니다. 그러나 이를 위해서는 bash 쉘이 필요합니다. ksh에서 이를 어떻게 수행할 수 있습니까?bg
disown
답변1
ksh 에서 Ctrl+Z bg
, 를 수행할 수도 있습니다. disown
또한 nohup
다음과 같은 것도 원할 것입니다.
nohup sftp server1
...
<Ctrl+Z>
bg
disown
하지만 여기서 내 제안은 다음과 같습니다.화면. OpenSolaris에서는 SUNWscreen
패키지에 있습니다 . Run을 실행 screen
하고 새 가상 터미널에서 셸을 시작합니다. 해당 셸 내에서 실행합니다 sftp server
(직접 실행할 수도 있음 screen sftp server
). 전송을 시작하고 Ctrl+를 입력하여 A Dscreen 세션의 연결을 끊습니다("분리"). 세션 내의 프로세스는 계속 실행됩니다. 나중에 를 사용하여 해당 화면 세션에 다시 연결할 수 있습니다 screen -rd
.
답변2
- SFTP 확인
- Ctrl-z
nohup -ga $(pgrep sftp)
답변3
Solaris에서 ksh를 사용하는 경우 다음 단계를 따르십시오.
% nohup 명령> command.log 2>&1 &
ksh 터미널을 종료하시면 괜찮습니다.