add:stm32

This commit is contained in:
dichgrem
2025-10-29 15:20:26 +08:00
parent bcfa288a4e
commit 51feef5fd8
40 changed files with 798 additions and 308 deletions

View File

@@ -1,5 +1,5 @@
+++
title = "Linux下的命令行操控"
title = "Linux-命令行操控"
date = 2023-07-20
[taxonomies]

141
content/linux-2-stm32.md Normal file
View File

@@ -0,0 +1,141 @@
+++
title = "Linux-STM32开发环境部署"
date = 2025-07-20
[taxonomies]
tags = ["Linux"]
+++
前言 本文记录STM32命令行开发环境在Ubuntu上的部署用以替代Windows上的RT-Thread-studio。RT-Thread同样是开源
软件但目前似乎没有Nixos上的打包。
<!-- more -->
## 环境
在ubuntu24.04中安装这些包,包括连接工具,工具链和调试器等等。
```
sudo apt update
sudo apt install -y git python3 scons openocd stlink-tools gcc-arm-none-eabi gdb-multiarch
```
## 源码
使用Git拉取RT-Thread开源项目
```
git clone https://github.com/RT-Thread/rt-thread.git
```
## 连接
使用USB连接开发板和开发PC并使用lsusb查看是否连接成功
```
lsusb
Bus 001 Device 004: ID 0483:374b STMicroelectronics ST-LINK/V2.1
```
如果你和我一样使用 qemu 需要在libvirt中使用Add_hardware添加usb设备。
添加成功后可以使用这个命令来检测:
```
st-info --probe
Found 1 stlink programmers
version: V2J35S26
serial: 0671FF373654393143244522
flash: 1048576 (pagesize: 16384)
sram: 196608
chipid: 0x413
dev-type: STM32F4x5_F4x7
```
## ENV工具
使用Git拉取RT-Thread配套的linux开发环境并添加Shell变量。我使用的是fish你也可以用其他的Shell命令有所不同。
```
git clone https://github.com/RT-Thread/env.git ~/env
set -x PATH $PATH ~/env
fish_add_path ~/env
echo $PATH
type pkgs
```
## PKG工具
由于该项目大量使用Python所以需要PKG包支持。首先我们修改这个文件的交叉工具链部分
```
#修改 rtconfig.py
# cross_tool provides the cross compiler
# EXEC_PATH is the compiler execute path, for example, CodeSourcery, Keil MDK, IAR
import os
if CROSS_TOOL == 'gcc':
PLATFORM = 'gcc'
if os.name == 'nt':
# Windows 平台
EXEC_PATH = r'C:\Users\XXYYZZ'
else:
# Linux / macOS 平台
EXEC_PATH = '/usr/bin'
elif CROSS_TOOL == 'keil':
PLATFORM = 'armclang' # KEIL AC6
# PLATFORM = 'armcc' # KEIL AC5
EXEC_PATH = r'C:/Keil_v5'
elif CROSS_TOOL == 'iar':
PLATFORM = 'iccarm'
EXEC_PATH = r'C:/Program Files (x86)/IAR Systems/Embedded Workbench 8.3'
elif CROSS_TOOL == 'llvm-arm':
PLATFORM = 'llvm-arm'
if os.name == 'nt':
EXEC_PATH = r'D:\Progrem\LLVMEmbeddedToolchainForArm-17.0.1-Windows-x86_64\bin'
else:
EXEC_PATH = '/usr/bin'
```
随后可以使用PKG初始化并安装两个必要的包
```
pkgs --update
pip install kconfiglib
pip install scons
```
## 编译
在完成以上设置之后我们可以开始编译。STM32使用scons编译系统同样是menuconfig命令
```
scons --menuconfig
```
修改配置并保存退出后即可开始编译,$(nproc)代表使用全部CPU线程来编译
```
scons -j$(nproc)
```
## 烧入
编译成功后你应该会看到有一个rtthread.bin在目录下这就是我们编译出来的系统
在烧入之前,我们可以备份一下原来的系统:
```
st-flash read firmware_backup.bin 0x08000000 0x100001
```
随后使用如下命令烧入系统:
```
st-flash write rtthread.bin 0x08000000
```
## 串口
除了USB之外我们还可以使用串口连接
```
sudo apt install picocom
picocom -b 115200 /dev/ttyACM0
version
```
可以使用``ctrl + A 然后 ctrl + x``退出。
---
**Done.**

