当前位置: 首页 > news >正文

请问做卖东西网站怎么/seo自动点击排名

请问做卖东西网站怎么,seo自动点击排名,wordpress安装完成访问不了,凡科网做网站教程1.引言 在开发、调测过程中,开发人员需要将系统软件、应用软件部署到 Soc 板端,以用于运行调试。传统的部署方式是通过解压复制或者调用部署脚本。这样的部署方式需要有着方式不统一、维护投入大的缺点。 在 linux 系统上,大多采用包管理的…

1.引言

在开发、调测过程中,开发人员需要将系统软件、应用软件部署到 Soc 板端,以用于运行调试。传统的部署方式是通过解压复制或者调用部署脚本。这样的部署方式需要有着方式不统一、维护投入大的缺点。

在 linux 系统上,大多采用包管理的方式管理软件包,常见的包管理方式如上。相比于部署脚本的方式,使用统一的包管理工具有规范和优化软件包的发布、管理流程,减少维护工作量、可溯源性高的优点,适合多版本、多种类软件包的场景。

在 J6 上,底软支持基于 DEB 的包管理方式,支持通过 apt、dpkg 的方式安装软件包。本文将讲解基于 DEB 工具的包管理方式,并以管理 Boyan.deb 软件包为例,展示包的构建、在 征程6 上的部署等内容。

2.Deb 软件包原理介绍

.deb 是 Debian 和基于 Debian 系统(如 Ubuntu)使用的软件包格式,它包含软件及其安装信息。它的主要作用是简化软件的分发和安装,即用于板端软件包部署。

2.1 deb 包的结构

.deb 包中主要包括 可执行程序、控制文件两大部分。一个常见的 。deb 包的目录结构如下。可执行程序部分是需要安装在板端的程序内容,如下的 data.tar.gz 路径;控制文件是脚本集合,用于辅助软件包的安装、卸载操作,如下的 control.tar.gz 路径。

software_1.0-1.deb
│
├── control.tar.gz
│   ├── control
│   ├── preinst
│   ├── postinst
│   ├── prerm
│   └── postrm
│
└── data.tar.gz├── usr│   └── local│       └── bin│           └── software└── etc└── software└── config.conf

2.2 deb 包的安装原理

.deb 包的安装流程主要依赖 deb 包管理工具 和 辅助安装脚本。deb 包安装工具负责解压、复制、部署;辅助安装脚本负责安装前后的定制化操作。整个安装流程可以总结为以下 7 步:

  1. 解压软件包:
  • dpkg 首先会解压 。deb 包的内容到一个临时目录。.deb 文件实际上是一个包含多个文件的归档,主要包括:
    • control.tar.gz:包含控制文件(如 control、postinst、prerm 等)。
    • data.tar.gz 或 data.tar.xz:包含实际的安装文件。
    • debian-binary:标识该包使用的 dpkg 版本。
  1. 检查控制文件:
  • dpkg 读取并解析 control 文件,该文件包含了包的元数据(如包名、版本、依赖关系等)。
  1. 执行预装脚本(preinst):
  • 如果存在 preinst 脚本,dpkg 会在正式安装文件之前执行该脚本。这个脚本通常用于在安装之前执行某些准备工作。
  1. 解压文件到目标目录:
  • dpkg 将 data.tar。* 解压到系统的根目录(/),覆盖或新建文件和目录。
  1. 设置文件权限和所有权:
  • 解压后,dpkg 会根据包中的元数据设置文件的权限和所有权。
  1. 执行配置脚本(postinst):
  • dpkg 接下来会执行 postinst 脚本。这个脚本通常用于执行安装后的配置工作,例如启动服务、注册系统组件等。
  1. 记录包信息:
  • dpkg 会在 /var/lib/dpkg/status 文件中记录已安装包的信息,方便系统和用户查询包的状态。

2.3 deb 包的卸载原理

