【北京迅为】《iTOP龙芯2K1000开发指南》-第四部分 ubuntu开发环境搭建

news2024/11/24 19:57:48

龙芯2K1000处理器集成2个64位GS264处理器核,主频1GHz,以及各种系统IO接口,集高性能与高配置于一身。支持4G模块、GPS模块、千兆以太网、16GB固态硬盘、双路UART、四路USB、WIFI蓝牙二合一模块、MiniPCIE等接口、双路CAN总线、RS485总线,扩展能力更强。龙芯2K1000已经广泛应用于工控、轨道交通、电力、能源等领域,经过大量项目验证,是嵌入式领域一颗新星。拥有完全自主知识产权,供货稳定,也是龙芯中科面向嵌入式开发的主推产品。

【实验平台】:迅为龙芯2K1000开发板
【视频介绍】:成体系 | 龙芯教学视频

【内容来源】《iTOP龙芯2K1000开发指南》
【全套资料及网盘获取方式】联系淘宝客服加入售后技术支持群内下载


第四部分 ubuntu开发环境搭建

开发龙芯,我们需要在Linux环境下进行开发,所以这就要求我们给PC机安装Linux操作系统,在4.2章节我们曾经提到过。我们使用的是Windows10系统+虚拟机ubuntu的方案。

为什么我们要选择ubuntu系统进行开发而不是其他系统呢,因为ubuntu系统桌面非常友好并且工具十分强大,比如apt-get。而且ubuntu可以免费使用并有专业的社团提供相应的支持。

所以这一部分针对ubuntu开发环境搭建,ubuntu系统使用和入门,ubuntu终端操作进行一个详细的讲解,帮助大家快速认识ubuntu系统已经构建起ubuntu开发环境。如果您已经对这些操作非常熟悉,可以直接使用我们搭建好的环境并跳这一部分。

4.1 安装虚拟机VMware软件

虚拟机VMware软件是做什么的呢?我们为什么要安装他呢?刚才我们提供了我们采用的是Windows10系统+虚拟机ubuntu的方案。要想实现这个方案,我们就需要先在Windows电脑上安装虚拟机软件,顾名思义,虚拟机就是虚拟出来的一个机器。然后我们在虚拟出来的这个机器上安装ubuntu系统,这样我们就实现了Windows10系统+虚拟机ubuntu的方案。

能实现虚拟机的软件有很多,这里我们选择的是VMware软件,接下来我们就一起来看一下这个软件的安装。VMware软件可以在VMware官网下载,官网地址:https://www.vmware.com/cn.html

VMware软件安装包位置:LS2K1000开发板资料\03_开发所需软件及驱动\3_VMware15.5

VM软件的安装十分简单,我们双击打开VMware-workstation-full-15.5.0-14665864.exe进入安装界面,

然后点击上图中的“下一步” 按钮, 进入下图所示界面:

然后选中上图中的“我接受许可协议中的条款” , 继续选择“下一步” 按钮, 进入如下图所示界面:

根据实际需要可以在上图红色箭头所示的地方更改安装路径,注意:安装路径不要有中文,选择好按住哪个路径, 点击上图中的“下一步” 按钮, 进入如下图界面:

在上图界面中, 取消红色方框内的两个复选框, 然后点击“下一步” 按钮, 进入如下图所示界面: 

然后选中上图中红色方框内的两个复选框, 确保安装完成后, 在桌面和开始菜单里面有 VMware 图标,然后点击上图中的“下一步” 按钮, 进入下图所示界面: 

经过前面几步的操作, 我们已经设置好安装参数了, 我们点击上图中的“安装” 按钮开始安装 VMware安装过程如下图所示: 

安装完成会显示下图所示的界面: 

然后点击上图中的“完成” 按钮, 完成 VMware 虚拟机的安装, 将会在桌面生成 VMware Workstation Pro的图标, 如下图所示: 

