[Linux]从零开始的泰山派系统安装与远程教程

一、前言

        泰山派买回来也有一阵子了,最近慢慢开始研究。当然,学习这种Linux的开发板的第一步就是安装系统,对于RK系列的芯片系统安装有专门的软件,所有在系统安装方面比较简单。更多的还是我们应该怎么去编译系统,这一次,我们就从泰山派系统的编译,系统的安装以及没有显示器应该如何远程几个方面为大家讲解一下泰山派。这次的教程我们会涉及到Linux和安卓系统的安装和远程,我们也会使用到官方提供的烧录工具和远程工具。

二、需要准备什么?

        这次我们的教程主要是针对2+16G的泰山派,1+0版本的需要将系统装在内存卡里,这里因为硬件不允许所以1+0版本的泰山派我们不作演示,综上所述我们需要准备一个2+16G的泰山派。在有了泰山派以后,最好再去下载一份嘉立创官方给的泰山派的资料,资料中包含了我们本次会用到的所有文件都包含在嘉立创给出的资料中。资料占用的空间非常大,如果硬盘空间或者网络不允许的小伙伴可以下载我给出的资料,我的资料也包含了本次会用到的必要资料。大家打开网盘下载即可:

泰山派部分资料:通过百度网盘分享的文件:泰山派:https://pan.baidu.com/s/1dCxIfWpQA2XUt8hHYE5Azg?pwd=clxm 
提取码:clxm
复制这段内容打开「百度网盘APP 即可获取」

三、系统的编译

        编译系统我们需要在Linux的环境进行,并且需要16G以上的内存以及500G以上的硬盘空间,如果你的电脑不能满足你这样做,我的建议是使用已经编译好的系统。在上面给出的资料中和嘉立创官方资料中都可以找到已经编译好的系统。如果你没有Linux的环境,可以看下面的文章,下面的文章会教你如何在物理机和虚拟机中安装Ubuntu,当然这两个你选择一个即可:

在物理机安装Ubuntu:[Linux]如何在物理机安装Ubuntu(小白向)-CSDN博客

在虚拟机安装Ubuntu:[Linux]如何在虚拟机安装Ubuntu?(小白向)_linux虚拟机装乌班图-CSDN博客

当我们有了Linux的环境以后,我们就可以开始准备编译了。

我们可以打开嘉立创给的泰山派相关资料,我们可以看到嘉立创官方资料中的“系统SDK”文件夹:

4ce4f2c712e94115860c23655ffa9b1c.png

进入这个文件夹我们就能看到“linux”和“Andoroid”文件夹:

11159f643a4149b180b155b986151634.png

这两种系统的编译我们都会演示,当然,编译安卓的性能要求要高于Linux。

如果你没有下载嘉立创官方的SDK,而是下载的我给的资料可以打开资料中的系统SDK文件夹,这里Linux和Android的SDK各有一个:

4af56f5b55d44ca9a2a4fe623300daba.png

1.Linux系统的编译:

        在编译之前,请确保自己已经配置好了Ubuntu的环境,不管是物理机还是虚拟机,总之要有这个环境,下面我使用虚拟机进行演示,我这里使用的Ubuntu的系统版本为18.04,如果你是小白,我强烈建议你的Ubuntu版本和我一样,哪怕你使用20.04都可能出现你不能解决的报错,所以,强烈建议你使用和我一样的Ubuntu版本。虚拟机配置如下:

f673e57c31c04f42a6d920bc3a8c7aee.png

如果你有条件的话请尽量采取和我一样的配置。

这里可以看到,我们的Ubuntu18.04的虚拟机已经启动了:

3066b6ca99684c4185bea70fa5fe7822.png

下面我们需要将SDK文件上传到虚拟机中,我这里推荐使用samba服务,如果你会使用sftp当然也行。如果你还不会安装samba,可以看下面的帖子:

sanba的安装与配置:[Linux]在Ubuntu中安装samba并且正确配置(详细)_ubuntu 配置samba-CSDN博客

不管你使用哪种方法,总之需要你将泰山派的SDK文件复制到虚拟机中,如图:

ccc5999694d445e7a4c6427ab1752dee.png

我们使用下面的命令解压SDK,这里一定要加上sudo不然可能会报错:

sudo tar -xzvf ./tspi_linux_sdk_20230916.tar.gz

解压可能要解压很久,请大家耐心等待:

a301fa03bcb449d29afdbdd5b7b4425f.png

ecb3cc3d731d46d9bd572f0e4e66bf4b.png

现在这样就已经是解压完了,如果你在解压的过程中出现错误,请把解压的文件删除后重新解压:

63592e8d22024b9180af2307a0719474.png

解压完成以后,我们就可以准备编译了。

解压完成以后得到以下文件夹:

7ebe6e45666c458f8fad7a9be4f2953b.png

我们使用下面的命令来安装编译所需的环境:

sudo apt-get install git ssh make gcc libssl-dev liblz4-tool expect \
g++ patchelf chrpath gawk texinfo chrpath diffstat binfmt-support \
qemu-user-static live-build bison flex fakeroot cmake gcc-multilib \
g++-multilib unzip device-tree-compiler ncurses-dev

这里直接复制粘贴即可:

ab65eae20db846d1b94792bbd87266ac.png

回车执行:

dc5b4412bbfe493faf6f41885f1f4c7c.png

696753f5c8034348a4d93ae6a6c161a2.png

下面我们要设置SDK文件夹的权限,因为我们一开始是使用root解压的,所以这些文件都属于root,我们需要设置这些文件的权限让所有用户都可以访问,后面编译我们是使用普通用户进行:

sudo chmod 777 -R ./Release/

我们将SDK文件夹的权限设置完成以后就可以进入这个文件夹了:

cd Release/

在进入SDK文件夹以后,确保自己的目录下有这些文件:

e4e23d4927764fda808d198f8bbd077b.png

运行下面的命令进行配置:

sudo ./build.sh device/rockchip/rk356x/BoardConfig-rk3566-tspi-v10.mk

0e6ec899db4a4ac79ebd812cd1c26dba.png在这里配置完成以后我们添加一条环境变量,使用下面的命令,注意这里不用加sudo:

export RK_ROOTFS_SYSTEM=buildroot

在做完以上的步骤以后,就可以开始编译了,注意在编译之前请确定你已经完整的执行的上面的所有命令并且没有出错。我们在SDK的文件夹下输入以下命令进行编译,注意这里不用加sudo,注意是不加:

./build.sh all 

输入命令以后,就开始编译了:

8394361318b44344bee334e0edbfd285.png

这里需要等以下,一会儿会让我们配置电源:

f7f6caa2ee6f43878bac26d0c150dc57.png

当出现下面的页面以后,就表示电源配置了,大家配置得跟我一样即可,如果这里随便配的话,后面就会有报错,所以请跟我相同配置:

e9f9ba544bb84595b49bf4af6bf066a6.png

f53d2e838171464bbcd80ce07effe8f0.png

157d9ab5a5d6484cbee31b5eab4fe094.png

688bf049f0714a7ebe2753c7afbb6361.png

e34a8e9154ba414bbdbbab29ea183203.png

32a0fc03460b42899749ceb9d73182c6.png

cb2ba1c5bf1b432d8cecf903e3fcf997.png

在最后这个选项以后回车过后这个窗口就会关闭,然后继续进入到编译中/:

55f1d61c33e14b5c875f585c05aa7523.png

编译的过程是非常漫长的。大家耐心等待,如果你的Ubuntu版本和我一样,中途大概率是没有错误的。编译可能需要好几个小时,根据自己电脑性能而定,等待编译完成吧!

出现下面的提示就表示已经编译成功了:

7458557aaf06461092a08fe53d242216.png

虽然编译成功了,但是我们还要进行固件打包,运行下面的命令:

./mkfirmware.sh

edaf47f2adc74c74b1e91a6457929a33.png

在固件打包以后,镜像文件被生成在了SDK目录下的“rockdev”目录下:

a732a22e7c8044f195b8274022dbe2cb.png

使用下面的命令将镜像打包成一个文件:

./build.sh updateimg

打包后,镜像仍然被保存在“rockdev”目录下。是一个名为“update.img”的文件:

859e40ca3c1c4f0099ceb3f3b95b03fd.png
在后面烧录时,可以直接烧录这个update.img文件,但是不推荐,这个系统虽然可以运行,但是很多功能不具备。

2.Android的编译

        下面我们来编译Android系统,安卓系统的编译比起Linux性能要求要高很多,大家尽量将虚拟机内存调整到18G以上,CPU的性能可以差,大不了就是编译慢,如果内存太小的话就会直接报错。这里磁盘大小设置为600G。下面是我虚拟机的配置:

2249d12f99e64d2e801937cf835196c7.png

我们同样需要使用一些文件传输服务将Android的SDK传到虚拟机中,如图:

f026ff40074c4e7c8a2295158e09af66.png

使用下面的命令解压SDK文件,这里大家将用户切换到root,一点要切换,后面的图片我没使用root操作,这是错误的。从解压文件这一步开始后面的步骤都要将用户切换到root,后面的操作都要使用root用户进行:

tar -xzvf ./tspi_android_sdk_20230909.tar.gz

5a63178948df4825bce3936cae781b3e.png

解压过程比较久,大家耐心等待。

这里解压就已经完成了:

34378253be86430d9289d4179ae5956d.png

我们可以看到解压出来的目录:

ff42944d234046a49d2a8fe3e52a8a2e.png

使用下面的命令进入这个目录:

cd tspi_android_sdk_20230909/

