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:\data\1.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博客