web-dev-qa-db-fra.com

Un `SCP` transfère-t-il près lorsque je ferme la coquille?

J'ai scp transfert (d'un serveur distant à un autre), c'est assez grand.

Alors peut-être que je veux fermer l'ordinateur à partir de laquelle j'ai exécuté cette commande, cela finira-t-il que le transfert? J'ai ssh accès à la coquille à l'aide du programme Bittwise.

29
Borut Flis

Vous pouvez utiliser Nohup(1) , c'est-à-dire faire quelque chose comme:

Nohup scp alice@source:/the/answer/of/all [email protected]:/var/tmp/42 &

Cela créera une sortie de Nohup.out. Ensuite, vous pouvez vous déconnecter en toute sécurité.

10
vonbrand

Oui, il sera terminé. La solution pour maintenir la session de terminal vivante sans connectivité est le programme screen:

SCREEN(1)                                                            SCREEN(1)

NAME
       screen - screen manager with VT100/ANSI terminal emulation

SYNOPSIS
       screen [ -options ] [ cmd [ args ] ]
       screen -r [[pid.]tty[.Host]]
       screen -r sessionowner/[[pid.]tty[.Host]]

DESCRIPTION
       Screen is a full-screen window manager that multiplexes a physical ter‐
       minal between several processes (typically interactive  shells).   Each
       virtual terminal provides the functions of a DEC VT100 terminal and, in
       addition, several control functions from the ISO 6429  (ECMA  48,  ANSI
       X3.64)  and ISO 2022 standards (e.g. insert/delete line and support for
       multiple character sets).  There is a  scrollback  history  buffer  for
       each virtual terminal and a copy-and-paste mechanism that allows moving
       text regions between windows.
6
Serge

Comme indiqué ci-dessus, vous pouvez utiliser la commande d'écran, par exemple:

  • Créer un écran

user@server:~$ screen -S bigscptransfer

  • Vous êtes maintenant à l'écran

ser@server:~$ scp bigfile.dat server2:.

  • Détacher de l'écran à l'aide de CTRL+A puis pousser D

[detached from 5899.bigscptransfer]

  • Remevez la session lorsque vous en avez besoin avec:

user@server:~$ screen -r bigscptransfer

2
victorcete