View File

@@ -184,6 +184,13 @@
</a>
</span>
<span class="button next">
<a href="https://blog.dich.bid/linux-2-stm32/">
<span class="button__text">Linux-STM32开发环境部署</span>&nbsp;
<span class="button__icon"></span>
</a>
</span>
</div>
</div>

View File

@@ -110,6 +110,16 @@
<ul><li class="post-list">
<a href="https://blog.dich.bid/linux-2-stm32/">
<span class="post-date">2025-07-20</span>
:: <span class="post-list-title">Linux-STM32开发环境部署</span></a>
<span class="post-tags-inline">
::
<a class="post-tag" href="https://blog.dich.bid/tags/linux/">#Linux</a></span>
</li>
<li class="post-list">
<a href="https://blog.dich.bid/about-sports/">
<span class="post-date">2025-07-05</span>
:: <span class="post-list-title">乱七八糟:运动健身基本理论</span></a>
@@ -572,7 +582,7 @@
<li class="post-list">
<a href="https://blog.dich.bid/linux-1-command/">
<span class="post-date">2023-07-20</span>
:: <span class="post-list-title">Linux下的命令行操控</span></a>
:: <span class="post-list-title">Linux-命令行操控</span></a>
<span class="post-tags-inline">
::

View File

@@ -6,8 +6,28 @@
<link rel="self" type="application/atom+xml" href="https://blog.dich.bid/atom.xml"/>
<link rel="alternate" type="text/html" href="https://blog.dich.bid"/>
<generator uri="https://www.getzola.org/">Zola</generator>
<updated>2025-07-05T00:00:00+00:00</updated>
<updated>2025-07-20T00:00:00+00:00</updated>
<id>https://blog.dich.bid/atom.xml</id>
<entry xml:lang="en">
<title>Linux-STM32开发环境部署</title>
<published>2025-07-20T00:00:00+00:00</published>
<updated>2025-07-20T00:00:00+00:00</updated>
<author>
<name>
Unknown
</name>
</author>
<link rel="alternate" type="text/html" href="https://blog.dich.bid/linux-2-stm32/"/>
<id>https://blog.dich.bid/linux-2-stm32/</id>
<summary type="html">&lt;p&gt;前言 本文记录STM32命令行开发环境在Ubuntu上的部署用以替代Windows上的RT-Thread-studio。RT-Thread同样是开源
软件但目前似乎没有Nixos上的打包。&lt;&#x2F;p&gt;</summary>
</entry>
<entry xml:lang="en">
<title>乱七八糟:运动健身基本理论</title>
<published>2025-07-05T00:00:00+00:00</published>
@@ -1282,7 +1302,7 @@
</entry>
<entry xml:lang="en">
<title>Linux下的命令行操控</title>
<title>Linux-命令行操控</title>
<published>2023-07-20T00:00:00+00:00</published>
<updated>2023-07-20T00:00:00+00:00</updated>

View File

@@ -421,7 +421,7 @@
<span class="button previous">
<a href="https://blog.dich.bid/linux-1-command/">
<span class="button__icon"></span>&nbsp;
<span class="button__text">Linux下的命令行操控</span>
<span class="button__text">Linux-命令行操控</span>
</a>
</span>

View File

@@ -107,6 +107,40 @@
<div class="posts">
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/linux-2-stm32/">Linux-STM32开发环境部署</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2025-07-20
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/linux/">#Linux</a></span>
<div class="post-content">
<p>前言 本文记录STM32命令行开发环境在Ubuntu上的部署用以替代Windows上的RT-Thread-studio。RT-Thread同样是开源
软件但目前似乎没有Nixos上的打包。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/linux-2-stm32/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/about-sports/">乱七八糟:运动健身基本理论</a></h1>
<div class="post-meta-inline">
@@ -235,39 +269,6 @@
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/about-lazyvim/">乱七八糟:lazyvim快速上手</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2025-04-20
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/luan-qi-ba-zao/">#乱七八糟</a></span>
<div class="post-content">
<p>前言 LazyVim 是一个基于 Neovim 的现代化配置框架,易于定制和扩展,这里对其介绍并说明使用方法。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/about-lazyvim/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="pagination">
<div class="pagination__buttons">

