嵌入式碎片知識總結(二)

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
英文地址,請注明出處:http://en.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…