第2页·谢先斌的博客

  • OpenWrt: 可自定义的路由器

    OpenWrt 是一个针对嵌入式设备(通常是无线路由器)的高度模块化、高度自动化的 Linux 发行版。如果把你的路由器比作一台电脑,原厂固件就像是功能受限的功能机系统,而 OpenWrt 就像是 Android 或 Windows,允许你随意安装软件、修改设置、解锁全部性能。本文详细介绍 OpenWrt 的由来。

    2026-04-12 network openwrtrouter
  • Gitlab Rails Console

    gitlab-rails console 是 GitLab 管理员和运维人员非常强大的一个工具。它是 GitLab 底层 Ruby on Rails 框架提供的交互式命令行终端(Rails Console)。

  • Pybind11: C++ 转 Python Bindings

    Pybind11 是一个轻量级的只包含头文件(header-only)的 C++ 库,它的主要功能是将 C++ 代码暴露给 Python(即为 C++ 编写 Python 绑定),反之亦然。

    2026-04-05 python pythoncpppybind
  • SSH Agent: 私钥管理

    ssh-agent 是 Linux/Unix 系统中非常实用的一个后台程序。它的主要作用是在内存中安全地保存你的 SSH 私钥(及其密码)

    2026-04-04 linux linuxsshagentkey
  • samber/do: Go 泛型 DI

    github.com/samber/do 是 Go 语言生态中一个非常受欢迎的依赖注入(Dependency Injection, 简称 DI)工具包。它基于 Go 1.18+ 引入的**泛型(Generics)**特性构建,旨在为 Go 开发者提供一个类型安全、轻量级且功能丰富的依赖注入解决方案。

  • Gitlab bundle 格式介绍

    在 GitLab 的备份文件(那个巨大的 .tar 包)中,如果你将其解压,会在 repositories/ 目录下看到大量以 .bundle 结尾的文件。简单来说,.bundle 文件就是你的 Git 代码仓库的“单文件压缩包”。它是 Git 官方提供的一种标准离线打包格式。

  • Docker 部署 Kafka (KRaft 模式)

    随着 Kafka 3.3+ 版本的发布,KRaft 模式(去 ZooKeeper 模式) 已经成为生产就绪的标准。本文介绍基于 Docker Compose 部署 3 节点 Kafka KRaft 集群 的方案,以及生产环境中高频使用的维护命令。

  • Rclone: 支持S3云存储界命令行工具

    rclone 是一款管理云存储文件的命令行程序,它支持几十种云存储(如 Google Drive, OneDrive, Amazon S3, WebDAV, 阿里云盘等)

  • PM2: Node.js 进程管理

    PM2 (Process Manager 2) 是 Node.js 应用程序的一个带有内置负载均衡器的生产级进程管理器

    2026-02-23 nodejs nodejspm2
  • AppImage: Linux app 发行格式

    AppImage 是一种用于在 Linux 系统上分发便携式软件的格式。AppImage 格式提供了一种简单、便携且不依赖系统库版本的方式,让用户在各种 Linux 发行版上运行软件。

    2026-02-22 linux linuxappAppImage
  • python `__main__.py` 文件介绍

    在 Python 中,包(目录)下的 __main__.py 文件有着非常明确且特殊的含义:**它允许你将一个 Python 包(Package)当作一个独立的脚本直接在命令行中运行。**简单来说,它是包的“执行入口”

    2026-02-21 python pythonmaininit
  • Linux umask 介绍

    umask (User file-creation mode mask,用户文件创建权限掩码) 是 Linux/Unix 系统中一个非常重要的安全概念。它决定了用户在创建新文件或新目录时的默认基础权限umask 就像一个“过滤器”,它告诉操作系统**“在创建文件/目录时,默认要拿掉哪些权限”**。

    2026-02-20 linux linuxumask
  • DRBD + Pacemaker + Corosync 实现 GitLab 高可用

    本文介绍基于 DRBD + Pacemaker + Corosync 实现 GitLab 高可用(High Availability, HA)的经典架构。该架构通常是一个 Active/Passive (主/备) 架构。只有一台机器(主节点)运行 GitLab 服务并挂载存储,另一台机器(备节点)实时同步数据。当主节点宕机,备节点会自动接管 VIP(虚拟IP)、挂载存储并启动服务。

  • iSCSI 存储网络完整指南

    本文是一份完整的 iSCSI 存储网络技术指南,涵盖了从基础概念到实际部署的全部内容。文章首先介绍了 SCSI 和 iSCSI 的基本概念及其关系,然后详细说明了 Linux 环境下的三大核心组件:LIO Target(服务器端框架)、targetcli(配置管理工具)和 Open-iSCSI(客户端实现)。文档提供了完整的 Ubuntu 部署示例,包括服务器端的 Target 配置、CHAP 认证设置,以及客户端的发现、连接和使用流程。通过本文,读者可以掌握利用现有以太网基础设施构建低成本、高性能存储区域网络(SAN)的完整方法。

  • .gitlab-ci.yml 简介

    .gitlab-ci.yml 是 GitLab CI/CD 的核心配置文件,它告诉 GitLab Runner 具体要执行什么操作。

    2026-02-16 git gitgitlabci
  • Docusaurus 静态网站生成

    Docusaurus 是 Meta(前 Facebook)开源的一款静态网站生成器,专为编写高质量的文档网站而设计。支持一键生成一个包含文档、博客、版本控制和自定义页面的完整网站骨架。

  • Ansible Lint 常见问题 FAQ

    Ansible Lint 常见问题与修复指南 (FAQ)

    2026-02-14 ansible ansiblelintfaq
  • Claude Code Project Manager 使用

    CCPM (Claude Code Project Manager) 是一个专为 Claude Code(Anthropic 推出的命令行 AI 编程工具)设计的项目管理框架和工作流系统。其核心目标是解决 AI 辅助编程中常见的“上下文丢失”、“任务混乱”和“难以协作”等痛点。

  • OpenClaw: AI 数字机器人介绍

    OpenClaw(曾用名 Clawdbot、Moltbot)是一个开源、自托管的 AI 智能体(Agent)系统。它不仅仅是一个聊天机器人,更像是一个拥有“手脚”的 24/7 全天候数字员工。本文是关于 OpenClaw 的详细介绍、安装部署及配置指南。

  • Bun: 运行JavaScript 和TypeScript 应用程序的集成工具包

    Bun 发布于 2022 年(1.0 版本于 2023 年发布),由 Jarred Sumner 开发。它的目标是替代 Node.js,并解决 Node.js 长期以来的性能瓶颈和工具链碎片化问题。

    2026-02-07 nodejs nodejsbun