View File

@@ -106,7 +106,7 @@
<div class="post" data-pagefind-body>
<h1 class="post-title"><a href="https://blog.dich.bid/linux-1-command/">Linux下的命令行操控</a></h1>
<h1 class="post-title"><a href="https://blog.dich.bid/linux-1-command/">Linux-命令行操控</a></h1>
<div class="post-meta-inline">
<span class="post-date">

View File

@@ -0,0 +1,264 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Dich&#x27;s Blog</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="robots" content="noodp"/>
<!-- 字体预加载 - 减少布局偏移 CLS -->
<link rel="preload" href="https://blog.dich.bid/fonts/hack-regular.woff2?sha=3114f1256" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="https://blog.dich.bid/fonts/hack-bold.woff2?sha=3114f1256" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="https://blog.dich.bid/fonts/hack-italic.woff2?sha=3114f1256" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="https://blog.dich.bid/fonts/hack-bolditalic.woff2?sha=3114f1256" as="font" type="font/woff2" crossorigin>
<link rel="stylesheet" href="https://blog.dich.bid/style.css">
<link rel="stylesheet" href="https://blog.dich.bid/color/blue.css">
<link rel="stylesheet" href="https://blog.dich.bid/font-hack-subset.css">
<meta name="description" content="">
<meta property="og:description" content="">
<meta property="og:title" content="Dich's Blog">
<meta property="og:type" content="article">
<meta property="og:url" content="https://blog.dich.bid/linux-2-stm32/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:description" content="">
<meta name="twitter:title" content="Dich's Blog">
<meta property="twitter:domain" content="blog.dich.bid">
<meta property="twitter:url" content="https://blog.dich.bid/linux-2-stm32/">
<link rel="alternate" type="application/atom+xml" title="Dich&#x27;s Blog Atom Feed" href="https://blog.dich.bid/atom.xml" />
<link rel="shortcut icon" type="image/webp" href="/dich.webp">
<!-- ✅ Added center alignment styles -->
<style>
.footer {
text-align: center;
padding: 1rem 0;
}
.footer__inner {
display: flex;
justify-content: center;
flex-direction: column;
align-items: center;
}
.copyright {
text-align: center;
}
</style>
</head>
<body class="">
<div class="container">
<header class="header">
<div class="header__inner">
<div class="header__logo">
<a href="https://blog.dich.bid" style="text-decoration: none;">
<div class="logo">
Dich&#x27;s Blog
</div>
</a>
</div>
</div>
<nav class="menu">
<ul class="menu__inner">
<li class="active"><a href="https://blog.dich.bid">Blog</a></li>
<li><a href="https://blog.dich.bid/archive">Archive</a></li>
<li><a href="https://blog.dich.bid/weekly">Weekly</a></li>
<li><a href="https://blog.dich.bid/tags">Tags</a></li>
<li><a href="https://blog.dich.bid/search">Search</a></li>
<li><a href="https://blog.dich.bid/links">Links</a></li>
<li><a href="https://blog.dich.bid/atom.xml">Rss</a></li>
<li><a href="https://blog.dich.bid/about">About me</a></li>
<li><a href="https://github.com/Dichgrem" target="_blank" rel="noopener noreferrer">My github</a></li>
<li><a href="https://github.com/getzola/zola" target="_blank" rel="noopener noreferrer">Zola frame</a></li>
</ul>
</nav>
</header>
<div class="content">
<div class="post" data-pagefind-body>
<h1 class="post-title"><a href="https://blog.dich.bid/linux-2-stm32/">Linux-STM32开发环境部署</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2025-07-20
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/linux/">#Linux</a></span>
<div class="post-content">
<p>前言 本文记录STM32命令行开发环境在Ubuntu上的部署用以替代Windows上的RT-Thread-studio。RT-Thread同样是开源
软件但目前似乎没有Nixos上的打包。</p>
<span id="continue-reading"></span><h2 id="huan-jing">环境</h2>
<p>在ubuntu24.04中安装这些包,包括连接工具,工具链和调试器等等。</p>
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo apt update
</span><span>sudo apt install -y git python3 scons openocd stlink-tools gcc-arm-none-eabi gdb-multiarch
</span></code></pre>
<h2 id="yuan-ma">源码</h2>
<p>使用Git拉取RT-Thread开源项目</p>
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>git clone https://github.com/RT-Thread/rt-thread.git
</span></code></pre>
<h2 id="lian-jie">连接</h2>
<p>使用USB连接开发板和开发PC并使用lsusb查看是否连接成功</p>
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>lsusb
</span><span>Bus 001 Device 004: ID 0483:374b STMicroelectronics ST-LINK/V2.1
</span></code></pre>
<p>如果你和我一样使用 qemu 需要在libvirt中使用Add_hardware添加usb设备。</p>
<p>添加成功后可以使用这个命令来检测:</p>
<pre style="background-color:#151515;color:#e8e8d3;"><code><span> st-info --probe
</span><span>Found 1 stlink programmers
</span><span> version: V2J35S26
</span><span> serial: 0671FF373654393143244522
</span><span> flash: 1048576 (pagesize: 16384)
</span><span> sram: 196608
</span><span> chipid: 0x413
</span><span> dev-type: STM32F4x5_F4x7
</span></code></pre>
<h2 id="envgong-ju">ENV工具</h2>
<p>使用Git拉取RT-Thread配套的linux开发环境并添加Shell变量。我使用的是fish你也可以用其他的Shell命令有所不同。</p>
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>git clone https://github.com/RT-Thread/env.git ~/env
</span><span>set -x PATH $PATH ~/env
</span><span>fish_add_path ~/env
</span><span>echo $PATH
</span><span>type pkgs
</span></code></pre>
<h2 id="pkggong-ju">PKG工具</h2>
<p>由于该项目大量使用Python所以需要PKG包支持。首先我们修改这个文件的交叉工具链部分</p>
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>#修改 rtconfig.py
</span><span>
</span><span># cross_tool provides the cross compiler
</span><span># EXEC_PATH is the compiler execute path, for example, CodeSourcery, Keil MDK, IAR
</span><span>import os
</span><span>
</span><span>if CROSS_TOOL == &#39;gcc&#39;:
</span><span> PLATFORM = &#39;gcc&#39;
</span><span> if os.name == &#39;nt&#39;:
</span><span> # Windows 平台
</span><span> EXEC_PATH = r&#39;C:\Users\XXYYZZ&#39;
</span><span> else:
</span><span> # Linux / macOS 平台
</span><span> EXEC_PATH = &#39;/usr/bin&#39;
</span><span>
</span><span>elif CROSS_TOOL == &#39;keil&#39;:
</span><span> PLATFORM = &#39;armclang&#39; # KEIL AC6
</span><span> # PLATFORM = &#39;armcc&#39; # KEIL AC5
</span><span> EXEC_PATH = r&#39;C:/Keil_v5&#39;
</span><span>
</span><span>elif CROSS_TOOL == &#39;iar&#39;:
</span><span> PLATFORM = &#39;iccarm&#39;
</span><span> EXEC_PATH = r&#39;C:/Program Files (x86)/IAR Systems/Embedded Workbench 8.3&#39;
</span><span>
</span><span>elif CROSS_TOOL == &#39;llvm-arm&#39;:
</span><span> PLATFORM = &#39;llvm-arm&#39;
</span><span> if os.name == &#39;nt&#39;:
</span><span> EXEC_PATH = r&#39;D:\Progrem\LLVMEmbeddedToolchainForArm-17.0.1-Windows-x86_64\bin&#39;
</span><span> else:
</span><span> EXEC_PATH = &#39;/usr/bin&#39;
</span></code></pre>
<p>随后可以使用PKG初始化并安装两个必要的包</p>
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>pkgs --update
</span><span>pip install kconfiglib
</span><span>pip install scons
</span></code></pre>
<h2 id="bian-yi">编译</h2>
<p>在完成以上设置之后我们可以开始编译。STM32使用scons编译系统同样是menuconfig命令</p>
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>scons --menuconfig
</span></code></pre>
<p>修改配置并保存退出后即可开始编译,$(nproc)代表使用全部CPU线程来编译</p>
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>scons -j$(nproc)
</span></code></pre>
<h2 id="shao-ru">烧入</h2>
<p>编译成功后你应该会看到有一个rtthread.bin在目录下这就是我们编译出来的系统</p>
<p>在烧入之前,我们可以备份一下原来的系统:</p>
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>st-flash read firmware_backup.bin 0x08000000 0x100001
</span></code></pre>
<p>随后使用如下命令烧入系统:</p>
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>st-flash write rtthread.bin 0x08000000
</span></code></pre>
<h2 id="chuan-kou">串口</h2>
<p>除了USB之外我们还可以使用串口连接</p>
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo apt install picocom
</span><span>picocom -b 115200 /dev/ttyACM0
</span><span>version
</span></code></pre>
<p>可以使用<code>ctrl + A 然后 ctrl + x</code>退出。</p>
<hr />
<p><strong>Done.</strong></p>
</div>
<div class="pagination">
<div class="pagination__title">
<span class="pagination__title-h">Thanks for reading! Read other posts?</span>
<hr />
</div>
<div class="pagination__buttons">
<span class="button previous">
<a href="https://blog.dich.bid/about-sports/">
<span class="button__icon"></span>&nbsp;
<span class="button__text">乱七八糟:运动健身基本理论</span>
</a>
</span>
</div>
</div>
</div>
</div>
<footer class="footer">
<div class="footer__inner">
<div class="copyright">
<span>©
2025
Dichgrem</span>
<span class="copyright-theme">
<span class="copyright-theme-sep"> :: CC BY-SA 4.0 :: A friend comes from distant lands</span>
</a>
</span>
</div>
</div>
</footer>
</div>
</body>
</html>

