工欲善其事,必先利其器,使用开发板之前搭建好一个易用的Linux平台,将会使后续的开发工作事半功倍。
前一章已经介绍了系统烧录、基础配置、VNC登录、免密sudo、等基础Linux使用操作,本章将从系统更新(apt)、Samba文件传输、SSH文件传输、SSH免密登录等角度简单介绍旭日X3派的进阶使用和配置,为代码文件传输提供多种方式。

Part 1 软件更新(apt)
Linux中存在着完备的软件包管理机制,可以使用apt命令更新系统中安装的软件,apt命令类似于手机中的“应用商店”功能,可以搜索需要的软件包并安装或更新。一般apt需要sudo执行,常用的apt命令如下(root用户下不需要前缀sudo):

sudo apt update #更新软件包列表
sudo apt upgrate #更新安装的所有可以更新的软件包,一般先执行update之后再执行此命令
sudo apt search <软件名> #列出软件包列表中符合名字的软件
sudo apt install <软件名> #安装指定软件
sudo apt remove <软件名>#卸载指定软件,但不清理配置
sudo apt purge <软件名>#卸载指定软件,并清理配置
sudo apt auroremove <软件名>#卸载系统中“孤立的包”(不再被需要的软件依赖)

Tips:初次使用旭日X3派时,建议用下列指令更新系统中的软件包列表及软件包:

sudo apt update
sudo apt upgrate

日常使用中也可以时常更新,保持软件包最新。

Part 2 Samba文件传输
SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,借助Samba可以将旭日X3派变成PC机的“网上邻居”,实现高效文件传输和磁盘映射。

Step 1:安装Samba软件
官方镜像中默认没有安装Samba软件,此时就需要我们使用前文中的apt命令安装Samba软件:

sudo apt install samba

Step 2:创建Samba用户
安装完Samba之后,需要为Samba软件设置用户,理论上可以任意设置用户名和密码。
为了方便起见,我们设置用户名密码与sunrise用户相同,但这可能会增加安全风险,请勿在正式的Linux应用中将Samba账户与Linux账户配置的完全相同。

sudo smbpasswd -a sunrise

密码输入时不会显示密码内容:

Step 3:修改Samba配置文件
输入下列命令修改Samba配置文件

sudo vim /etc/samba/smb.conf

