En SSH, comment puis-je mv sur mon système local?

111

J'ai ssh -ed dans le répertoire de mon hébergeur, et tar -d a téléchargé l'application Web. Lorsque j'essaie de mv à ~/mydirectory/backups ou /home/mydirectory/backups , il définit la "maison" comme étant ma racine sur le webhost dans lequel je suis ssh'ed.

Comment puis-je mv dans ssh sur un disque local tout en étant dans le système de l’hébergeur?

    
posée JeanSibelius 29.06.2012 - 01:41
la source

5 réponses

153

Tout d’abord, ssh est un moyen de vous connecter à distance à un autre ordinateur. Le shell (ligne de commande) que vous obtenez après ssh est (à peu près) le même que si vous aviez ouvert un xterm sur la machine distante. Si n'offre pas une telle façon de déplacer des fichiers.

Cependant, le fait que l’ordinateur distant accepte les connexions ssh vous offre quelques options pour échanger des fichiers:

Utiliser scp Pour copier depuis votre ordinateur local vers la télécommande, tapez, sur l'ordinateur local:

scp /tmp/file user@example.com:/home/name/dir

(où / tmp / file peut être remplacé par n'importe quel fichier local et / home / name / dir avec n'importe quel répertoire distant)

Pour copier de l'ordinateur distant vers l'ordinateur local, tapez dans l'ordinateur local :

scp user@example.com:/home/name/dir/file /tmp

Utiliser sshfs C'est un peu plus avancé, mais beaucoup, beaucoup mieux (lorsque la connexion Internet des deux ordinateurs est bonne, sinon, restez-en à scp)

Vous pouvez "lier" un répertoire de l’ordinateur distant à un répertoire (vide) de l’ordinateur local. Disons que vous "liez" le répertoire / some / remote / dir de l'ordinateur distant à / home / youruser / remotecomp sur votre ordinateur. S'il y a un fichier / some / remote / dir / fichier sur l'ordinateur distant, vous pouvez le voir sur / home / youruser / remotecomp / file. Vous pouvez copier et mv comme d'habitude, et vous pouvez même modifier les fichiers et les répertoires distants.

Notez cependant que lorsque la connexion est terminée, / home / youruser / remotecomp redevient un répertoire vide et que vous ne conservez dans l'ordinateur local que les fichiers que vous avez copiés dans d'autres répertoires

Pour y parvenir:

1) installez sshfs:

sudo apt-get install sshfs

2) créer un répertoire vide

mkdir /home/youruser/remotecomp

3) "lier" les deux répertoires (le terme correct est monter)

sshfs user@server.com:/some/remote/dir /home/youruser/remotecomp

4) Enjoy

5) "dissocier" les dirs

fusermount -u /home/youruser/remotecomp

Si l'ordinateur local exécute Windows Vous pouvez trouver des versions de scp pour Windows. Voir, par exemple, winscp

    
réponse donnée josinalvo 29.06.2012 - 03:32
la source
15

Vous pouvez soit utiliser scp ou rsync . Dans votre système local:

scp remoteuser@remotehost:/remote/dir/file /local/dir/

Mais comme vous avez mentionné la sauvegarde, je suppose qu’elle serait incrémentielle et que vous devez le faire de temps en temps. Ainsi, rsync est un meilleur choix pour la sauvegarde incrémentielle. Sur votre shell local:

rsync -avz -e ssh remoteuser@remotehost:/remote/dir /local/dir/

voir les pages de manuel rsync(1) et scp(1) pour les options.

    
réponse donnée Hedy 29.06.2012 - 03:31
la source
8

Vous pouvez utiliser scp copie sécurisée.

À partir de votre shell local:

scp -C username@webhost:/path/of-the/tar.archive /home/mydirectory/backups/

Cet exemple copie via ssh depuis /path/of-the/tar.archive de votre hébergeur vers / home / mydirectory / backups /

Options supplémentaires:

-C : active la compression

    
réponse donnée pl1nk 29.06.2012 - 01:48
la source
4

J'ai eu le même problème. Voici la solution simple: -

  1. Ouvrez nautilus (l'explorateur de fichiers)
  2. Cliquez sur + Other Locations en bas du panneau de gauche.
  3. Au bas, il y a une bande Connect to server . Ecrivez l'adresse ssh dans la zone de saisie telle que ssh://111.222.333.444/ .
  4. Entrez votre nom d'utilisateur et votre mot de passe dans la boîte de dialogue qui s'ouvre.
  5. Une fois l'authentification réussie, vous serez à home de l'emplacement distant. N'hésitez pas à déplacer le fichier ici et là.
réponse donnée rushi 04.02.2017 - 19:13
la source
1

Les autres réponses recommandent rsync ou scp , les deux nécessitant de connaître l’emplacement du fichier que vous souhaitez copier sur la machine distante.

Si vous souhaitez pouvoir faire le tour de la machine distante, comme vous pouvez le faire avec ssh , vous devez exécuter sftp . La connexion au serveur est très similaire à ssh , mais une fois entré, tapez help pour obtenir la liste des commandes - il vous permet de vous déplacer sur les machines locales et distantes et de transférer facilement des fichiers. .

    
réponse donnée Xanthir 05.02.2017 - 22:37
la source

Lire d'autres questions sur les étiquettes