View File

@@ -107,6 +107,39 @@
<div class="posts">
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/awesome-pve-mcsm/">综合工程:PVE安装与MC服务器搭建</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2023-08-11
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/zong-he-gong-cheng/">#综合工程</a></span>
<div class="post-content">
<p>前言 假期将至不少家里有闲置设备的小伙伴想尝试开设一个我的世界Minecraft服务器却不知从何下手。本文以 PVE-Debian-MCSM 为主线介绍其部署流程。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/awesome-pve-mcsm/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/awesome-vm-android/">综合工程:linux搭建安卓虚拟机</a></h1>
<div class="post-meta-inline">
@@ -140,7 +173,7 @@
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/linux-1-command/">Linux下的命令行操控</a></h1>
<h1 class="post-title"><a href="https://blog.dich.bid/linux-1-command/">Linux-命令行操控</a></h1>
<div class="post-meta-inline">
<span class="post-date">

View File

@@ -107,6 +107,39 @@
<div class="posts">
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/about-lazyvim/">乱七八糟:lazyvim快速上手</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2025-04-20
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/luan-qi-ba-zao/">#乱七八糟</a></span>
<div class="post-content">
<p>前言 LazyVim 是一个基于 Neovim 的现代化配置框架,易于定制和扩展,这里对其介绍并说明使用方法。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/about-lazyvim/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/network-aria2/">下载系列(3):Aria2使用指南</a></h1>
<div class="post-meta-inline">
@@ -235,39 +268,6 @@
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/about-gfs/">乱七八糟:GFS项目考量笔记</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2025-03-18
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/luan-qi-ba-zao/">#乱七八糟</a></span>
<div class="post-content">
<p>前言 最近nekoray项目归档,考量新的singbox前端时发现这个项目不错,不过在Arch linux中运行有一些小问题,这里做个总结。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/about-gfs/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="pagination">
<div class="pagination__buttons">