接下来我们双击上图中的图标, 打开 VMware 软件。 第一次打开软件会提示输入许可证密钥, 如下图所示

VMware 是付费软件, 如果您购买了 VMware 会有一串许可证密钥, 如果没有购买, 我们可以选择“我希望试用 VMware Workstation 15 30 天” 选项, 然后我们点击“继续” 按钮, 进入下图所示界面: 

然后点击上图中的“完成” 按钮, 打开 VMware 的界面如下图所示: 


至此, 虚拟机 VMware 的安装我们就完成了。 

4.2 虚拟机安装ubuntu系统

4.2.1 下载ubuntu系统镜像

在Windows电脑上安装好了VMware软件以后,我能就可以在VMware软件上安装ubuntu系统了,要安装ubuntu系统,首先我们就要有ubuntu系统的镜像,我们可以去ubuntu系统的官网获取系统镜像。Ubuntu系统官网:Enterprise Open Source and Linux | Ubuntu

Ubuntu20.04安装包在:LS2K1000开发板资料\03_开发所需软件及驱动\4_Ubuntu20.04系统

打开官网以后,我们选择Download,如下图所示:

 选择20.04LTS,并开始下载ubuntu20.04系统镜像,如下图所示:

4.2.2 虚拟机安装ubuntu系统

首先我们打开 VMware 虚拟机软件, 然后点击图中的“创建新的虚拟机” 选项 如下图所示: 

在弹出的界面我们选择默认设置, 然后点击下图中的“下一步” 按钮,如下图所示:

接着我们在安装程序光盘映像文件里选择我们ubuntu20.04系统安装包的位置,注意,不要有中文路径。然后点击下一步

然后我们设置ubuntu系统的相关信息,ubuntu系统名称我们设置为ubuntu20.04,ubuntu系统登录账号设置成topeet,密码也设置成topeet。设置完成后大家一定要记住自己设置的账号密码,安装完系统以后我们需要使用这个密码进行登录

接着我们设置虚拟机名称为ubuntu20.04,安装位置大家自行选择即可,但是切记不要有中文路径,以及要选择一个空间比较大位置进行安装,作者这里G盘的剩余存储空间为1T。

最大磁盘大小这里作者设置成了1000G,大家依据自己的剩余空间来设置即可,建议存储空间至少要预留500G以上。设置完成后,点击下一步。

接着在弹出的界面,我们选择自定义硬件,如下图所示:

自定义硬件这里我们要根据自己PC的硬件配置修改一下虚拟机的硬件参数,由于我的机器是16G 内存,所以这里我给虚拟机分配了8G内存(大家可以根据自己 PC 的实际配置来修改)

然后点击“处理器” 选项, 修改处理器的配置, 这里我把处理器个数设置成 4, 然后每个处理器的内核数量我分了1个(大家可以根据自己 PC 的实际配置来修改) 进入下图界面:

点击“网络适配器” 选项, 进入修改虚拟机的网络配置的界面, 这里我们配置成“桥接模式”, 如下图所示:

然后选择显示器选择,取消勾选掉3D图形加速,如下图所示:

最后点击“关闭” 按钮, 如下图所示:

 返回到“自定义硬件”界面, 然后点击“自定义硬件界面” 中的“完成” 按钮, 开始安装 Ubuntu20.04系统,然后点击完成。

开始安装ubuntu20.04系统。如下图所示

大约经过10分钟左右(根据 PC 的配置, 时间会有所不同) , Ubuntu 会自动完成安装,并重新启动, 进入登录界面, 如下图所示:

最后,我们输入在安装ubuntu20.04的时候设置的账号密码,登录到ubuntu系统界面,如下图所示:

至此, Ubunt20.04虚拟机的安装我们就完成了 

4.3 虚拟机ubuntu基础操作及设置

4.3.1 虚拟机ubuntu系统开关机

在安装完虚拟机ubuntu系统以后,我们要正确的进行开关机操作,如果开关机操作不当,可能会造成虚拟机ubuntu系统崩溃,所以当我们结束在ubuntu系统上的工作以后,我们要正确进行关机,开机操作。

