9. 文件传输

9.1. SSH文件传输

SSH文件传输支持SCP和SFTP两种协议:

  • SCP是Secure Copy的缩写,是一种在Linux下用来进行远程拷贝文件的命令。

  • SFTP是SSH File Transfer Protocol的缩写,是一种安全的文件传输协议。

注解

SSH文件传输需要先获取板卡的IP地址。IP地址获取可以参考网络获取章节

9.1.1. SCP

SCP (Secure Copy) 是一个在 Linux 下用来进行远程拷贝文件的命令。 推荐Linux系统和板卡之间的文件传输使用

SCP 命令的基本格式如下:

scp [参数] [源文件] [目标文件]

其中,参数可以是以下选项之一:

  • -r:递归复制整个目录。

  • -p:保留源文件的修改时间和访问时间。

  • -P:指定远程主机的端口号。默认端口号是 22。

假设我的板卡的ip地址 192.168.137.100

例如,将Linux PC虚拟机中的文件 file.txt 复制到板卡 的 /root/ 目录下,可以使用以下命令:

# 将文件 file.txt 复制到板卡的 /root/ 目录下
scp file.txt root@192.168.137.100:/root/
# 将文件夹 dir 复制到板卡的 /root/ 目录下
scp -r dir root@192.168.137.100:/root/
  • 除了能将文件从本地复制到远程主机,SCP 还可以将文件从远程主机复制到本地主机。

# 将板卡的 /root/file.txt 复制到 Linux PC 虚拟机的 /home/ 目录下
scp root@192.168.137.100:/root/file.txt /home/
# 将板卡的 /root/dir 目录复制到 Linux PC 虚拟机的 /home/ 目录下
scp -r root@192.168.137.100:/root/dir /home/

传输的时候需要输入密码,输入板卡的密码即可。

9.1.2. SFTP

SFTP (SSH File Transfer Protocol) 是一个安全的文件传输协议,可以在本地和远程系统之间传输文件。 推荐Windows系统和板卡之间的文件传输使用

SFTP传输软件有很多,例如 FileZillaWinSCP 等。这里以 FileZilla 为例。

  1. 下载 FileZilla 客户端软件,下载地址:https://filezilla-project.org/download.php?type=client

  2. 安装 FileZilla 客户端软件

  3. 打开 FileZilla 客户端软件,点击 文件 -> 站点管理器 -> 新站点,选择SFTP协议,填写板卡的IP地址、用户名、密码、端口号等信息,点击 连接 即可连接到板卡。

filezara_1
  1. 连接成功即可看到下面内容

filezara_2
  1. 双击文件即可对文件进行上传和下载

9.2. TF卡文件传输

使用TF卡插入板卡后,板卡会自动挂载TF卡,挂载到 /mnt/sdcard 目录下。

然后就可以通过 cp 命令或者 mv 命令进行文件的复制和移动。

9.3. u盘文件传输

  • 使用u盘时,需要把拨码开关拨到 1 的位置

  • 插入u盘后可以看到系统会识别到u盘,u盘不会自动挂载,需要自己手动挂载

[   82.696591] usb 1-1.1: new high-speed USB device number 9 using xhci-hcd
[   82.808823] usb 1-1.1: New USB device found, idVendor=090c, idProduct=1000, bcdDevice=11.00
[   82.808896] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[   82.808923] usb 1-1.1: Product: LanKxin USB 3.1
[   82.808946] usb 1-1.1: Manufacturer: LanKxin
[   82.808970] usb 1-1.1: SerialNumber: LKX-2114E2LQK4
[   82.815882] usb-storage 1-1.1:1.0: USB Mass Storage device detected
[   82.819982] scsi host0: usb-storage 1-1.1:1.0
[   84.028046] scsi 0:0:0:0: Direct-Access     LanKxin  LanKxin USB 3.1  1100 PQ: 0 ANSI: 6
[   84.035715] sd 0:0:0:0: Attached scsi generic sg0 type 0
[   84.038041] sd 0:0:0:0: [sda] 60948480 512-byte logical blocks: (31.2 GB/29.1 GiB)
[   84.039482] sd 0:0:0:0: [sda] Write Protect is off
[   84.041005] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[   84.054603]  sda: sda1
[   84.059363] sd 0:0:0:0: [sda] Attached SCSI removable disk
  • 可以看到u盘的设备名为 sda ,分区名为 sda1

手动挂载u盘命令:

mkdir -p /mnt/usb
mount /dev/sda1 /mnt/usb
# ls /mnt/usb/
01.h264
1.flac
1.mp3
1.wav
2.mp3