View File

@@ -107,6 +107,39 @@
<div class="posts">
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/about-gfs/">乱七八糟:GFS项目考量笔记</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2025-03-18
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/luan-qi-ba-zao/">#乱七八糟</a></span>
<div class="post-content">
<p>前言 最近nekoray项目归档,考量新的singbox前端时发现这个项目不错,不过在Arch linux中运行有一些小问题,这里做个总结。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/about-gfs/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/network-frp/">网络艺术:FRP使用指南</a></h1>
<div class="post-meta-inline">
@@ -235,39 +268,6 @@
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/about-2024/">乱七八糟:2024年度总结</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2025-01-04
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/luan-qi-ba-zao/">#乱七八糟</a></span>
<div class="post-content">
<p>前言 又是新的一年,时间流速感觉越来越快了。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/about-2024/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="pagination">
<div class="pagination__buttons">

View File

@@ -107,6 +107,39 @@
<div class="posts">
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/about-2024/">乱七八糟:2024年度总结</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2025-01-04
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/luan-qi-ba-zao/">#乱七八糟</a></span>
<div class="post-content">
<p>前言 又是新的一年,时间流速感觉越来越快了。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/about-2024/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/about-virtual/">乱七八糟:虚拟化常用设置与操作</a></h1>
<div class="post-meta-inline">
@@ -235,39 +268,6 @@
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/windows-5-py/">Windows系列(5):Python开发配置</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2024-05-31
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/windows/">#Windows</a></span>
<div class="post-content">
<p>前言 由于 Windows 中开发环境较 linux 复杂,这里总结 Windows 中使用 Jupyter 开发 Python 的环境配置。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/windows-5-py/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="pagination">
<div class="pagination__buttons">

