您现在的位置是:首页 >技术交流 >windows通过网络向Ubuntu发送文件/目录网站首页技术交流

windows通过网络向Ubuntu发送文件/目录

十二城街 2025-03-29 12:01:02
简介windows通过网络向Ubuntu发送文件/目录

由于最近要使用树莓派进行一些代码练习,但是好多东西都在windows里或虚拟机上,就想将文件传输到树莓派上,但试了发现u盘不能简单传送,就在网络上找到了通过windows 的scp命令传送

前提是树莓派先开启ssh服务,且Windows和树莓派能ping通

 参考文章:

通过ssh协议实现Windows与Linux之间的文件互传_ssh传输文件 windows到linux-CSDN博客

树莓派开启服务:

1. 打开终端并输入(查看是否已经开启)

sudo service ssh status

        如果 SSH 已安装, 你将看到服务的运行状态。 如果未安装, 你会收到一条提示, 指示 SSH 服务未运行。
2. 如果未安装 SSH, 执行下面的指令进行安装

sudo apt update
sudo apt install openssh-server

3. 接下来启动 SSH 服务并设置自启动

sudo service ssh start sudo systemctl enable ssh

4.然后查看IP地址

hostname -I

这里我的IP地址为192.168.1.15

树莓派和电脑连同一个wifi

Windows操作:

通过win+r打开cmd进行测试,检查Windows是否能ping通

ping通后就可以复制文件了

# 复制 Windows 文件到 Linux
scp D:data1.txt twelve@192.168.1.15:/home/twelve
# 复制 Windows 目录到 Linux(记得加 -r)
scp -r D:data twelve@192.168.1.15:/home/twelve
 
# 复制 Linux 文件到 Windows
scp twelve@192.168.1.15:/home/twelve/1.txt D:data
# 复制 Linux 目录到 Windows(记得加 -r)
scp -r twelve@192.168.1.15:/home/twelve D:data

这里文件路径可以直接复制粘贴,注意目的地址需要加上用户名 + @IP地址 + : + 目的地址

如果scp: /home/twelve/wheeltec_ros2//src: Permission denied

说明你要粘贴的目的地址有权限,你需要修改文件权限才可以,如果没有什么秘密的话,可以直接使用

sudo chmod 777 文件名

将文件设为可读可写可执行,全部用户


如果ssh: connect to host 192.168.76.130 port 22: Connection timed out

可能是目标的防火墙阻止了,可以

sudo ufw status

sudo ufw allow 22/tcp # 若未放行,执行此命令

这个好像传文件少的时候比较好,文件数一多就会丢东西,我传个二百多兆的文件夹到树莓派变七十多了:)

  参考文章:

通过ssh协议实现Windows与Linux之间的文件互传_ssh传输文件 windows到linux-CSDN博客

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。