进入目录以后,我们使用下面的命令安装编译所需的环境,注意,这里的命令是一条命令,直接复制粘贴执行即可,注意这里要是root,之前也提到了,从解压开始的操作都要使用root:

apt-get update && apt-get install -y git python make openjdk-8-jdk git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libgl1-mesa-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev libxml2-utils xsltproc unzip python bc imagemagick ccache schedtool libssl-dev libncursesw5-dbg libncursesw5-dev libncurses5 libncursesw5 libncursesada5-dev libncurses5-dbg libncurses5-dev libncursesada-doc libncursesada5 libncurses-dev libncurses-gst libncurses5-dev clang

70e170a7532c41f08615c41905c51de1.png

安装的过程也是非常漫长,大家耐心等待。安装完成以后,我们就可以进行下一步了。

在正式开始编译之前,我们还需要修改交换分区的大小,注意,这里必须修改交换分区的的大小,不然一定会报错。

这里修改交换分区的大小大家可以参考下面的文章:

修改交换分区:在Linux下禁用、添加|修改Swap分区(虚拟内存)教程_禁用swap-CSDN博客

这里我就不多说了,大家一定要查到自己的交换分区修改成功了才能开始编译:

f25d0dfe98824c2aa659dfcaac4b4c05.png

我们使用下面的命令进行SDK的编译,这里的命令是一整条命令,直接复制,粘贴,执行即可。这里执行是在SDK目录下执行:

cd u-boot && ./make.sh rk3566 && cd ../kernel && make clean && make distclean && make ARCH=arm64 tspi_defconfig rk356x_evb.config android-11.config && make ARCH=arm64 tspi-rk3566-user-v10.img -j16 && cd .. && source build/envsetup.sh && lunch rk3566_tspi-userdebug && make installclean -j16 && make -j16 && ./mkimage.sh

fb0b70c77d2043f1a897d99e6e5dd89f.png

1a9a8532d18f4d2ab500e7ed89108519.png

这里的编译过程非常漫长,大家耐心等待。

ba67173714b24b008635eea66bf8a725.png

根据上图我们可以看到,这里已经编译成功了。如果你在编译中途遇到错误,请先检查环境,其次再检查交换分区是否修改成功。

在编译完成以后,我们编译的镜像被存放在了SDK目录下的“rockdev/Image-rk3566_tspi”目录下:

4a7fc2161f2a43b3b8c003fd0d2ea580.png

我们在SDK目录下使用下面的命令来将这些镜像打包成一个镜像文件:

 ./build.sh -u

66abf6481794441eb87d61acee1d13e4.png

在执行完成以后,我们的镜像同样会被生成在SDK目录下的“rockdev/Image-rk3566_tspi”目录下:

26f4d06932c84f49b057f3a60cd53840.png

这个目录下的“update.img”文件就是打包好的镜像文件了。

至此,我们安卓系统的编译就结束了!

四、系统的安装

        在系统被编译好以后,我们就可以开始准备安装了,当然,如果你的电脑条件不允许你编译系统,你也可以直接使用嘉立创官方资料中的系统。打开嘉立创给的泰山派资料,看到“系统镜像”文件夹:

beb49367704a43e4879008fa40ca2f0a.png

进入以后可以看到许多种类的系统镜像:

14905339831a47d2a464e7648331c419.png

假如我们想安装Ubuntu的系统,我们就点击Ubuntu的文件夹:

324420e666424c179283890f82a9d6f0.png

我们可以看到这个img为后缀的文件就是系统镜像文件。

我们再看到安卓:

c8f8973e69ee4f948c87114d20db977b.png

我们可以看到安卓的系统针对不同的屏幕接口各编译了一套系统。大家可以根据自己的屏幕情况安装对应的系统,当然,如果你没有屏幕我们也有对应的远程方案。

在我给的资料中有部分的系统镜像,如图:

fc4f712417e04f1ca600af1812410893.png

也是为了保证通用性,这里的镜像我选择的都是hdmi版本的。不管你选择什么镜像道理都是一样的。有了镜像以后我们就可以准备下载了。

下面我们打开用于给泰山派下载镜像的软件,如果你下载的是嘉立创的官方资料,那么软件被放在了“开发工具”中:

c9d33d5fed8b47ebb3c0ba8144138221.png

进入以后我们可以看到这里有非常多的工具:

3f3006be0c1f4f0f9e76c62905740be6.png

如果你使用的是我给的资料,要使用到的文件被我放在了资料文件夹下的“软件工具中”:

4056014ad43b4cc089ddc479374f4b5e.png

这里我没做什么特殊处理,直接将嘉立创给的软件都复制过来了。