View File

@@ -107,6 +107,39 @@
<div class="posts">
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/windows-5-py/">Windows系列(5):Python开发配置</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2024-05-31
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/windows/">#Windows</a></span>
<div class="post-content">
<p>前言 由于 Windows 中开发环境较 linux 复杂,这里总结 Windows 中使用 Jupyter 开发 Python 的环境配置。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/windows-5-py/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/windows-6-c/">Windows系列(6):C&#x2F;C++开发配置</a></h1>
<div class="post-meta-inline">
@@ -235,39 +268,6 @@
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/windows-1-install/">Windows系列(1):系统安装与设置</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2024-05-24
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/windows/">#Windows</a></span>
<div class="post-content">
<p>前言 由于厂商默认安装windows家庭版导致各种问题频发,这里对 widnows 安装做一个总结以及附上我个人的windows配置。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/windows-1-install/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="pagination">
<div class="pagination__buttons">

View File

@@ -107,6 +107,39 @@
<div class="posts">
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/windows-1-install/">Windows系列(1):系统安装与设置</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2024-05-24
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/windows/">#Windows</a></span>
<div class="post-content">
<p>前言 由于厂商默认安装windows家庭版导致各种问题频发,这里对 widnows 安装做一个总结以及附上我个人的windows配置。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/windows-1-install/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/about-shortcut-key/">乱七八糟:常用实用快捷键</a></h1>
<div class="post-meta-inline">
@@ -235,39 +268,6 @@
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/network-how-email-works-2/">网络艺术:自建域名邮箱</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2024-02-22
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/network/">#Network</a></span>
<div class="post-content">
<p>前言 poste.io 邮件服务基于 Docker 搭建,用的是 Haraka + Dovecot + SQLite 邮件系统,占用资源较少,安装简单,适合个人使用。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/network-how-email-works-2/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="pagination">
<div class="pagination__buttons">

View File

@@ -107,6 +107,39 @@
<div class="posts">
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/network-how-email-works-2/">网络艺术:自建域名邮箱</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2024-02-22
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/network/">#Network</a></span>
<div class="post-content">
<p>前言 poste.io 邮件服务基于 Docker 搭建,用的是 Haraka + Dovecot + SQLite 邮件系统,占用资源较少,安装简单,适合个人使用。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/network-how-email-works-2/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/network-how-email-works-1/">网络艺术:电子邮件的工作原理</a></h1>
<div class="post-meta-inline">
@@ -235,39 +268,6 @@
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/about-git/">乱七八糟:Git使用简明手册</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2023-12-15
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/luan-qi-ba-zao/">#乱七八糟</a></span>
<div class="post-content">
<p>前言 Git作为现代软件开发中不可或缺的版本控制工具常常让初学者感到困惑。本文旨在介绍 Git 的全流程安装和基本使用,希望能够帮助新手更轻松地理解和掌握 Git 的基本概念和操作。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/about-git/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="pagination">
<div class="pagination__buttons">

View File