首先是关闭虚拟机:在 VMware 的菜单栏上有一个启动、停止、关闭的快捷按钮, 我们首先使用鼠标点击下拉箭头,会展开该按钮的所有功能,如下图所示:

此时我们的 Ubuntu 处于运行状态, 我们只需要点击下拉菜单里面的“关机(O)”按钮,即可关闭 Ubuntu虚拟机,如下图所示:

点击“关机”选项后, 会提示关机对话框,我们点击“关机” 按钮,如下图所示:


等到关机完成, 如下图所示: 

然后是虚拟机ubuntu开机,直接点击开机俺就即可,如下图所示:

此时会弹出对话框, 我们点击“否” 按钮, 如下图所示:

 稍等片刻Ubuntu 系统正常启动起来了, 如下图所示

至此关于 Ubuntu 系统的开机, 关机我们就讲解完成了。

4.3.2 虚拟机ubuntu终端操作

我们在用 Ubuntu 系统开发的过程中绝大部分情况下都是通过命令来使用 Ubuntu 的, 所以掌握 Ubuntu 的使用命令对于我们的后续 linux 学习至关重要。 Ubuntu 下的终端操

作类似Windows系统下的cmd命令行操作。首先我们需要打开终端,打开终端的方法有好几种:

  1. 快捷键Ctrl+Alt+t组合按键;
  2. 在 Ubuntu 系统桌面, 鼠标右键然后选择“Open in Terminal”;

Ubuntu终端界面如下图所示:

关闭终端,我们直接点击右上角的叉号即可,如下图所示:

4.3.3 虚拟机ubuntu更换背景

点击 桌面右上角的倒三角,选择Settings,如下图所示:

接着我们选择Background选项,然后选择一个自己喜欢的图片,如下图所示:

比如这个作者选择这个桥的图片,选择好以后,直接点击右上角的叉号,背景就会自动帮我们设置成功。

设置成功如下图所示:

4.3.4 虚拟机ubuntu启动root用户

作为嵌入式开发人员,系统的所有权限都要为我们打开,所以我们不必像运维那样,对root用户非常敏感,所以安装完ubuntu系统以后,我们要启用root用户。

首先我们打开ubuntu控制终端,然后在终端里面输入命令 sudo passwd root,如下图所示:

然后敲回车,按照提示输入当前用户密码,作者这里当前用户密码为toppet,即我们的登录密码,然后输入设置root密码,root密码作者也设置为topeet,如下图所示:

4.3.5 虚拟机ubuntu更换下载源

Ubuntu 系统软件的下载安装我们通常使用命令“apt-get” , 该命令可以实现软件自动下载, 安装, 配

置。 该命令采用客户端/服务器的模式, 我们的Ubuntu系统作为客户端, 当需要下载软件的时候就向服务器发起请求, 因此我们需要配置下服务器的地址,也就是更换ubuntu系统的下载源,首先打开“系统设置” 界面, 然后找到“about”设置,然后点击Software Updates,如下图所示

点击Download from,选择Other,如下图所示:

在下载源设置这里,地区选择中国,服务器选择阿里,如下图所示“” 

设置好以后,点击choose Server,如下图所示:

接着会让我们输入密码,即当前的用户的登录密码,作者这里的密码为topeet。设置完成以后如下图所示:

接着我们会回到下载源设置界面,我们点击close关闭即,如下图所示:

点击close,如下图所示:

点击叉号,回到ubuntu桌面,如下图所示:

回到ubuntu桌面以后,我们打开控制终端,然后输入命令sudo apt-get update更新下载源(此操作需要保证ubuntu系统可以联网),如下图所示:

更新成功如下图所示:

4.4 虚拟机ubuntu安装软件