下载镜像我们需要用到这里面的两个压缩包,分别是“DriverAssitant_v5.11.zip”和“RKDevTool_Release_v2.86.zip”。这里的“DriverAssitant_v5.11.zip”是RK芯片的驱动程序,只有安装了这款芯片的驱动,我们的电脑才能够识别到RK芯片。“RKDevTool_Release_v2.86.zip”就是我们用来下载程序的了。我们可以在这个目录或者别的目录新建一个文件夹,将压缩包放进去再解压,请不要直接就在软件目录解压,这样压缩包会炸开。

我这里为了方便就在桌面新建名为“DriverAssitant_v5.11”的文件夹:

7b73b950fd9645ab8e53c724f58623a2.png

然后将“DriverAssitant_v5.11.zip”复制进去。这里出于对资料完整性的考虑。建议大家不要在资料文件夹中直接新建文件或文件夹。尽量采用将资料复制到别的地方使用的形式。下面我们复制“DriverAssitant_v5.11.zip”:

faa7140932614a46b088d7995cf093e2.png解压得到以下文件夹:

b077de2ca2db467f8fc5729d6cfd1ef6.png

进入这个文件夹,我们可以看到“DriverInstall.exe”程序就是我们RK芯片的驱动安装程序:

910e6978486c405391097913aeb32ba7.png

我们启动这个程序,我们可以看到以下窗口:

44fdf48b11504842956c6d67a117d2bc.png

不管你以前有没有安装过,这里都点击“驱动卸载”:

b26485d9d5214a41835037a68cc40b73.png

150b6168d02444fd967c68c65d042794.png

这里提示卸载成功以后,我们再点击“驱动安装”:

aae27681719a498aac8ba6f4414830e9.png

e9212ebff48749e68723d34c71d428d6.png

这里可以看到驱动已经安装成功了,这样我们就可以直接关掉这个驱动安装软件了。

下面我们准备打开系统烧写软件,我们同样先新建一个文件夹,将“RKDevTool_Release_v2.86.zip”压缩包复制到其中:

2295c0b04bf5499a92cf3005b3d40d12.png

089826501b5e43638739237fc242ca27.png

我们现在将这个压缩包解压,得到以下文件:

6e46b047afa64fe5b149fb02dcb6da25.png

我们点击“RKDevTool.exe”启动我们的烧写工具:

429b412a1b5e47859d998dd0ccc134cd.png

我们可以看到这里提示没有找到设备:

bcc3dd4a28f249838cba05e14cfbd73c.png

打开这个软件以后,我们就可以使用一条USB线一头接电脑,另一头接在泰山派的type-c接口上。

接口如图:

cc348bcb5c544d249296a24aa90e2599.png

在连接电脑以后,我们可以看到靠近type-c的接口的灯常亮,偏向右边的灯被渐变点亮,这就是正常的状态,如果你在连接电脑以后没有灯闪烁,那你就要考虑以下是不是USB线的问题,尝试更换USB线。

当你将泰山派连接到电脑以后,下载软件这边应该是不会有反应的:

24bd4f1e5e5d46c8be7b23d589c36708.png

当然,如果你看到了跟我一样的“发现一个ADB设备”这说明泰山派里面的系统正在运行,你的开发板是正常的。

我们现在准备进入开发板的程序下载模式,我们注意开发板上的“REC”和“RST”键:

65e32393ddc54ebdbd4e4190f67cabed.png

记得是在上电以后,我们一直按住“REC”键,随后按下“RES”键。“REC”键按下就可以松开,我们按下“RST”后“REC”不松,直到看到我们的软件中出现“发现一个LOADER设备”:

46a6eb483fb24edfb1f6993aebaab349.png

这个过程可能比较久,特别是在你松开“RST”以后,“REC”一直都不能松开,直到出现上图中的字样。这个过程可能需要看个人的感觉。如果你不能成功,请严格按照上面我说的再试一次。

当程序烧录软件发现LOADER设备以后,我们可以开始烧录了。我们点击软件的“升级固件”:

c9f69f906a184f6f8f30bb756549e82b.png

随后我们点击“固件”:

737445c3654f444f957c0d426794645a.png

我们将我们一开始准备好的固件选择进来,不管是Linux还是Android都可以使用这种方式:

22a726a816cf4ec88f898d8fb8399716.png

选择了固件以后,我们软件会使用一点时间来加载固件,大家耐心等一下:

926ff35ea46e40ab9f8afa1b11b6def6.png

固件加载进来以后,我们这里就出现了我们这个镜像的信息和loader的版本:

2882804d545144a59b71d2ce97f26b83.png

随后我们点击“升级”:

05441542561f49929866e12ee104cf9b.png

点击了升级以后,我们右边就有提示了:50e817e6e60c4236a8ca8df03996089e.png

我们等待这里的百分比走完:

fbb816bd93ff4cb6b7a71902f9ae9a92.png

在下载过程中,大家尽量不要动泰山派的连接线,也不要在正在下载程序时拔掉下载线,这样可能会导致下载失败甚至开发板不能使用,虽说有办法可以修复,但是会浪费我们的时间。

