![将文件从本地 WSL ubuntu 传输到远程服务器](https://linux22.com/image/196940/%E5%B0%86%E6%96%87%E4%BB%B6%E4%BB%8E%E6%9C%AC%E5%9C%B0%20WSL%20ubuntu%20%E4%BC%A0%E8%BE%93%E5%88%B0%E8%BF%9C%E7%A8%8B%E6%9C%8D%E5%8A%A1%E5%99%A8.png)
test1.zip
我的本地笔记本电脑的文件夹中有一个名为的文件/mnt/c/Users/test/
[其中安装了适用于 linux 的 ubuntu windows 子系统]。本地 ubuntu 终端 WSL 名称是lauda
现在,我想将这个名为 的 zip 文件传输test1.zip
到名为 的远程服务器stuff
。
请注意,所有命令都是从我的本地笔记本电脑 WSL 屏幕 [ubuntu 屏幕] 上尝试的
因此,我从 WSL [本地笔记本电脑 ubuntu WSL 终端] 尝试了以下命令
scp user1@lauda:/mnt/c/Users/test/test1.zip user1@stuff:/home/test/codes/test1
并得到错误ssh: Could not resolve hostname lauda: Name or service not known
所以我尝试了下面的[lauda
用它的IP替换本地笔记本电脑ubuntu终端主机名]
scp [email protected]:/mnt/c/Users/test/test1.zip user1@stuff:/home/test/codes/test1
这导致错误为ssh: connect to host 172.xx.xxx.xxx port 22: Connection refused
现在我尝试了与上面相同的命令,但方式相反,如下所示
scp user1@stuff:/home/test/codes/ user1@lauda:/mnt/c/Users/test/test1.zip
并得到以下错误
ssh: Could not resolve hostname lauda: Temporary failure in name resolution
后来我尝试用IP地址
scp user1@stuff:/home/test/codes/ [email protected]:/mnt/c/Users/test/test1.zip
我收到以下错误
ssh: connect to host 172.xx.xxx.xxx port 22: No route to host lost connection
后来,我也尝试了以下命令
scp /mnt/c/Users/test/test1.zip user1@stuff:/home/test/codes/
并得到一个错误scp: /home/test/codes/test1.zip: Permission denied
所以,我再次尝试如下
scp user1@stuff:/home/test/codes/ /mnt/c/Users/test/test1.zip
并得到一个错误scp: /home/test/codes: not a regular file
请注意,所有命令都是从我的本地笔记本电脑 WSL 屏幕 [ubuntu 屏幕] 上尝试的
如何将本地文件/文件夹从本地 ubuntu WSL 终端传输到远程服务器?
答案1
我会检查您对 .zip 文件的权限。您至少需要读取权限才能传输文件。我还要确认您可以在传输文件之前通过 SSH 连接服务器
# Navigate to the directory
cd /mnt/c/Users/test/
# Review the file permissions for test1.zip
ls -l
# Change permissions to read access for the user
chmod 400 test1.zip
# Transfer to remote server (After confirming you can log in via SSH)
scp ./test1.zip user1@stuff:/home/test/codes/