Ubuntu之所以如此出名,不仅是非常有好的交互界面,还有一个非常强大的apt-get工具,我们可以通过这个工具很轻易的在ubuntu系统上安装,卸载,更新软件,在做这一小节之前我们需要先按照8.5章设置好下载源。

4.4.1更新软件列表

sudo apt-get update

这个命令会访问源列表里面的每个网址, 并读取软件列表, 然后保存在本地电脑。 我们在软件包管理器看到的软件列表, 都是通过 update 命令更新的。 我们在终端输入该命令, 运行结果如下图所示:

4.4.2检查依赖是否有损坏

sudo apt-get check

检查依赖是否有损坏就是指 A 软件的运行可能需要依赖 B 软件, 只有安装了 B 软件, A 软件才能正常运行。 我们可以通过该命令检查系统里面软件的依赖关系是否有损坏, 运行结果如下图所示:

4.4.3软件安装

sudo apt-get install package-name

此命令为安装软件命令,package-name 就是我们要安装的具体软件的名称, 比如我们开发过程中会用到vim,这时我们可以使用该命令手动安装vim ,我们在终端输入命令“sudo apt-get install vim” ,安装过程中会提示我们是否确认安装, 如果我们继续安装, 输入“y” 继续安装,输入“n”,则取消安装,  运行结果如下图所示:

安装成功如下图所示:

4.4.4软件更新

sudo apt-get upgrade

此命令会把本地安装的软件, 与最新的软件列表里面对应的软件进行对比, 如果发现安装的软件版本低, 就会提示更新, 如果软件已经是最新版本, 不会更新。 我们在终端输入“ sudo apt-get upgrade” , 运行结果如下图所示:

输入 y 确认更新(如果取消更新可以输入 n),我这里更新这些软件,所以就输入y,如下图所示:

更新完成如下图所示:

4.4.5软件卸载

sudo apt-get remove package-name

如果我们需要卸载已经安装的 package-name 软件, 我们可以会用该命令, 比如卸载前面我们安装的vim软件, 我们在终端输入“sudo apt-get remove vim”。

至此,关于apt-get命令的几个常用功能,我们就介绍完了,大家可以自己亲手练习,亲身体会下。

4.5虚拟机ubuntu安装必要工具

4.5.1安装VMtools工具

VMware Tools是VMware软件中自带的一个工具,我们只有在VMware虚拟机中安装好这个工具,才可以实现文件在虚拟机ubuntu和Windows之间的复制,粘贴等操作,并且可以实现根据实际情况来自动切换屏幕的显示尺寸。所以我们非常有必要安装这个工具。

首先我们打开VMware软件,点击编译虚拟机设置,如下图所示:

然后选择CD/DVD选项,选择使用ISO映像文件,这里选择VMware软件安装位置下的linux.so设置完成后点击确定,如下图所示:

接着我们打开终端,输入df命令,可以看到VMware Tools的安装包所在的路径为/media/topeet/VMware Tools,如下图所示:

接着输入命令cd /media/topeet/VMware Tools进到安装包所在路径下,注意,这里大家以自己的实际路径为准。如下图所示:

输入命令sudo cp VMwareTools-10.3.10-13959562.tar.gz /opt把安装包拷贝到ubuntu系统的opt目录下,注意,VMwareTools-10.3.10-13959562.tar.gz为安装包的名称,大家以自己实际下载的安装包名称为准,如下图所示:

使用命令 sudo cd /opt 进到ubuntu系统的opt目录下,因为刚才我们把安装包拷贝到了这个路径下,为什么我们要拷贝到这个目录下呢,因为ubuntu的opt目录是用来存放主机额外软件安装包的目录,我们要遵守这个规范,所以我们拷贝并进到这个目录下。如下图所示:

输入命令sudo tar -xf VMwareTools-10.3.10-13959562.tar.gz解压安装包(命令后面安装包的名字大家以自己实际的名字为准 ),如下图所示:

接着输入命令cd vmware-tools-distrib进到我们解压生成的目录,如下图所示:

然后输入命令sudo ./vmware-install.pl进行安装,如下图所示:

安装过程中会提示if you want to do this,otherwise type 。我们输入yes,并敲回车,如下图所示:

解压来的安装过程会询问我们yes或者no,我们全部按回车即可,也就是默认安装,安装完成如下图 所示:

最后我们重新ubuntu系统,即可实现Windows和ubuntu之间的复制粘贴等操作。

4.5.2安装SSH服务

搭建开发环境的时候, 提到了不要给电脑安装双系统, 因为我们经常要在 ubuntu windows 上互传文件, 所以我们要使用虚拟机,然后在虚拟机里面安装我们 ubuntu 操作系统。 那么我的 windows 要怎么和 ubuntu 互传文件呢, 我们可以使用 ssh 软件。 接下来我们安装下这个软件。

在终端输入 sudo apt-get install openssh-server , 输入登录 Ubuntu 用户的密码, 这里我们输入 y 确认安装。 如下图所示。

着继续改 ssh 配置文件, 因为 ssh 默认不允许用户登录, 所以我们还需要打开配置文件输入命令sudo vim /etc/ssh/sshd_config”,找到“PermitRootLogin prohibit-password”修改成“PermitRootLogin yes”。如下图所示。 

保存退出后在终端输入“ /etc/init.d/ssh restart”命令, 重新启动 ssh服务然后输入密码如下图所示:

启动成功如下图所示:

打开MobaXterm软件,在菜单栏中选择回话并选择SFTP服务,如下图所示:

 在ubuntu终端输入命令ifconfig,查询ubuntu系统的ip,如下图所示:

在MobaXterm软件弹出来的对话框中,远程主机IP我们填入ubuntu系统ip,也就是192.168.1.25,这里大家根据自身情况填写。用户名我们填写root,设置完成后点击确定,如下图所示:

在弹出来的对话框里面我们填入ubuntu系统的登录密码,然后点击确定,作者这里是topeet,如下图所示:

下一个窗口我们选择否,如下图所示:

成功连接ubuntu系统如下图所示:

我们只需要把Windows电脑上的文件直接拖到上图的对话框即可把文件传到ubuntu,从ubuntu传文件到Windows电脑,只需要在上图的对话框里面把文件拖到Windows电脑即可。

4.5.3安装vscode

Vscode是一款免费开源的代码编辑器,而且功能十分强大,基本支持所有主流的编程语言的语法高亮,自动补全,匹配括号等。软件跨平台支持win,mac和linux。

首先我们需要获得vscode的安装包,我们可以打开vscode的官网,官网地址:https://code.visualstudio.com/Download,因为我们需要在Ubuntu系统上安装,所以我们需要下载Ubuntu系统版本的安装包,如下图所示:

也可以使用迅为下载好的安装包,安装包位置:LS2K1000开发板资料\03_开发所需软件及驱动\6_vscode

有了安装包以后,我们将vscode的安装包拷贝到Ubuntu的任意目录下,如下图所示:

接着我们输入安装命令sudo  dpkg  -i code_1.59.0-1628120042_amd64.deb进行安装,注意:sudo  dpkg  -i 后面的是文件的名称,请以实际情况为准,安装完成如下图所示。

安装完成后我们就可以在Ubuntu的软件中心看到vscode的图标了,如下图所示:

接着点击vscode图标打开vscode软件,打开完成后点击externsions图标,在搜索框里面输入ch搜索和中文有关的语言包,然后选择Code Spell Checker进行安装,如下图所示:

接着按ctrl+shift+p快捷键打开搜索框,手动搜索configure display language,并修改成"zh-CN",即中文模式,之后重启vscode软件。如下图所示:

软件重启成功后,可以看到vscod就汉化成功了,如下图所示:

4.5.4安装tftp服务

tftp 是一个简单的基于 udp 的文本文件传输协议, 我们可以用它来实现开发板和虚拟机Ubuntu之间的互传文件,只在 Ubuntu 上配置好 tftp 服务器即可。

