问题描述
我有通过VMPlayer运行的Ubuntu 10.04。我有另一台机器(华硕RT-N16路由器)。我能够使用telnet连接到路由器并查看其文件系统。如何将文件从本地计算机(文件是/home /user /helloworld-c)复制到路由器(文件夹* /tmp /mnt /discb_1 *)?
最佳解决思路
是否有可能通过SSH连接?也许你应该考虑”scp” utitlity。这很简单,请看manual page:
man scp
最基本的用法:
scp remote_user@remote_host:/path/to/remote/file /path/to/local/file
反之亦然:
scp /path/to/local/file remote_user@remote_host:/path/to/remote/file
次佳解决思路
要将非空目录从远程计算机复制到计算机:
scp -r remoteusername@192.168.1.56:/home/vrc/Desktop/www /home/ourusername/Desktop
要复制文件,只需排除-r
选项:
scp remoteusername@192.168.1.56:/home/vrc/Desktop/file1 /home/ourusername/Desktop
要从计算机复制到远程计算机,只需在上一个示例中切换位置和目标。有关更多信息,请访问man scp
。
第三种解决思路
另一种方法:(通过pem文件)
如果您想使用pem
文件而您是ROOT
用户:
1. 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/
请注意服务器IP
与目标路径之间的冒号:
。
如果我无法使用root
用户登录,请参阅步骤2。
2.标准用户:
假设您是具有标准权限的ubuntu
用户。
sudo scp -i ~/servers/your-key.pem ~/your-local-source-path/your-local-file.txt ubuntu@00.00.00.11:/home/ubuntu/
这会将文件放在主目录中。然后使用标准用户登录到远程服务器。并做
sudo su
你将切换到root
用户。然后将文件移动到目标目录
mv /home/ubuntu/your-local-file.txt /you-server-destination-path/your-local-file.txt
我经常遇到这个问题,因此共享另一种方法来完成工作!