嵌入式碎片知识总结(二)

1.repo的一个问题:

repo init -u ssh://shchen@gerrit.bouffalolab.com:29418/bouffalo/manifest/bouffalo_sdk -b master -m allchips-internal.xml
/usr/bin/repo:681: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC).now = datetime.datetime.utcnow()
Downloading Repo source from https://gerrit.googlesource.com/git-repo
fatal: Cannot get https://gerrit.googlesource.com/git-repo/clone.bundle
fatal: error [Errno 110] Connection timed out
fatal: double check your --repo-rev setting.
fatal: cloning the git-repo repository failed, will remove '.repo/repo'

可以看到是网络连接失败导致的,可是为什么repo init 民令回去google上进行下载东西呢?
原因:

我们 sudo apt install 下载的repo 其实就是一个引导器,真正的repo只有你init才会下载

说回到问题,这里错误是因为默认的链接是 google 的,配置一个国内镜像就能解决。

export REPO_URL='https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/'

2.refspec 与 ref

ref 展开来说是 git 的reference,默认情况下 refs/heads/master 可以简称为master

1)本地分支的Reference格式:refs/heads/<local_branch_name>
如refs/heads/master,在保证唯一的情况下可以简写为master
2)远程追踪分支的Reference格式:refs/remotes/<remote_repository>/<remote_branch_name>
如refs/remotes/origin/master,在保证唯一的情况下可以简写为origin/master

而refspec 是一个 git 的规则,该规则正是表示了本地和远端的 refs 的关系的。当你 fetch push 相关操作的时候会有一个默认的规则,指定远端的仓库的哪个分支拉取到本地的哪个仓库哪个分支。