首先使用命令mkdir tftpboot 在家目录下创建文件夹tftpboot,然后使用命令chmod 777 tftpboot修改文件夹的权限为777,,如下图所示:

使用命令sudo apt-get install tftp-hpa tftpd-hpa下载安装tftp服务,安装完成后使用命令sudo vim /etc/default/tftpd-hpa打开tftp的配置文件,并修改成如下图所示:

输入命令sudo service tftpd-hpa restart启动tftp服务,如下图所示:

从上图可以看出,已经启动成功,至此,Ubuntu上tftp服务已经搭建完成。

4.5.5安装nfs服务器

4.5.5.1什么是nfs?

NFS 是 Network File System 的缩写, 它可以通过网络, 让不同的机器、 不同的操作系统可以共享彼此的文件。

NFS 服务器可以让 PC 将网络中的 NFS 服务器共享的目录挂载到本地端的文件系统中, 而在本地端的系统中来看, 那个远程主机的目录就好像是自己的一个磁盘分区一样, 在使用上相当便利;

NFS 服务器我们一般是在 ubuntu 上搭建的。 这里的客户端我们使用的是开发板, 如下图所示。

4.5.5.2同一网段概念

使用 nfs 之前, 开发板、 虚拟机 ubuntu、 windows 电脑三者要互相 ping 通, 这就涉及到了同一个网段的概念。

概念: 同一个网段是指 IP 地址和子网掩码相与得到的相同的网络地址。

快速判断同一个网段:

(1) 开发板、 虚拟机 ubuntu、 windows 子网掩码是不是相同。

(2) 开发板、 虚拟机 ubuntu、 windows IP 地址的前三段是不是相同。

举例:

Ubuntu:

由上图可知, ubuntu 的 IP 为 192.168.1.11, 子网掩码是 255.255.255.0

Windows:

由上图可知, windows 电脑的 IP 为 192.168.1.5 ,子网掩码是 255.255.255.0所以, ubuntu 和 windows 在同一个网段, 因为子网掩码相同, 都是 255.255.255.0, IP 地址前三段相同,都是 192.168.1。 同理, 判断开发板的网段是不是和 ubuntu 和 windows 在同一个网段下, 我们也可以使用这个方法。

4.5.5.3连接方式

在我们做技术支持的时候,经常遇到很多小伙伴,开发板,Ubuntu,电脑主机不能互相ping通的问题,如果不能互相ping通,就不能使用nfs,所以这里作者总结了一个最稳定的连接方式,推荐大家使用,以免出现不能ping通的问题。

(1) 虚拟机 ubuntu 要使用桥接模式, 不能使用其他模式

(2) 开发板使用无线或者有线连接到路由器上, 不要直接连接到电脑,不要连手机热点。

(3) windows 关闭防火墙, 使用有线连接到和开发板连接的同一个路由器上。

(4) 保证虚拟机 ubuntu,Windows, 开发板在同一个网段。

4.5.5.4 nfs服务器的搭建

在 ubuntu 安装 nfs 服务: 使用命令sudo apt-get install nfs-kernel-server,如下图所示:

接着使用命令sudo mkdir -p /home/nfs在/home/路径下创建nfs文件,用来共享使用,如下图所示:

配置文件中添加以下代码:

/home/nfs/ *(rw,sync,no_root_squash)

其中: /home/nfs/ 是 nfs 服务器要共享的目录

rw:是可读写权限

sync:是资料同步写入内存和硬盘

no_root_squash:当登录 NFS 主机使用共享目录的使用者是 root 时, 其权限将被转换成为一名使用者,通常它的 UID 与 GID 都会变成 nobody 身份。

如下图所示:

配置完成后保存退出。使用命令/etc/init.d/nfs-kernel-server restart重启nfs服务,如下图所示:

从上图我们看出,nfs已经重启成功,说明Ubuntu上的nfs服务器已经搭建成功。