.deb 包的卸载流程原理同安装流程原理。卸载流程也主要依赖 deb 包管理工具 和 辅助安装脚本。deb 包安装工具负责删除;辅助卸载脚本负责卸载前后的定制化操作。整个卸载流程可以总结为以下 4 步:

  1. 执行预卸载脚本(prerm):
  • 如果存在 prerm 脚本,dpkg 会在移除文件之前执行该脚本。这个脚本通常用于停止服务、解除系统注册等。
  1. 删除文件:
  • dpkg 会删除安装包中包含的文件和目录。
  1. 执行后卸载脚本(postrm):
  • dpkg 会执行 postrm 脚本。这个脚本通常用于清理卸载后的遗留文件或重置系统配置等。
  1. 更新包信息:
  • dpkg 会更新 /var/lib/dpkg/status 文件,移除关于该包的记录。

3.Boyan 软件包管理示例

以管理 Boyan.deb 软件包为例,本节将展示 Boyan-runtime.deb 软件包的构建、在 J6 上的安装部署。

3.1 Boyan.deb 包构建

Boyan.deb 包生成的核心步骤是两两步:一是控制文件的生成;二是软件包 data 的生成。将 Boyan.deb 包的生成接入到 Boyan 整包的编译构建流程中,其整体构建流程如下:

在这里插入图片描述

在编译完成后,生成 runtime_tmp_package 目录,存放可执行程序、控制文件、辅助安装脚本等文件,用于构建 Boyan_Runtime.deb 软件包。最终,runtime_tmp_package 目录的结构如下:

runtime_tmp_package
│
├── DEBIAN                     // Package info文件
│   ├── control
│   ├── preinst
│   ├── postinst
│   ├── prerm
│   └── postrm
│
└── middleware                // Package data
│   ├── bin
│   ├── etc
|   │   ├── j6                // 配置文件
|   │   │   └── sm            
|   │   │   └── em            
|   │   │   └── ...           
│   ├── lib                   // 动态库
│   │   ├── libexec.so
│   │   ├── libsm_client.so
│   ├── pub                   // 三方库
│   │   ├── lib 
│   │   │   └── ...
│   ├── config_repo           // 配置文件库
│   │   ├── default 
│   │   │   └── ...
│   │   ├── pilot5.1 
│   │   │   └── ...
│   │   ├── ... 
│   │   │   └── ...
│   └── ...

其中,可执行程序可直接从编译产出物拷贝,控制文件和辅助安装脚本则需要编写。

控制文件(Control 文件)需要描述软件包的相关信息,必须包含包名、版本等必要信息。Boyan_Runtime.deb 包的控制文件如下:

Package: boyan-runtime-j6
Version: 1.11.1
Section: utils
Priority: optional
Architecture: arm64
Depends: 
Maintainer: Auto_Bsw <Auto_Bsw@horizon.cc>
Description: Basic Software. Boyan-runtime package is used to install in j6 soc for runtime. This package contains lib, bin and configs for all boyan modules. 

辅助安装脚本用于 停止服务进程、启动服务经常、构建执行脚本 等工作,各个辅助安装脚本的作用如下:

  • preinst(安装前脚本):停止 em_service 和 boyan 的相关服务
  • postinst(安装后脚本):创建 em_service 启动脚本
  • prerm(卸载前脚本):停止 em_service 和 boyan 的相关服务
  • postrm(卸载后脚本):删除 em_service 启动脚本

通过上述步骤,将产出物都按照目录结构放置在 runtime_tmp_package 目录下,再通过 dpkg 工具构建指令构建 deb 包即可,构建指令如下:

dpkg-deb -b runtime_tmp_package/ Boyan_Runtime.deb

3.2 Boyan.deb 包部署

构建 Boyan.deb 包后,将软件包拷贝到 征程6 板端,并通过 dpkg 命令安装软件包,安装指令如下:

dpkg -i Boyan_Runtime_Full_J6_V1.11.1_20240920-110923.deb

安装日志如下:

Selecting previously unselected package boyan-runtime-j6.
(Reading database ... 24654 files and directories currently installed.)
Preparing to unpack Boyan_Runtime_Full_J6_V1.11.1_20240920-110923.deb ...
Running pre-installation tasks...
Termiate em_service and boyan service...
Stop boyan service...
Mount middleware partition...
Unpacking boyan-runtime-j6 (1.11.1) ...
Setting up boyan-runtime-j6 (1.11.1) ...
Running post-installation tasks...
Please restart the device...

