我有通过 VMPlayer 运行的 Ubuntu 10.04。我还有另一台机器(华硕 RT-N16 路由器)。我能够使用 telnet 连接到路由器并查看其文件系统。如何将文件从本地机器(文件是/home/user/helloworld-c)复制到路由器(文件夹 */tmp/mnt/discb_1*)?
Pav*_* S. 91
是否有可能通过 SSH 连接?也许您应该考虑“scp”实用程序。很简单,看手册页:
man scp
Run Code Online (Sandbox Code Playgroud)
非常基本的用法:
scp remote_user@remote_host:/path/to/remote/file /path/to/local/file
Run Code Online (Sandbox Code Playgroud)
反之亦然:
scp /path/to/local/file remote_user@remote_host:/path/to/remote/file
Run Code Online (Sandbox Code Playgroud)
小智 15
要将非空目录从远程计算机复制到您的计算机:
scp -r remoteusername@192.168.1.56:/home/vrc/Desktop/www /home/ourusername/Desktop
Run Code Online (Sandbox Code Playgroud)
要复制文件,只需排除该-r选项:
scp remoteusername@192.168.1.56:/home/vrc/Desktop/file1 /home/ourusername/Desktop
Run Code Online (Sandbox Code Playgroud)
要从您的计算机复制到远程计算机,只需在上一个示例中切换位置和目标即可。有关更多信息,请执行man scp。
Kal*_*lah 11
另一种方法:(通过 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/
Run Code Online (Sandbox Code Playgroud)
注意:服务器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/
Run Code Online (Sandbox Code Playgroud)
这会将文件放在主目录中。然后以标准用户登录远程服务器。并做
sudo su
Run Code Online (Sandbox Code Playgroud)
你会切换到root用户。然后将文件移动到目标目录
mv /home/ubuntu/your-local-file.txt /you-server-destination-path/your-local-file.txt
Run Code Online (Sandbox Code Playgroud)
我经常遇到这个问题,因此分享一种完成工作的替代方法!