4.5.5.5 nfs服务器使用

我们按照4.4.5.3和4.4.5.2章节连接好开发板并设置好同一网段以后,使用命令mount -t nfs -o nolock 192.168.1.38:/home/nfs /mnt/将Ubuntu系统的/home/nfs文件夹挂载到开发板的/mnt目录下,如下图所示:

这句话代码的意思是使用 nfs 挂载/home/nfs 到 mnt 文件夹下, 192.168.1.38的 IP 为 ubuntu 的 IP.把这个 ip 改成自己 ubuntu 的 ip 就可以了。

4.5.5.6 nfs服务器测试

挂载好nfs以后,接着我们在Ubuntu的/home/nfs文件夹下使用命令sudo touch test.c创建一个c文件,如下图所示:

然后在查看开发板的/mnt目录,如果/mnt目录下也可以看到我们在Ubuntu虚拟机上创建的这个test.c文件,说明nfs挂载成功,如下图所示:

从上图可以看到,nfs已经可以正常使用。

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

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

相关文章

信息化还是数字化?

从 PC 互联网到移动互联网,再到物联网和最近流行的人工智能,科技的进步正在不断地改变着我们的生活和工作方式。这个过程实际上也是信息化和数字化的演进过程,许多人会问那信息化和数字化有啥区别?作为企业,如何在浪潮…

机器人操作系统ROS2学习—编译工作空间colcon build报错问题

在ROS2中,工作空间创建完成后,会经常需要编译工作空间。在工作空间dev_ws 下打开一个终端,通过指令Colcon build来编译工作空间。 1、这个过程有可能会出现如下错误: "colconbuild:Duplicate package names not supported" 根据…

openstack-自动化部署 9

所使用的kolla-ansible版本文档: Quick Start — kolla-ansible 14.10.1.dev21 documentation (openstack.org) 创建一个新的虚拟机 配置主机 安装docker 拉取openstack所需的组件镜像 安装ansible 配置ansible 启用lvm需要将另一个磁盘打成pv,以创建成…

如何与卫星影像叠加导出?

让每个人都有自己的地图! 水经微图(以下简称“微图”)网页版,无需安装就可以绘制地图,得到了越来越多用户的亲睐。 但是,当我们千辛万苦绘制出来的地图,该如何与卫星影像叠加导出呢&#xff1…

【redis】Redis数据类型(一)——String类型(包含redis通用命令)

目录 Redis通用命令String类型常用的操作命令一些特殊命令详解setnx示例使用 setrange示例 mset示例 msetnx示例 append示例 getset示例 incr示例使用1.计数器2.限速器 bitcount示例使用:使用 bitmap 实现用户上线次数统计性能 String类型String类型简介String类型的…

Akamai 分布式“云+边缘”,打造下一代数字化基座

当下,数字化基础设施正逐步向分布式部署演化,云计算与边缘计算正在成为两大技术支柱。Gartner 数据显示,云服务占 IT 整体支出比例连年上涨,在过去一年已增长至12.1%;IDC 报告显示,截至2021年已有超过500亿…

【重磅开源】MapleBoot项目启动部署

基于SpringBootVue3开发的轻量级快速开发脚手架 🍁项目简介 一个通用的前、后端项目模板 一个快速开发管理系统的项目 一个可以生成SpringBootVue代码的项目 一个持续迭代的开源项目 一个程序员的心血合集 度过严寒,终有春日&#xff…

算法学习002-填数游戏 中小学算法思维学习 信奥算法解析 c++实现

目录 C填数游戏 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序编写 四、程序说明 五、运行结果 六、考点分析 七、推荐资料 C填数游戏 一、题目要求 1、编程实现 在小学奥数中经常会看到一些填数字的游戏,如下图所示,其中每个…

windows下pysqlite3安装