关于Vim的使用可以参考Part4】使用Vim时同样需要按下键盘的“i”按键才能进入编辑模式,在编辑模式下可以在文件末尾追加下列内容(建议删除#开头的内容):

#虚拟文件名为sunrise
[sunrise]
        #文件夹注释
        comment = Root Dir of sunrise 
        #实际文件夹路径
        path = /home/sunrise 
        #关闭只读模式
        read only = no 
       #文件模式为777(开启全部权限)
        create mask = 777 
        #不可访客登录
        guest ok = no 
        #可以看到
        browseable = yes 
        security = share 
        usershare owner only =false 

Step 4:重启Samba服务
命令行中输入下列命令即可重启Samba服务

sudo service samba-ad-dc restart

Step 5:查看并验证服务效果
配置完成后,我们可以从「此电脑」的地址栏输入下列内容实现对指定地址的访问

\\<IP地址>

首次登录会要求输入账号密码,此处按照前文Step2的账号密码输入即可。

登录后可以看到Samba中共享的文件夹(目前只有名为sunrise的用户根目录)

双击打开即可看到与Linux下相同的文件目录

Part 3 SSH文件传输
前文中的Samba服务,提供了一种在局域网内传输文件的方式,但此种方式一般用于局域网内,如果PC与旭日派不在同一网段内,则基本上无法传输文件。
下面将简单介绍一种基于SSH传输文件的方式,只要用户可以通过SSH连接命令行,便可无限制地传输文件。
本小节主要用到的命令是scp(secure copy,安全拷贝),主要参数形式如下:

scp <参数> <本地文件名> <远程用户名>@<IP地址>:<文件名>
#从本地复制文件到旭日派,例如:
scp -P 22 C:\Note.txt sunrise@192.168.3.153:/home/sunrise/Note.txt

scp <参数> <远程用户名>@<IP地址>:<文件名> <本地文件名> 
#从旭日派复制文件到本地,例如:
scp -P 22 sunrise@192.168.3.153:/home/sunrise/Note.txt C:\Note.txt

命令中常用的可选的参数如下:
-v 显示进度,用来查看连接,认证,或是配置错误。
-P <端口> 选择远程端口
-r 递归拷贝整个文件夹(包含子文件夹)

Part 3B SSH文件传输(使用图形化界面)

上半节为命令行实现,不够直观明了,故笔者推荐初学者使用WinSCP等软件的图形化界面进行拷贝,不仅方便易用,还支持断点续传和多文件同时传输功能。
WinSCP下载链接:https://winscp.net/eng/index.php 
WinSCP的安装极为简单,用户选择默认配置即可使用,安装完成并开启后,默认进入连接界面,如下图所示:

输入主机名(你自己的旭日派IP地址)及用户名密码(默认均为sunrise)后,可以点击保存按钮保存账号密码(建议勾选“保存密码选项”

保存完成后可以从左侧选择站点,点击登录即可自动连接。(第一次连接可能会出现密钥确认界面,确认无误后点击“确定”即可打开传输界面)

传输页面左侧为本地目录,右侧为旭日派的sunrise目录,点击上方地址栏即可切换路径。
用户也可以直接从外部(例如桌面)拖拽文件进入WinSCP窗口,快速上传文件;也可以直接将旭日派的文件拖曳到外部,快速下载文件。

Tips:WinSCP默认为单文件前台传输,如果想获得更快的传输速度,可以在顶部菜单栏的「选项->选项->传输->后台」中设置最大传输数量,并勾选“默认后台传输”,如下图所示。

此外,WinSCP会自动检查更新并在启动时提醒用户,如果不需要此功能,可以在「选项->选项->更新」选项卡中配置即可。

Part 4 SSH免密登录
SSH登录存在2种常见的身份验证方式:密码、密钥。
前文中每一次登录或者传输文件,我们都需要输入密码才能通过SSH登录旭日派X3,非常的费手,不仅如此,每次使用密码登录SSH,都可能会增加密码泄露的风险。
因此,为了用户身心健康,我们有必要借助SSH的密钥登录机制,减少密码输入次数,维护手部健康。
关于密钥登录的详细内容,可以参考:
https://blog.csdn.net/m0_52165864/article/details/126065349 
下面我们将简单概括,如何使用Win10电脑生成密钥,并设置ssh免密登录。
Step 1:打开Windose电脑的命令行(并非旭日派X3命令行),输入“ssh-keygen -t rsa”

ssh-keygen -t rsa

对于提示的口令等内容,均保持默认即可,如果是第一次生成密钥,则会提示如下内容:

如果并非第一次生成密钥,可能会提示如下内容(已经存在密钥,询问是否覆盖):

此时用户可以根据自己的需求,选择覆盖(生成新密钥);或者跳过本步骤,使用旧密钥实现免密登录。
Step 2:进入命令行中显示的密钥生成地址
如前文中命令行提示的
Your public key has been saved in C:\Users\Yuki/.ssh/id_rsa.pub.
则打开下列文件夹即可
C:\Users\Yuki/.ssh/
不同电脑的生成路径不同,一般遵循下列规则,建议从命令行复制后,在文件管理器的地址栏输入即可直接访问。
C:\Users\<你的电脑用户名>/.ssh/ 
Step 3:打开公钥文件「id_rsa.pub」
双击公钥文件,选择「记事本」打开,可以得到一串公钥

Step 4:复制公钥内容至旭日X3派
首先连接到旭日X3派的命令行界面,之后输入

mkdir ~/.ssh

创建用于存储用户SSH配置的.ssh文件夹。
之后使用Vim创建密钥存储文件:

vim ~/.ssh/authorized_keys

此时会进入Vim编辑界面,按下键盘上的“i”按键进入编辑模式

将「id_rsa.pub」中生成的密钥,全部复制到authorized_keys文件中

之后,按下键盘上的“ESC”按键,退回至命令模式,之后输入「:wq」保存公钥内容
Step 5:Win10免密登录测试
重新打开一个命令行界面,输入ssh连接命令,如果成功,则会出现密钥指纹确认提示。
确认无误输入yes后,即可自动进入linux命令行。

密钥指纹仅会在更改密钥时确认1次,如果后续再次出现密钥指纹确认提示,请检查是否存在IP变更或是否存在网络攻击。

Tips:密钥文件(「id_rsa.pub」和「id_rsa」)跟密码一样珍贵,请妥善保存,不要外泄!!!!