我们这里可以看到,固件烧录已经成功了,不管是Linux还是Android都可以使用这种烧录方式进行烧录:

3126809585d24b7dba614a423cde8952.png

如果你有HDMI接口的显示器,使用购买泰山派时赠送的转接头就可以接上显示器直接使用了。如果你像我一样,HDMI的接口坏了或者你没有HDMI的显示器也不要慌,我们有远程的方案提供给大家。

五、Linux以及Android的远程教程

        来到这个位置的小伙伴多半是没有显示器或者泰山派的HDMI接口已经损坏,当然,我们现在也有比较成熟的远程方案。不管是Linux还是Android我们都可以使用远程来解决无法直接观看屏幕的问题。下面我们分情况进行讲解,两种系统都会涉及到:

1.Linux的远程配置

        既然你已经给你的开发板刷入了Linux系统,说明你想学习Linux或者已经是Linux的开发者了。这里的教程可能需要你具有一定的Linux基础并且还需要有一定的硬件基础。当然,我们这里的操作都不难,下面让我们开始吧!

因为没有显示器,我们不能配置泰山派的网络,所以不能直接使用ssh。我们唯一能够操作泰山派的接口就是串口,下面我们要使用串口来操控泰山派的终端。

首先你需要一个USB转TTL的模块,这里我使用的是CH340,你也可以使用别的协议芯片:

7b675f41a8514505a4c35ca485e9d053.png

这里串口的驱动安装我就不多说了,还请大家自己研究。总的来说,你需要一个USB转TTL芯片并且安装对应的驱动使其能够找到串口。

下面需要找出在购买泰山派时送的串口转接线,也就是这根线:

2595f6dff89e4a2e8d18a69e8e02c966.png

我们需要将这根线连接到泰山派的串口上,如图中所示:

7bf8624a72324ccdb059a5e14f6fb613.png

这里的V表示VCC也就是电源,这里的G表示GND也就是接地。R表示RX表示接收,这里的接收我们要接到CH340的发送也就是TX。T表示TX表示发送,这里的发送要接到CH340的接收也就是RX。

我们将准备的转接线接入泰山派,另一头按照描述接线:

f23411c1c78e45888ee4dc6987ac48a8.png

在接好这一部分确定没有问题以后,就可以将CH340接在电脑上了。随后我们使用USB线给泰山派供电。

在电脑识别到串口以后,我们就可以进行下一步了:

cc977ee7e0ab4081833666e2fac5a4a9.png

我这里是串口3,大家自行查询CH340对应的串口号。

下面我们需要打开一个终端工具,这里我使用的是“WindTerm”是一个开源的远程工具,能够使用串口进行终端控制。下面我也会使用“WindTerm.exe”进行演示,大家当然也可以用自己的远程工具,只要工具具有串口远程功能就行。下面是“WindTerm”的开源地址:

WindTerm:GitHub - kingToolbox/WindTerm: A professional cross-platform SSH/Sftp/Shell/Telnet/Serial terminal.

当然,如果你下载了我给的资料,我的给的资料中也有这个软件。打开资料文件夹下的“远程软件”文件夹,如图:

f1a715f5e02843e5a2fe81f610668b9a.png

大家解压以后就可以直接打开远程软件使用。我这里就不演示了。

我们打开软件以后点击“会话”:

04c4a0a0fae64509929f3613801830e6.png

随后点击“新建会话”:

58b54cb6a25e48f1867a66e3c745d441.png

因为我们这里要使用串口访问泰山派的终端,我们这里点击“Serial”:

4f952fc1a4034196b575b8647839c34a.png

我们首先要将这里的串口修改为我们接到泰山派上的那个串口,我这里是串口3:

4d58b8f0b98341dea4a826cdf08d2f3f.png

这里的数据改为“text”:

a3b476a5b6a04103b00ed04e95054a27.png

随后我们点击“协议”:

f7596348478a48c9a168f1ee5355f7bb.png

这里的“波特率”我们选择自定义:

912dfbe5f64d4ff483b3e8f54b1da7b0.png

这里我们将“波特率”自定义为“1500000”,注意这里是5个0:

37c496ca800745e29c57dd252860ac76.png

随后我们点击右下角的“连接”,出现下面这样就表示连接成功了:

113fea92031d4f5c87d9d8db71b2683d.png

如果你在这一步连接失败了。首先检查CH340和泰山派是否连接正确。如果连接正确就去检查CH340的驱动有没有问题。如果这些都没有问题的话,将原本的连接关掉重新创建连接。创建连接时检查波特率设置是不是正确。当你完成了连接以后就可以进行下一步了。

当我们使用串口成功进入泰山派的终端以后,我们就可以开始配置远程了。当然,我们要远程,我们首先还是要让泰山派连接网络。下面我们就来配置泰山派的网络。