@@ -107,6 +107,39 @@
<div class="posts">
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/about-git/">乱七八糟:Git使用简明手册</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2023-12-15
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/luan-qi-ba-zao/">#乱七八糟</a></span>
<div class="post-content">
<p>前言 Git作为现代软件开发中不可或缺的版本控制工具常常让初学者感到困惑。本文旨在介绍 Git 的全流程安装和基本使用,希望能够帮助新手更轻松地理解和掌握 Git 的基本概念和操作。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/about-git/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/about-junk-cleanup/">乱七八糟:垃圾清理的艺术</a></h1>
<div class="post-meta-inline">
@@ -235,39 +268,6 @@
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/about-calling-cards/">乱七八糟:流量卡购买与套路</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2023-08-24
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/luan-qi-ba-zao/">#乱七八糟</a></span>
<div class="post-content">
<p>前言 由于临近升学,校园网不尽人意,因此许多小伙伴有了买一张流量卡的计划。本文以三大运营商为例,说明常见流量卡的套路与选择。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/about-calling-cards/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="pagination">
<div class="pagination__buttons">

View File

@@ -107,6 +107,39 @@
<div class="posts">
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/about-calling-cards/">乱七八糟:流量卡购买与套路</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2023-08-24
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/luan-qi-ba-zao/">#乱七八糟</a></span>
<div class="post-content">
<p>前言 由于临近升学,校园网不尽人意,因此许多小伙伴有了买一张流量卡的计划。本文以三大运营商为例,说明常见流量卡的套路与选择。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/about-calling-cards/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/awesome-arch-linux/">综合工程:Arch-linux 安装与配置</a></h1>
<div class="post-meta-inline">
@@ -235,39 +268,6 @@
</div>
</div>
<div class="post on-list">
<h1 class="post-title"><a href="https://blog.dich.bid/awesome-pve-mcsm/">综合工程:PVE安装与MC服务器搭建</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2023-08-11
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/zong-he-gong-cheng/">#综合工程</a></span>
<div class="post-content">
<p>前言 假期将至不少家里有闲置设备的小伙伴想尝试开设一个我的世界Minecraft服务器却不知从何下手。本文以 PVE-Debian-MCSM 为主线介绍其部署流程。</p>
</div>
<div>
<!-- &#xFE0E; -- force text style - some devices render this as emoji -->
<a class="read-more button" href="https://blog.dich.bid/awesome-pve-mcsm/">
<span class="button__text">Read more</span>&nbsp;
<span class="button__icon">&#8617;&#xFE0E;</span>
</a>
</div>
</div>
<div class="pagination">
<div class="pagination__buttons">

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1 +1 @@
{"version":"1.3.0","languages":{"en":{"hash":"en_e8a79abe26","wasm":"en","page_count":76}}}
{"version":"1.3.0","languages":{"en":{"hash":"en_9266dc702c","wasm":"en","page_count":77}}}

Binary file not shown.

View File

@@ -145,6 +145,10 @@
<loc>https://blog.dich.bid/linux-1-command/</loc>
<lastmod>2023-07-20</lastmod>
</url>
<url>
<loc>https://blog.dich.bid/linux-2-stm32/</loc>
<lastmod>2025-07-20</lastmod>
</url>
<url>
<loc>https://blog.dich.bid/network-aria2/</loc>
<lastmod>2025-04-15</lastmod>

View File

@@ -113,7 +113,7 @@
<li class="tag-list">
<a href="https://blog.dich.bid/tags/linux/">
Linux (1 post)
Linux (2 posts)
</a>
</li>

View File

@@ -110,7 +110,7 @@ Dich&#x27;s Blog</title>
<div class="post">
<h1 class="post-title">
tag: #Linux
(1 post)
(2 posts)
</h1>
<a href="https://blog.dich.bid/tags">
@@ -119,9 +119,19 @@ Dich&#x27;s Blog</title>
<ul><li class="post-list">
<a href="https://blog.dich.bid/linux-2-stm32/">
<span class="post-date">2025-07-20</span>
:: <span class="post-list-title">Linux-STM32开发环境部署</span></a>
<span class="post-tags-inline">
::
<a class="post-tag" href="https://blog.dich.bid/tags/linux/">#Linux</a></span>
</li>
<li class="post-list">
<a href="https://blog.dich.bid/linux-1-command/">
<span class="post-date">2023-07-20</span>
:: <span class="post-list-title">Linux下的命令行操控</span></a>
:: <span class="post-list-title">Linux-命令行操控</span></a>
<span class="post-tags-inline">
::