53 votes

Comment copier un fichier vers une autre machine via le terminal?

Je fais tourner Ubuntu 10.04 via VMPlayer. Et j'ai une autre machine (routeur Asus RT-N16). Je suis capable de me connecter au routeur avec telnet et voir son système de fichiers. Comment puis-je copier le fichier de la machine locale (le fichier est /home/user/helloworld-c) vers le routeur (dossier */tmp/mnt/discb_1*)?

93voto

Colin Fraizer Points 373

Est-il possible de se connecter via SSH? Peut-être devriez-vous envisager l'utilitaire "scp". C'est très simple, consultez la page de manuel:

man scp

L'utilisation la plus basique:

scp user@hote_distant:/chemin/du/fichier_distant /chemin/du/fichier_local

et vice versa:

scp /chemin/du/fichier_local user@hote_distant:/chemin/du/fichier_distant

15voto

iddqd Points 332

Pour copier un répertoire non vide depuis l'ordinateur distant vers votre ordinateur :

scp -r remoteusername@192.168.1.56:/home/vrc/Desktop/www /home/ourusername/Desktop

Pour copier un fichier, il suffit d'exclure l'option -r :

scp remoteusername@192.168.1.56:/home/vrc/Desktop/file1 /home/ourusername/Desktop

Pour copier depuis votre ordinateur vers l'ordinateur distant, il suffit d'inverser la position et la destination dans l'exemple précédent. Pour plus d'informations, consultez man scp.

11voto

Kaleem Ullah Points 310

Une autre façon de le faire : (via le fichier pem)

Si vous voulez utiliser le fichier pem et que vous êtes utilisateur ROOT:

1. utilisateur root :

sudo scp -i ~/servers/your-key.pem ~/your-local-source-path/your-local-file.txt root@00.00.00.11:/you-server-destination-path/

notez le deux points : entre l'IP du serveur et le chemin de destination.

si je ne peux pas me connecter en tant qu'utilisateur root, voir l'étape 2.

2. utilisateur standard :

supposons que vous êtes utilisateur ubuntu avec des privilèges standards.

sudo scp -i ~/servers/your-key.pem ~/your-local-source-path/your-local-file.txt ubuntu@00.00.00.11:/home/ubuntu/

cela mettra le fichier dans le répertoire home. ensuite, connectez-vous au serveur distant avec l'utilisateur standard. et faites

sudo su

vous passerez à l'utilisateur root. puis déplacez le fichier vers le répertoire de destination

mv /home/ubuntu/your-local-file.txt /you-server-destination-path/your-local-file.txt

Je rencontre souvent ce problème, donc je partage une autre façon de faire le travail !

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X