安装后通过 dpkg -l 指令查询到包的安装状态、版本、架构等信息,显示如下。当安装新版本软件时,dpkg 工具会通过版本比较、依赖检查等方式管理多版本包的升级和替换。

 ii  boyan-runtime-j6                      1.11.1                         arm64        Basic Software. Boyan-runtime package is used to install in j6 soc for runtime. This package contains lib, bin and configs for all boyan modules.

安装后查看/middleware 分区下的文件安装情况:

total 24
drwxr-xr-x.  7 root root 4096 Jan  1 09:23 .
drwxr-xr-x   1 root root  340 Jan 27  2024 ..
drwxr-xr-x   3 root root 4096 Jan  1 09:23 bin
drwxr-xr-x  12 root root 4096 Jan  1 09:23 config_repo
drwxr-xr-x  12 root root 4096 Jan  1 09:23 etc
lrwxrwxrwx   1 root root   35 Jan  1 09:23 init.sh -> /middleware/bin/em_service_boyan.sh
drwxr-xr-x   2 root root 4096 Jan  1 09:23 lib
drwxr-xr-x   3 root root 4096 Jan  1 09:23 pub

如上,软件包完成安装,可启动软件正常运行。

相关文章:

征程6 上基于 DEB 工具实现包管理

1.引言 在开发、调测过程中&#xff0c;开发人员需要将系统软件、应用软件部署到 Soc 板端&#xff0c;以用于运行调试。传统的部署方式是通过解压复制或者调用部署脚本。这样的部署方式需要有着方式不统一、维护投入大的缺点。 在 linux 系统上&#xff0c;大多采用包管理的…...

【git】一文详解: git rebase到底有啥问题

引子 我反复看到这样的评论&#xff1a;“git rebase 像屎一样”。人们似乎对此有很强烈的感受&#xff0c;我真的很惊讶&#xff0c;因为我没有遇到太多使用 rebase 的问题&#xff0c;而且我一直在使用它。 使用 rebase 的成本有多大&#xff1f;在实际使用中它给你带来了什…...

高性能计算应用优化实践之WRF

WRF&#xff08;Weather Research Forecast&#xff09;模式是由美国国家大气研究中心&#xff08;NCAR&#xff09;、国家环境预报中心&#xff08;NCEP&#xff09;等机构自1997年起联合开发的新一代高分辨率中尺度天气研究预报模式&#xff0c;重点解决分辨率为1&#xff5e…...

nsight-compute使用教程

一 安装 有的时候在linux上安装上了nsight-compute,可以生成报告,但是却因为缺少qt组件而无法打开,我选择的方法是在linux上生成报告,在window上的nsight compute的图形界面打开,需要注意的是,nsight compute图形界面的版本一定要更高,不然无法打开 二 使用 2.1 生成…...

【深度学习】03-神经网络01-4 神经网络的pytorch搭建和参数计算

# 计算模型参数,查看模型结构,我们要查看有多少参数&#xff0c;需要先安装包 pip install torchsummary import torch import torch.nn as nn from torchsummary import summary # 导入 summary 函数&#xff0c;用于计算模型参数和查看模型结构# 创建神经网络模型类 class Mo…...

我与Linux的爱恋:命令行参数|环境变量

​ ​ &#x1f525;个人主页&#xff1a;guoguoqiang. &#x1f525;专栏&#xff1a;Linux的学习 文章目录 一.命令行参数二.环境变量1.环境变量的基本概念2.查看环境变量的方法3.环境变量相关命令4.环境变量的组织方式以及获取环境变量的三种方法 环境变量具有全局属性 一…...

django drf 统一Response格式

场景 需要将响应体按照格式规范返回给前端。 例如&#xff1a; 响应体中包含以下字段&#xff1a; {"result": true,"data": {},"code": 200,"message": "ok","request_id": "20cadfe4-51cd-42f6-af81-0…...

SM2协同签名算法中随机数K的随机性对算法安全的影响

前面介绍过若持有私钥d的用户两次SM2签名过程中随机数k相同&#xff0c;在对手获得两次签名结果Sig1和Sig2的情况下&#xff0c;可破解私钥d。 具体见SM2签名算法中随机数K的随机性对算法安全的影响_sm2关闭随机数-CSDN博客 另关于SM2协同签名过程&#xff0c;具体见SM2协同签…...

解决setMouseTracking(true)后还是无法触发mouseMoveEvent的问题

