J'ai ssh
ajouté dans le répertoire de mon hébergeur, et tar
l'application Web à télécharger. Lorsque je tente de mv
Tô ~/mydirectory/backups
ou /home/mydirectory/backups
, il définit la « maison » , comme ma racine sur le webhost que je suis en ssh'ed.
Comment puis-je mv en ssh sur un lecteur local tout en restant dans le système de l'hôte Web?
Réponses:
Tout d’abord: ssh est un moyen de se connecter à distance à un autre ordinateur. Le shell (ligne de commande) que vous obtenez une fois que ssh est (à peu près) identique à celui que vous aviez ouvert un xterm sur la machine distante. Si n'offre pas un tel moyen de déplacer des fichiers.
Cependant, le fait que l'ordinateur distant accepte les connexions ssh vous donne certaines options pour échanger des fichiers:
Utiliser scp Pour copier de votre ordinateur local vers la télécommande, tapez sur l’ordinateur local:
scp /tmp/file [email protected]:/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, sur l' ordinateur local :
scp [email protected]:/home/name/dir/file /tmp
Utilisez sshfs C’est un peu plus avancé mais beaucoup, beaucoup plus agréable (quand la connexion Internet des deux ordinateurs est bonne. Sinon, tenez-vous-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 de votre ordinateur. S'il existe un fichier / some / remote / dir / dans l'ordinateur distant, vous pouvez le voir dans / home / votre utilisateur / remotecomp / file. Vous pouvez copier et copier comme d'habitude, et même modifier les fichiers et les répertoires distants.
Notez toutefois que, lorsque la connexion est terminée, / home / youruser / remotecomp redevient un répertoire vide et que vous ne gardez que sur l'ordinateur local 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 bon terme est mount)
sshfs [email protected]:/some/remote/dir /home/youruser/remotecomp
4) profiter
5) "dissocier" les répertoires
fusermount -u /home/youruser/remotecomp
Si l'ordinateur local exécute Windows Vous pouvez trouver des versions de
scp
pour Windows. Voir, par exemple, winscpla source
sshfs
optionrsync -P -e ssh /tmp/file [email protected]:/home/name/dir
. En effet, si un transfert de fichier échoue à mi-parcours,scp
le fichier sera simplement supprimé. D'autre part, si vous utilisezrsync
l'-P
option, cela gardera un fichier incomplet sur la machine distante et, lorsque vous redémarrerez le transfert, vous vous assurerez que ce qui se trouve déjà sur la machine distante correspond au fichier sur votre machine locale. puis continuez là où le transfert s'est arrêté.Vous pouvez soit utiliser
scp
oursync
. Dans votre système local:scp remoteuser@remotehost:/remote/dir/file /local/dir/
Mais puisque vous avez parlé de sauvegarde, je suppose que ce serait incrémental et que vous deviez le faire de temps en temps. Donc,
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
rsync(1)
etscp(1)
pages de manuel pour les options.la source
Vous pouvez utiliser scp secure copy.
De votre coquille locale:
Cet exemple va copier via ssh de /path/of-the/tar.archive de votre hébergeur vers / home / mon répertoire / sauvegardes /
Options supplémentaires:
-C : Permet la compression
la source
J'ai eu le même problème. Voici la solution facile: -
+ Other Locations
en bas du panneau de gauche.Connect to server
. Écrivez l'adresse ssh dans la zone de saisie, par exemplessh://111.222.333.444/
.home
l’emplacement distant. N'hésitez pas à déplacer le fichier ici et là.la source
Les autres réponses recommandent
rsync
ouscp
, les deux nécessitant de connaître l'emplacement du fichier que vous souhaitez copier sur la machine distante.Si vous voulez plutôt pouvoir vous déplacer sur la machine distante, comme vous le pouvez avec
ssh
, vous voulez exécutersftp
. Se connecter au serveur est très similaire àssh
, mais une fois que vous y êtes entré , tapezhelp
pour obtenir la liste des commandes - cela vous permet de vous déplacer sur les ordinateurs locaux et distants, et de transférer facilement les fichiers.la source
C'est étrange que c'est impossible de l'intérieur
ssh
. Dans un terminal classique, il est possible d’envoyer / recevoir des fichiers à l’aide des commandes zmodem.Cela a aidé à google up
zssh
: http://zssh.sourceforge.net/ . On devra l'exécuter comme un wrapper à l'originalssh
.la source