另外这里提以下,使用串口进入终端默认就是root不需要输入任何的账号密码,终端会时不时打印出日志大家不用管,后面会教大家怎么关日志,现在操作多回车几次即可:

cd7828b4e1b44f3d855f7c4c4f3de507.png

我们输入下面的命令来配置日志等级:

dmesg -n 3

这里我们临时将日志等级改为3,在这个等级只有错误和警告才会在串口输出。输入这条命令以后,就不会输出日志了:

d8aaf73fe14e40b78f70c3bb91871937.png

现在我们就可以开始配置泰山派的网络了。

下面我们会使用“NetworkManager”服务来配置网络。输入下面的命令来检查网卡状态:

nmcli device status

我们可以看到这里的网卡是没有连接网络的

79bc1106d3d549b9b4358a794f47fc46.png

下面我们打开“NetworkManager”的配置文件。因为我们现在是没有连接网络的状态,所以我们这里是不能使用网络来安装nano的,目前我们能使用的文本编辑器就只有vim了。没办法,虽然难用,但是我们已经没有别的办法了。使用下面的代码打开“NetworkManager”的配置文件:

vim  /etc/wpa_supplicant/wpa_supplicant.conf      

下面跟着我操作就不会错,注意屏幕上的文字。第一次进来是这样的,这是位于我vim的普通模式:

1deae81b539a4b438380aee71b0c13ac.png

下面我们在这个界面按下i进入vim的插入模式:

711e498c320849cb9d6c3d31f82b6240.png

当你按了i以后下面的文字会有变化,这里的“INSERT”就表示到插入模式了。

我们在插入模式下将下面的代码复制到文件中。这里需要注意,只要是在终端操作,都不要使用“ctrl+c”或者“ctrl+v”等快捷键。一律右键复制,右键粘贴:

network={ssid="ACE3"psk="123456789"key_mgmt=WPA-PSK
}

8d72dfdefac34d81870787c3f68b4863.png

点击粘贴以后弹出这个我们再点击粘贴即可:

c651c525d4f14122b08f0d7053d1ccf5.png

可以看到,我们这里的代码已经粘贴进来了:

38812ae6b9764330ba8ddf0e6cb87b66.png

这里的ssid就是我们无线网络的名字,psk就是我们无线网络的密码,大家根据自己的情况修改即可。

我们在编辑好并且确认没问题以后,我们按下键盘的“ESC”键回到vim的普通模式中:

7aef022294d242bab868ce4c08aaf301.png

在回到普通模式以后,我们输入一个“:”,是的输入一个冒号,这个冒号是英文的:

f0a75e476d9c4944a1bfcc32181ae5cf.png

我们可以发现,我们输入冒号以后,我们的光标来到了最下面,这就是vim的末行模式,这里我们不用删除冒号,继续输入“wq”即可,如图:

46c348dcaf0f475cb1b080f8d2760f1c.png

输入以后我们回车:

874a6a92c3e94f5b86dc35cf99ee9d41.png

我们可以看到这里已经退出来了。

大家也可以再打开文件看一下有没有配置好。

我们现在启动“wpa_supplicant”,使用下面的命令:

wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf

bfc5b2dc2ae14ce7b270781fb38a5a1b.png

这里提示我们已经成功启动了服务并且已经初始化。我们使用下面的命令来获取IP地址:

dhclient wlan0

这条命令是不会有输出的。如果有输出就表明有错误出现,可以尝试重启以后再进行上面的步骤。

经过了上面的步骤以后,我们的网络应该就已经连接成功了,我们输入“ifconfig”来查看网卡状态:

3f454053c02a4221803a7a3663492dbc.png

我们可以看到这里的五项网卡已经被分配到IP地址了。说明无线网络连接成功。

既然已经连接到网络了,那我们就可以使用“apt”来实现在线包管理了,我们使用下面的命令来更新包源:

apt update

在耿欣完包源以后,我们就可以来安装“openssh”了。这样我们就可以使用ssh来远程我们的开发板了。使用下面的命令安装openssh:

apt install openssh-server

你可能会遇到下面的错误:

01da442473424c5c91172db6127ac2ac.png

这个错误表示我们安装的“openssh”依赖于“openssh-client”这个包,我们使用下面的命令来安装“openssh-client”:

apt install openssh-client

在安装成功以后,我们再使用刚才的命令安装“openssh”:

apt install openssh-server

当“openssh”安装成功以后,我们使用下面的命令来查看“openssh”是否在运行:

systemctl status sshd

如果“openssh”正常启动,应该是这样的:

18ce3b2c72fd4c9eaa0a59d5565d6cc1.png

如果你的“openssh”没有启动,可以用下面的命令来启动它:

systemctl start sshd

当“openssh”启动成功以后,我们就可以远程连接了,我们使用下面的命令设置一下默认账户的密码:

passwd lckfb

6e42157175ef4ecdb42a3a34698a6021.png