pysqlite3 下载地址:SQLite Download Page windows下安装 首先在官网中下载以下文件 sqlite-amalgamation-3450300.zip #源码文件 sqlite-dll-win-x64-3450300.zip # 根据系统选择32或者64,可通过查看我的电脑属性中查看 sqlite-tools-win-x64-345…

VSCODE通过SFTP链接VM进行开发

在vscode插件里面搜索sftp,安装。 安装之后,按ctrlshiftp,找到sftp的config 然后填写刚刚的IP,然后是你的用户名密码 如果是通过密钥链接的话就是这样配置 然后切换到这个sftp的tab里面 然后在你的项目右键,然后选择op…

线上盲盒小程序:未来发展趋势与前景展望

随着互联网技术的飞速发展和消费者对于个性化、娱乐化消费体验的不断追求,线上盲盒小程序应运而生,并逐渐成为一种新兴的购物和娱乐方式。本文将对线上盲盒小程序的发展趋势和前景进行展望,以期为相关从业者提供有益的参考。 一、线上盲盒小…

最新 COCO数据集的下载、使用方法demo最新详细教程

📸 最新 COCO数据集的下载、使用方法demo最新详细教程 🌐 文章目录 📸 最新 COCO数据集的下载、使用方法demo最新详细教程 🌐摘要引言正文📘 COCO数据集概览🚀 下载和设置COCO数据集环境准备下载数据集 &am…

推荐:两个工作利器Snipaste和ScreenToGif

引言 本文为推荐文,个人工作中使用的两款工具,介绍推荐之。 Snipaste 简介 Snipaste是一款简单但功能强大的截图工具。 免费版功能特点: 矩形截图,自动检测窗口,无需手动选区。 添加矩形、椭圆形状,可设置…

QT httpServer多线程后台服务器的例子实现

1.需求 1.1 用户需要其他平台(web端)调用Qt平台的接口,获取想要的数据并实时显示在网页里,比如实时的温湿度,用户数据等 1.2 用户需要在其他平台(web端)调用Qt平台的接口,下发数据…

值得收藏!AMI BIOS蜂鸣声代码一览表,让你在排除故障时有的放矢

序言 AMI BIOS是美国Megatrends公司生产的一种BIOS。许多流行的主板制造商已经将AMI的BIOS集成到他们的系统中。 其他主板制造商已经创建了基于AMI BIOS系统的自定义BIOS软件。基于AMI BIOS的BIOS发出的蜂鸣声代码可能与下面的真实AMI BIOS蜂鸣声代码完全相同,也可能略有不同…

Eclipse内存分析器 Java内存分析工具MAT(Memory Analyzer Tool)的介绍与使用

1.visualvm实时监测 2.Memory Analyzer Tool打开 3.工具的使用可以参考 Java内存分析工具MAT(Memory Analyzer Tool)的介绍与使用 ------------------------ 1.我远程发现是其中一个客户端A请求服务器页面响应,一直得不到响应,然后客户端A一直请求&am…

C语言——字符串和字符串函数

一、字符串 实际上C语言中实际上是没有内置的字符串类型的,大部分字符串都是以字符型数组和常量字符串的形式存在的。 字符串可以通过多种方式在C语言中声明和初始化: 直接初始化: char greeting[] "Hello, world!"; 在这个例…

0417GoodsImgTomCat项目 实现添加储存图片 分页查询图片

0417GoodsImgTomCat项目包-CSDN博客 数据库字段: 界面效果

【Vivado那些事儿】使用 Python 提取 ILA 数据

ILA应该是调试AMD-Xilinx FPGA最常用的IP。 在调试中,我们希望 ILA 中的波形可以提供有关设计问题的所有信息,但情况并非如此。对于复杂的调试,我们还需要将 ILA 捕获的真实数据存储到可以进一步处理的文件中。根据放置 ILA 的位置&#xff0…

笔试刷题-Day10

牛客 一、DP30买卖股票的最好时机(一) 算法:虽然题目标了DP但是用贪心更快页更容易理解 import java.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main {public static void main(String[] args) {Sca…