+refs/heads/*:refs/remotes/origin/*#默认的命名空间 git 只认head还有remote,如果你放在一个非规定的命名空间里,则git branch -all 都不会显示。比如:
git fetch origin/refs/heads/mater:refs/mynamespace/mybranch就会生成一个不再规则显示内的分支

可以看到无法直接过去,但是可以 --detach强制分离指针然后跳转,tig 可以看到当前分支情况:

3.Linux设置服务器:

在 /etc/systemd/system/ 目录下添加一个 xxx.service文件

然后在文件中按照下面的类似框架去写:

[Unit]
Description=My Custom Application Server  # 服务的描述,便于识别
Documentation=https://github.com/yourusername/yourapp  # 可选:项目文档地址
After=network.target  # 指定在网络就绪后再启动本服务[Service]
Type=simple  # 这是最常用的类型,假设您的服务是前台运行的
User=www-data  # 强烈建议:以非 root 用户运行服务,提高安全性。可以是 www-data, nobody 或您创建的用户
Group=www-data # 用户所属的组
WorkingDirectory=/opt/myapp  # 服务启动时的工作目录
ExecStart=/opt/myapp/server-linux-amd64  # 最重要的指令:启动服务的完整命令
Restart=always  # 服务意外退出时自动重启
RestartSec=5  # 重启前等待的秒数
Environment="PORT=8080"  # 可选:设置环境变量,您的应用可以读取它
# EnvironmentFile=/etc/default/myapp  # 可选:也可以从一个文件加载多个环境变量# 安全相关设置(可选但推荐)
NoNewPrivileges=yes
PrivateTmp=yes[Install]
WantedBy=multi-user.target  # 指定在系统进入“多用户”模式时启用此服务

完成后执行:sudo systemctl daemon-reload

然后就可以通过 systemctl 相关命令进行控制了。

4.SSH通信

SSH通信本质是 CS通信, 本地生成一对密钥也就是公钥和私钥,然后把公钥配置在服务器Server上,下面把公钥叫做pub,私钥叫做pri。

pub是一把锁,只有pri能解开。你把pub放在服务器上,通信的时候,服务器就会把一段明文使用pub来进行加密发给你,验证方法就是你使用pri把加密信息解开发回去,服务器验证发现明文一致那么就判断可以进行通信。

5.awk tr test 命令

awk:

awk options 'pattern {action}' file

其中最常见的使用 option 是-f 就是分割符号,action是打印行为,默认打印全行。
eg:
awk -F "=" '{print $2}' a.txt   就是以=分割打印每行的第二个。

tr:

用于替换,比如:

perf_content=$(tr '\r\n' ' ' < iperf_result.txt)  就是替换iperf文件里所有的 /r/n 为空格

test:

-n 测试是否为空 -e 测试是否存在,会这两个就够用了基本。

6.Linux的日志

日志文件描述
/var/log/syslog系统核心和服务的通用日志(Debian/Ubuntu)。排查问题首先看这里。
/var/log/messages系统核心和服务的通用日志(Red Hat/CentOS/Fedora)。
/var/log/auth.log身份认证相关的日志(Debian/Ubuntu)。如 SSH 登录成功/失败、sudo 使用记录。
/var/log/secure身份认证相关的日志(Red Hat/CentOS/Fedora),等同于 auth.log
/var/log/kern.log内核产生的日志。
/var/log/boot.log系统启动过程中的日志。

另外有像 dmesg 和 jouralctl 这中查看方法。
一般来说,要查看一个应用的 log 采用 tail -f /var/log/app.log 的方法。

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

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

相关文章

java中二维数组笔记

课程链接:黑马程序员java零基础[上] 1.二维数组的内存分布 在 Java 中&#xff0c;二维数组并不是一整块连续的二维空间&#xff0c;而是数组的数组。具体而言,在声明一个二维数组&#xff1a;如int[][] arr new int[2][3];时&#xff0c;内存中会发生如下: 1.1 栈上的引用变…

系统架构设计师备考第13天——计算机语言-多媒体

一、多媒体基础概念媒体的分类 感觉媒体&#xff1a;人类感官直接接收的信息形式&#xff08;如声音、图像&#xff09;。表示媒体&#xff1a;信息的数字化表示&#xff08;如JPEG图像、MP3音频&#xff09;。显示媒体&#xff1a;输入/输出设备&#xff08;如键盘、显示器&am…

指针高级(1)

1.指针的运算2.指针运算有意义的操作和无意义的操作、#include <stdio.h> int main() {//前提条件&#xff1a;保证内存空间是连续的//数组int arr[] { 1,2,3,4,5,6,7,8,9,10 };//获取0索引的内存地址int* p1 &arr[0];//通过内存地址&#xff08;指针P&#xff09;…

【可信数据空间-Trusted Data Space综合设计方案】

可信数据空间-Trusted Data Space综合设计方案 一.简介与核心概念 1.什么是可信数据空间 2.核心特征 3.主要应用场景 二、 产品设计 1. 产品定位 2. 目标用户 3. 核心功能模块 a. 身份与访问管理 b. 数据目录与服务发现 c. 策略执行与合约管理 d. 数据连接与计算 e. 审计与溯源…

技术方案之Mysql部署架构

一、序言在后端系统中&#xff0c;MySQL 作为最常用的关系型数据库&#xff0c;其部署架构直接决定了业务的稳定性、可用性和扩展性。你是否遇到过这些问题&#xff1a;单机 MySQL 突然宕机导致业务中断几小时&#xff1f;高峰期数据库压力过大&#xff0c;查询延迟飙升影响用户…

js语言编写科技风格博客网站-详细源码

<!-- 科技风格博客网站完整源码 --> <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <ti…

AI如何理解PDF中的表格和图片?

AI的重要性已渗透到社会、经济、科技、生活等几乎所有领域&#xff0c;其核心价值在于突破人类能力的物理与认知边界&#xff0c;通过数据驱动的自动化、智能化与优化&#xff0c;解决复杂问题、提升效率并创造全新可能性。从宏观的产业变革到微观的个人生活&#xff0c;AI 正在…

Graphpad Prism 实战教程(一):小鼠体重变化曲线绘制全流程(含数据处理与图表美化)

在药理实验、动物模型构建等科研场景中,小鼠体重变化数据是评估实验干预效果(如药物安全性、疾病进展影响)的核心指标之一。将零散的体重数据转化为直观的折线图,不仅能清晰呈现体重随时间的波动趋势,更是后续结果解读与论文图表呈现的关键步骤。本文将从 Excel 数据整理开…

计算机视觉(六):腐蚀操作

腐蚀&#xff08;Erosion&#xff09;是计算机视觉和图像处理中一种基础且至关重要的形态学操作。它与膨胀&#xff08;Dilation&#xff09;互为对偶&#xff0c;共同构成了形态学处理的基石。腐蚀操作主要用于缩小前景物体的面积&#xff0c;去除图像中的噪声&#xff0c;以及…

AI随笔番外 · 猫猫狐狐的尾巴式技术分享

&#x1f380;【开场 咱才不是偷懒写博客】&#x1f43e;猫猫趴在键盘边&#xff0c;耳朵一抖一抖&#xff1a;“呜呜呜……明明说好要写技术总结&#xff0c;结果咱脑袋里全是尾巴……要不今天就水一篇随意的 AI 技术分享算啦&#xff1f;”&#x1f98a;狐狐把书卷轻轻放在桌…

数据分析与挖掘工程师学习规划

一、数学与统计学基础概率论与数理统计随机变量、概率分布&#xff08;正态分布、泊松分布等&#xff09;、大数定律、中心极限定理假设检验、置信区间、方差分析&#xff08;ANOVA&#xff09;、回归分析贝叶斯定理及其在分类问题中的应用&#xff08;如朴素贝叶斯算法&#x…

(线上问题排查)4.CPU使用率飙升:从应急灭火到根因治理

目录 从宏观到微观&#xff1a;CPU排查的“破案”流程 第一阶段&#xff1a;应急响应——找到“谁”在捣乱 1. 全局视角&#xff1a;top命令的初窥 2. 进程内窥视&#xff1a;揪出问题线程 第二阶段&#xff1a;深入分析——理解“为什么” 3. 线程堆栈分析&#xff1a;查…

如何快速实现实时云渲染云推流平台的网络环境配置与端口映射

LarkXR是由Paraverse平行云自主研发的实时云渲染推流平台&#xff0c;以其卓越的性能和丰富完备的功能插件&#xff0c;引领3D/XR云化行业风向标。LarkXR适用于3D/XR开发者、设计师、终端用户等创新用户&#xff0c;可以在零硬件负担下&#xff0c;轻松实现超高清低时延的3D交互…

13、Docker构建镜像之Dockerfile

13、Docker构建镜像之Dockerfile 1、Dockerfile是什么 Dockerfile是Docker镜像的构建文件&#xff0c;它包含了一系列指令和参数&#xff0c;用于定义如何构建一个Docker镜像。通过Dockerfile&#xff0c;我们可以将应用程序和其依赖的组件打包到一个独立的镜像中&#xff0c;方…

TensorFlow 深度学习 | 三种创建模型的 API

💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 TensorFlow 深度学习 | 三种创建模型的 API 在 TensorFlow 中,模型的构建方式非常灵…

LeetCode82删除排序链表中的重复元素 II

文章目录删除排序链表中的重复元素 II题目描述示例核心思想最优雅解法算法步骤详解示例1演示&#xff1a;[1,2,3,3,4,4,5]关键理解点1. 虚拟头节点的作用2. 重复检测逻辑3. 完全删除重复节点边界情况处理情况1&#xff1a;空链表情况2&#xff1a;单节点情况3&#xff1a;全部重…

蓝桥杯算法之基础知识(6)

目录 Ⅰ.os操作 Ⅱ.时间库&#xff08;很重要&#xff09; Ⅲ.基本单位换算&#xff08;ms&#xff0c;min&#xff0c;h的单位换算&#xff09; Ⅳ.时间戳 Ⅴ.文件读取 Ⅵ.堆 Ⅶ.math操作 Ⅷ.range&#xff08;&#xff09;方法单独使用 Ⅸ.python 的异常输出 Ⅹ.for…

多架构/系统图,搞懂:期货账户体系,太通透了!

Hi,围炉喝茶聊产品的新老朋友好!上周和大家聊了国内6大期货交易所清算交收,感兴趣的话烦请戳蓝色链接去学习,就当为下面学习作知识铺垫,更重要是温故知新,并保持知识连贯性。另外围炉特意整理了与账户相关的文章,如下所示: “保证金被扣”拆解期货交易所:清算交收体系…

python-对图片中的头像进行抠图

要实现对图片中人脸或头像进行抠图&#xff0c;可以使用 Python 的 人脸检测 和 掩码生成裁剪工具。这里提供几种实现方法&#xff0c;用于检测图片中的人脸区域并实现裁剪效果&#xff1a; 方案 1: 使用 OpenCV 和 Haar级联检测人脸并裁剪 步骤 1: 安装依赖 安装 OpenCV 和其他…

OpenLayers常用控件 -- 章节一:地图缩放控件详解教程

前言在Web地图开发中&#xff0c;缩放控件是用户与地图交互最基本也是最重要的功能之一。OpenLayers作为功能强大的开源地图库&#xff0c;提供了多种缩放控件来满足不同的交互需求。本文将结合一个完整的Vue.js示例&#xff0c;详细介绍OpenLayers中三种主要的缩放控件&#x…