密码更新成功以后,我们就可以使用远程工具连接了,个人比较喜欢“powershell”自带了远程,下面也使用“powershell”的远程工具演示,大家可以选择自己喜欢的工具远程:

这里我们输入下面的命令进行远程,注意,这里是在“powershell”中才能输入这条命令:

ssh lckfb@192.168.55.248

这里的“lckfb”是我们的用户名,@后面的就是我们开发板的IP地址。大家根据自己开发板的情况来写IP地址。但是用户这里不能使用root,记住是不能使用root:

9ef612920a1e4001918714b9d48261b8.png

输入密码后回车:

71b4c86eb38a4793af1bfa03a34463f6.png

如上图所示,我们已经连接进来了。

目前我对于我的开发板只能使用ssh进行连接,还没有找到桌面远程的办法。我尝试了RDP桌面,也尝试了自己编译RDP再安装还尝试了VNC但是都失败了。如果有大佬有好用的桌面方案还请指点一下。

2.Android的远程配置

        比起Linux,安卓的远程就友好许多了,我们可以直接使用ADB远程泰山派的Android系统。下面就让我们开始操作吧。这里我们使用的是一个名为“scrcpy”的软件对泰山派的安卓系统进行远程。“scrcpy”的优势就在于,不需要使用网络,只使用ADB就能实现远程。下面是“scrcpy”的开源主页:

scrcpy:GitHub - Genymobile/scrcpy: Display and control your Android device

如果你下载了我给的资料,可以打开资料文件夹的“远程工具”文件夹,将“scrcpy”软件的压缩包解压即可:

4d340c498b74492caf40982c589a3518.png

解压后,得到以下文件夹:

c36a3c68d836432db48ffb2107cd5bc9.png

进入文件夹我们就可以看到“scrcpy”的本体了:

e894fc7b935049479efc7e0cbe140365.png

我们使用USB线将电脑与泰山派连接,这里需要安装一下ADB驱动,不会安装的话,大家自行百度一下。我这里就不演示了。安装ADB驱动是必须的,不安装的话无法打开远程。

再连接好泰山派并且已经安装好ADB驱动以后,我们就直接启动“scrcpy”的软件即可:

f67610b4d95742cab3fc72f3013ff9b0.png

这个地方应该是不会出错的。如果就这样可能会供电不足,大家可以插上PD诱骗器的12V供电。

至此,我们安卓的远程就已经完成了,是不是非常简单,诶嘿!

六、结语

        总算结束了,哈呼,说实话有点累。说实话,编译之类的非常费时间。远程桌面自己试了很多次,虽说没试出来就是了。总之,感谢大家的观看

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/144119.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

电脑端视频剪辑软件哪个好用,十多款剪辑软件分享

随着自媒体时代的蓬勃发展,视频创作已成为营销战略与社交媒体互动中不可或缺的一环,这极大地推动了视频编辑技术的普及与兴盛。今天,我将为大家精选并介绍15款当前市场上广受欢迎的视频剪辑工具及配套软件,旨在帮助大家更高效地进…

YOLO混凝土缺陷检测数据集

