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

news/2024/11/14 15:18:36/

一、前言

        泰山派买回来也有一阵子了,最近慢慢开始研究。当然,学习这种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.ppmy.cn/news/1527576.html

相关文章

激光粉尘传感器:筑牢粮仓安全防线,有效应对粮食粉尘爆炸高危风险

随着我国农业的持续发展和粮食产量的稳步提升,2023年全国粮食总产量达到了13908.2亿斤,这一丰硕成果不仅保障了国家的粮食安全,也对粮食的储备、加工、运输等环节提出了更高的要求。然而,在粮食产业链的各个环节中,粮食…

[模板]树的最长路径

[模板]树的最长路径 题目描述 给定一棵树,树中包含 n 个结点(编号1~n)和 n-1 条无向边,每条边都有一个权值。 现在请你找到树中的一条最长路径。 换句话说,要找到一条路径,使得使得路径两端的点的距离最远…

Day04_JVM实战

文章目录 一、gc日志和dump快照GC日志是什么,要怎么看?dump快照是什么?要怎么看?二、gc日志和dump快照实战java.lang.OutOfMemoryError:Java heap space1、gc.log怎么看2、heapdump.hprof怎么看?①jvisualvm查看②使用MAT查看java.lang.OutOfMemoryError:Metaspace1、实时…

学懂C++(六十):C++ 11、C++ 14、C++ 17、C++ 20新特性大总结(万字详解大全)

一、引言 随着计算机科学与技术的飞速发展,编程语言也在不断进化以满足日益增长的需求。C是一门集高性能和灵活性于一身的编程语言,自1983年诞生以来不断演进,逐渐成为了众多领域的主流编程语言。为了进一步提升开发效率和代码质量&#xff0…

LeetCode-137. 只出现一次的数字 II【位运算 数组】

LeetCode-137. 只出现一次的数字 II【位运算 数组】 题目描述:解题思路一:解题思路二:符号位一起判断。背诵版解题思路三:0 题目描述: 给你一个整数数组 nums ,除某个元素仅出现 一次 外,其余每…

C#基础(11)函数重载

前言 前面我们已经完成了ref和out补充知识点的学习,以及函数参数相关的学习,今天便再次为函数补充一个知识点:函数重载。 函数重载是指在同一个作用域中,可以有多个同名函数,但参数列表不同。它的发展可以追溯到早期…

02 ETH

以太坊与比特币有什么不同? 以太坊立足比特币创新之上,于 2015 年启动,两者之间有一些显著不同。 比特币就仅仅是比特币;以太坊包括以太币,以太币才是和比特币对等的存在。以太坊是可编程的,所以你可以在…

本地镜像发布到阿里云

本地镜像发布到阿里云 登录阿里云容器镜像服务配置 Docker 登录阿里云容器镜像服务标记你的 Docker 镜像推送镜像到阿里云验证使用阿里云镜像注意事项 将 Docker 本地镜像发布到阿里云(Alibaba Cloud)容器镜像服务(Container Registry&#x…