如图&#xff0c;在给整体界面设置鼠标追踪且给ui界面的子控件也设置了鼠标追踪后&#xff0c;运行后的界面仍然有些地方移动鼠标无法触发 mouseMoveEvent函数&#xff0c;这就令人头痛。。。 我的解决方法是&#xff1a;重载event函数&#xff1a; 完美解决。。。...

基于深度学习的花卉智能分类识别系统

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长 QQ 名片 :) 1. 项目简介 传统的花卉分类方法通常依赖于专家的知识和经验&#xff0c;这种方法不仅耗时耗力&#xff0c;而且容易受到主观因素的影响。本系统利用 TensorFlow、Keras 等深度学习框架构建卷积神经网络&#…...

Springboot集成MongoDb快速入门

1. 什么是MongoDB 1.1. 基本概念 MongoDB是一个基于分布式文件存储 [1] 的数据库。由C语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB是一个介于关系数据库和非关系数据库之间的产品&#xff0c;是非关系数据库当中功能最丰富&#xff0c;最像关系数…...

DERT目标检测—End-to-End Object Detection with Transformers

DERT&#xff1a;使用Transformer的端到端目标检测 论文题目&#xff1a;End-to-End Object Detection with Transformers 官方代码&#xff1a;https://github.com/facebookresearch/detr 论文题目中包括的一个创新点End to End(端到端的方法&#xff09;简单的理解就是没有使…...

软件后端开发速度慢的科技公司老板有没有思考如何破局

最近接到两个科技公司咨询&#xff0c;说是他们公司后端开发速度太慢&#xff0c;前端程序员老等着&#xff0c;后端程序员拖了项目进度。 这种问题不只他们公司&#xff0c;在软件外包公司中&#xff0c;有一部分项目甲方客户要得急&#xff0c;以至于要求软件开发要快&#…...

开放原子超级链内核XuperCore可搭建区块链

区块链是一种分布式数据库技术,它以块的形式存储数据,并使用密码学方法保证数据的安全性和完整性。 每个块包含一定数量的交易信息,并通过加密链接到前一个块,形成一个不断增长的链条。 这种设计使得数据在网络中无法被篡改,因为任何尝试修改一个块的数据都会破坏整个链的…...

【Qualcomm】高通SNPE框架的使用 | 原始模型转换为量化的DLC文件 | 在Android的CPU端运行模型

目录 ① 激活snpe环境 ② 设置环境变量 ③ 模型转换 ④ run on Android 首先&#xff0c;默认SNPE工具已经下载并且Setup相关工作均已完成。同时&#xff0c;拥有原始模型文件&#xff0c;本文使用的模型文件为SNPE 框架示例的inception_v3_2016_08_28_frozen.pb文件。imag…...

C++map与set

文章目录 前言一、map和set基础知识二、set与map使用示例1.set去重操作2.map字典统计 总结 前言 本章主要介绍map和set的基本知识与用法。 一、map和set基础知识 map与set属于STL的一部分&#xff0c;他们底层都是是同红黑树来实现的。 ①set常见用途是去重 &#xff0c;set不…...

随手记:前端一些定位bug的方法

有时候接到bug很烦躁&#xff0c;不管是任何环境的bug&#xff0c;看到都影响心情&#xff0c;随后记总结一下查看bug的思路&#xff0c;在摸不着头脑的时候或者焦虑的时候&#xff0c;可以静下心来顺着思路思考和排查bug可能产生的原因 1.接到bug&#xff0c;最重要的是&am…...

【深度学习】03-神经网络2-1损失函数

在神经网络中&#xff0c;不同任务类型&#xff08;如多分类、二分类、回归&#xff09;需要使用不同的损失函数来衡量模型预测和真实值之间的差异。选择合适的损失函数对于模型的性能至关重要。 这里的是API 的注意⚠️&#xff0c;但是在真实的公式中&#xff0c;目标值一定是…...

Python爬虫APP程序:构建智能化数据抓取工具

在信息爆炸的时代&#xff0c;数据的价值日益凸显。Python作为一种强大的编程语言&#xff0c;与其丰富的库一起&#xff0c;为爬虫程序的开发提供了得天独厚的优势。本文将探讨如何使用Python构建一个爬虫APP程序&#xff0c;以及其背后的思维逻辑。 什么是Python爬虫APP程序&…...