YOLO混凝土缺陷检测 数据集 模型 ui界面 ✓图片数量7353,模型已训练200轮; ✓类别:exposed reinforcement,rust stain,Crack,Spalling,Efflorescence,delamination(外露…

基于单片机的楼宇门禁系统的设计与实现

文章目录 前言资料获取设计介绍功能介绍设计程序具体实现截图参考文献设计获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师,一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设…

华为OD机试 - 报数问题 - 约瑟夫环(Java 2024 E卷 100分)

华为OD机试 2024E卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试(JAVA)真题(E卷D卷A卷B卷C卷)》。 刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加…

Apache ZooKeeper 及 Curator 使用总结

1. 下载 官网地址:Apache ZooKeeper 点击下载按钮 选择对应的版本进行下载 2. 使用 1、解压 tar -zxf apache-zookeeper-3.9.2-bin.tar.gz2、复制配置文件,有一个示例配置文件 conf/zoo_sample.cfg,此文件不能生效,需要名称为…

【非常实用—Navicat重置 MySQL 的密码】

Navicat重置 MySQL 的密码 连接本地数据库,忘记原始密码停止 MySQL 服务以安全模式启动 MySQL打开新的命令行窗口重置密码停止 MySQL 并重启 连接本地数据库,忘记原始密码 停止 MySQL 服务 在命令行中使用以下命令停止服务(Windows 下&#…

C语言6大常用标准库 -- 4.<math.h>

目录 引言 4. C标准库--math.h 4.1 简介 4.2 库变量 4.3 库宏 4.4 库函数 4.5 常用的数学常量 🌈你好呀!我是 程序猿 🌌 2024感谢你的陪伴与支持 ~ 🚀 欢迎一起踏上探险之旅,挖掘无限可能,共同成长&…

医学数据分析实训 项目五 分类分析--乳腺癌数据分析与诊断

文章目录 项目六:分类分析实践目的实践平台实践内容(一)数据理解及准备(二)模型建立、预测及优化任务一:使用 KNN算法进行分类预测任务二:使用贝叶斯分类算法进行分类预测任务三:使用…

星云股份战略运营副总裁袁智勇︱如何培养“能打胜仗”的项目经理

全国项目经理专业人士年度盛会 福建星云电子股份有限公司总裁办战略运营副总裁袁智勇先生受邀为PMO评论主办的全国项目经理专业人士年度盛会——2024第四届中国项目经理大会演讲嘉宾,演讲议题为“如何培养“能打胜仗”的项目经理”。大会将于10月26-27日在北京举办&…

56.【C语言】字符函数和字符串函数(strtok函数)(未完)

目录 12.strtok函数(较复杂) *简单使用 总结: *优化 12.strtok函数(较复杂) *简单使用 strtok:string into tokens cplusplus的介绍 点我跳转 翻译: 函数 strtok char * strtok ( char * str, const char * delimiters ); 总结: delimiters参数指向一个字符串&#xff0…

波士顿机器人滑环的技术特点与应用前景

机器人滑环在现代自动化和机器人技术中扮演着至关重要的角色。作为一种关键的机械组件,滑环允许机器人在旋转和移动的过程中保持稳定的电信号和数据传输。波士顿机器人滑环作为行业中的领先产品,具有多项独特的技术特点和优势,为各种机器人系…

Packet Tracer - 配置编号的标准 IPv4 ACL(两篇)

Packet Tracer - 配置编号的标准 IPv4 ACL(第一篇) 目标 第 1 部分:计划 ACL 实施 第 2 部分:配置、应用和验证标准 ACL 背景/场景 标准访问控制列表 (ACL) 为路由器 配置脚本,基于源地址控制路由器 是允许还是拒绝数据包。本练习的主要内…

如何学习React?一些学习React的网站

React相关网站集锦 React入门 React 官网:https://react.zcopy.site/docs/getting-started.html 深入React原理 1. 图解React:https://7kms.github.io/react-illustration-series/main/bootstrap 帮助我们快速学习React Fiber架构相关知识,主…

STM32—MPU6050

1.MPU6050简介 MPU6050是一个6轴姿态传感器可以测量芯片自身X、Y、Z轴的加速度、角速度参数,通过数据融合,可进一步得到姿态角,常应用于平衡车、飞行器等需要检测自身姿态的场景3轴加速度计(Accelerometer:测量X、Y、Z轴的加速度3…

智源推出下一代检索增强大模型框架MemoRAG

北京智源人工智能研究院与中国人民大学高瓴人工智能学院联合发布了一款创新的人工智能模型框架——MemoRAG。该框架基于长期记忆,旨在推动检索增强生成(RAG)技术的发展,使其能够处理更复杂的任务,而不仅限于简单的问答…

Vue3 : Pinia的性质与作用

目录 一.性质 二.作用 三.Pinia 的核心概念 四.使用 1.count.ts 2.count.vue Vue 3 中 Pinia 是一个专为 Vue 3 设计的状态管理库,它旨在提供一种简单、直观的方式来管理应用的状态。 一.性质 1.集成性:Pinia 是 Vue 3 官方推荐的状态管理库&…

全志T507-H国产平台Ubuntu系统正式发布,让您的应用开发更便捷!

为了满足广大工业用户的需求,创龙科技针对全志T507-H工业平台进行了Ubuntu系统适配,开发环境如下: Ubuntu:Ubuntu18.04.4 U-Boot:U-Boot-2018.05 Kernel:Linux-4.9.170、Linux-RT-4.9.170 LinuxSDK&…

【AprilTag】视觉定位实战 | 使用 ROS 驱动的 USB 摄像头进行相机标定与 AprilTag 识别

写在前面: 🌟 欢迎光临 清流君 的博客小天地,这里是我分享技术与心得的温馨角落。📝 个人主页:清流君_CSDN博客,期待与您一同探索 移动机器人 领域的无限可能。 🔍 本文系 清流君 原创之作&…

Mapsui:一个 .NET 开源的地图组件库

前言 今天大姚给大家分享一个.NET开源(MIT License)、免费、同时支持多平台框架(MAUI、WPF、Avalonia、Uno、Blazor、WinUI、Eto、.NET Android 和 .NET iOS)地图组件库:Mapsui。 项目源代码 支持的UI框架的NuGet包 创…

文章排名优化@大众点评代发灰色词是什么软件

文章排名优化大众点评代发灰色词是什么软件 如何优化灰色词百度排名推广(灰色词推广代发/代做)#百度推广#关键词排名#灰色词排名 欢迎来到百收网SEO搜索群,我是狂潮老师,这一节我们来讲一下 on page SEO是什么?大众点…