第五部分:2---中断与信号

目录 操作系统如何得知哪个外部资源就绪&#xff1f; 什么是中断机制&#xff1f; CPU引脚和中断号的关系&#xff1a; 中断向量表&#xff1a; 信号和中断的关系&#xff1a; 操作系统如何得知哪个外部资源就绪&#xff1f; 操作系统并不会主动轮询所有外设来查看哪些资源…...

梧桐数据库(WuTongDB):SQL Server Query Optimizer 简介

SQL Server Query Optimizer 是 SQL Server 数据库引擎的核心组件之一&#xff0c;负责生成查询执行计划&#xff0c;以优化 SQL 查询的执行性能。它的目标是根据查询的逻辑结构和底层数据的统计信息&#xff0c;选择出最优的查询执行方案。SQL Server Query Optimizer 采用基于…...

Scrapy框架介绍

一、什么是Scrapy 是一款快速而强大的web爬虫框架&#xff0c;基于Twusted的异步处理框架 Twisted是事件驱动的 Scrapy是由Python实现的爬虫框架 ① 架构清晰 ②可扩展性强 ③可以灵活完成需求 二、核心组件 Scrapy Engine&#xff08;引擎&#xff09;&#xff1a;Scrapy框架…...

Facebook对现代社交互动的影响

自2004年成立以来&#xff0c;Facebook已经成为全球最大的社交媒体平台之一&#xff0c;改变了人们的交流方式和社交互动模式。作为一个数字平台&#xff0c;Facebook不仅为用户提供了分享生活点滴的空间&#xff0c;也深刻影响了现代社交互动的各个方面。本文将探讨Facebook如…...

Java项目运维有哪些内容?

Java项目运维的内容主要包括环境准备、部署Java应用、配置和优化、安全配置、以及数据安全保护措施&#xff0c;服务的运行和资源动态监控管理。‌ ‌1&#xff0c;环境准备‌&#xff1a;这包括选择适合运行Java和Tomcat的操作系统&#xff0c;如Ubuntu、CentOS等Linux发行版…...

【学习笔记】MIPI

MIPI介绍 MIPI是由ARM、Nokia、ST、IT等公司成立的一个联盟&#xff0c;旨在把手机内部的接口如存储接口&#xff0c;显示接口&#xff0c;射频/基带接口等标准化&#xff0c;减少兼容性问题并简化设计。 MIPI联盟通过不同的工作组&#xff0c;分别定义一系列手机内部的接口标…...

QMake 脚本知识点记录

1. 简单工程配置 QT core guigreaterThan(QT_MAJOR_VERSION, 4): QT widgetsCONFIG c11CONFIG debug # debug/release HEADERS demo.h # 头文件 列表 SOURCES main.cpp demo.cpp # 源文件 列表 FORMS mainwin.ui # 窗体 列表…...

Kubernetes配置管理(kubernetes)

实验环境&#xff1a; 在所有节点上拉取镜像&#xff1b;然后把资源清单拉取到第一个master节点上&#xff1b; 同步会话&#xff0c;导入镜像&#xff1a; configmap/secret 配置文件的映射 变量&#xff1a; 基于valuefrom的方式 cm--》pod 特点&#xff1a;变量的名称可…...

macOS与Ubuntu虚拟机使用SSH文件互传

1.ubuntu配置: 安装openssh服务: sudo apt-get install openssh-server -y 查看服务启动状态: systemctl status ssh 2.macOS使用scp连接ubuntu并发送文件 查看ubuntu IP : ifconfigmacOS终端连接ubuntu : sc...

defineExpose 显式导出子组件方法

当父组件调用子组件的script setup中的方法时&#xff0c;必须显式导出该方法。因为 script setup 中定义的变量和方法默认是局部的&#xff0c;只有显式导出后&#xff0c;父组件才能访问这些方法。 //父组件-Parent <template><el-button type"primary" …...

vue 解决列表界面进入明细返回查询条件不变

在Vue中&#xff0c;如果你遇到了列表界面进入详情页面后返回查询条件不变的问题&#xff0c;可能是因为你没有正确地管理状态或者是使用了不合适的组件间通信方式。 解决方案通常涉及到以下几点&#xff1a; 使用Vuex来管理状态&#xff0c;确保查询条件保存在全局状态树中&…...