分析家里局域网 WiFI 瓶颈

目前我的情况是,家中有一个千兆主路由放在客厅接外面的宽带,而我自己的房间有一台比较老的 Netgear 3800 路由来无线桥接连接外面的主路由,因为我不想我的 3800 路由中的设备暴露到主路由的设置中,所以用了 OpenWrt 的桥接模式。但是随着我在 3800 这台路下接的设备增多,导致目前 3800 这台路由不堪重负,已经影响到了我日常 streaming 局域网 NAS 中的电影。所以最近想更换一下这台已经 8 年历史的 WNDR 3800 路由器。 首先我了解了一下,WNDR3800 标称的是 300Mbps 双频千兆路由器,WiFi 下 Read more ...

2020-03-31 router , bandwidth , wifi , network

GitLab CI 使用笔记

CI/CD 不必多说。 CI/CD 解决的问题: 重复劳动 等待时间 手工出错 基本概念 gitlab CI 依赖于项目根目录中定义的 .gitlab-ci.yml 文件,这个文件定义了 GitLab CI 应该做的事情。每次提交代码 GitLab 会检查该文件,然后将该文件定义的内容提交给 GitLab Runner 执行。 CI/CD CI : Continuous integration,持续集成,代码有改动时触发编译、测试、打包等一系列构建操作,最后生成一个可部署的构件。指开发⼈人员在特定分⽀支(频繁)提交代码 Read more ...


使用命令行远程网络唤起主机

在 Linux 下可以通过 etherwake 命令来网络唤醒设备。 sudo apt install etherwake 检查主机是否支持网络远程唤醒 首先检查 BIOS 中设置,Wake on LAN 是否开启。一般在 BIOS > Power Management > “Wake On LAN” 这个选项下。然后重启进入系统,用如下命令查看网卡 eth0 是否开启了 Wake on LAN: ethtool eth0 输出: Settings for eth0: Supported ports: [ TP ] Su Read more ...


Cloud-init 初始化虚拟机配置

在安装 Proxmox 后在它的文档中了解到了 cloud-init。所以就来梳理一下,什么是 cloud-init,它解决了什么实际问题,以及最重要的它该怎么用。 cloud-init 是什么 cloud-init 是一套工业标准为的是统一不同操作系统发行版在跨平台的云端服务器上初始化安装的流程。 cloud-init 是运行在 Guest machine 中,并在初始化时将一些自定义的配置应用到 Guest machine 中的应用程序。想象一下,假如你是一个云主机提供商,每天都需要为客户初始化成千上万台虚拟主机,这些机器可能使用不用的操作系统,可 Read more ...


BitTorrent 协议中的 BenCode 编码

在了解 BitTorrent 协议的时候,想着 .torrent 文件是如何生成的,所以就找了几个 CLI,比如 transmission-cli 和 mktorrent这两个开源的制作 torrent 文件的开源项目,发现他们就是按照一种约定的格式来生成文件。而这个约定的结构中就少不了现在要谈的 BenCode 编码。 BitTorrent 协议使用 .torrent 文件来描述资源信息。.torrent 文件使用一套 BenCode 编码来对信息进行描述。 What is BenCode BenCode 是用于编码 torrent 文件的一种编码 Read more ...

2020-03-28 bittorrent , bencode , encode , encoding

在 Proxmox VE 上使用 qm 命令管理虚拟机

qm 是 [[Proxmox VE]] 系统上用来管理 Qemu/Kvm 虚拟机的命令。可以用这个命令来创建,销毁虚拟机,也可以用它来控制虚拟机的启动,暂停,继续和停止。另外也可以用 qm 命令来设定虚拟机的配置。qm 命令也可以用来创建和删除虚拟磁盘 (virtual disks). Usage 使用已经上传到 local storage 的 iso 文件来在 local-lvm storage 上创建一个 4G IDE 的虚拟磁盘。 qm create 300 -ide0 local-lvm:4 -net0 e1000 -cdrom local: Read more ...

2020-03-25 proxmox , pve , linux , debian , qm , vm

如何根据自身情况选购硬盘

因为加入了一些 PT 的关系,本地的硬盘空间立即捉襟见肘,毕竟有些蓝光原盘动不动就 40+GB,所以陆陆续续给威联通也加了一些硬盘,之前一直买的是酷狼的 4T 盘,但是用了一年快两年的样子竟然挂了,这是我最初买的那一块所以也折腾了一下,因为系统和一些配置都在这一块盘上。所以强烈建议重要资料一定多处备份,不仅需要通过本地冗余备份,最好也多地备份,比如本地和其他云端备份服务实时同步。 再回到这次的主题,关于如何选购一块硬盘。打开京东能看到主流的硬盘厂商提供了种类丰富的各种用途的磁盘。但对于消费者而言,很多人其实并不知道其中的具体技术细节。很多人可能知道酷狼 Read more ...

2020-03-25 hard-drive , computer , ssd , hdd , guide , data-storage

如何查找链到某个链接的页面

有的时候想要查看一个网页有多少其他的页面链接过来,这个搜索语法似乎在 Google 上没见过,平时用的比较多语法也就是用 site: 来查看某个站点中的关键字。 那有什么方法可以查看某一个页面有谁链接过来了呢? Google Search Console 在 Google Search Console 中可以查看到: Search Console > choose your property > Links > External links > Top linking sites ahrefs ahrefs 是一个逆向链 Read more ...

2020-03-25 backlink , google , link , search-tip , tip , skill

Proxmox VE 设定直通硬盘

之前的文章讲了 Proxmox VE 的安装,以及在此基础上又安装了 OpenMediaVault,现在我的机器上一共三块硬盘,120G SSD 安装了系统,并作为默认的 lvm,放一些 ISO,以及存放一些系统盘,另外的 1T 准备做 Proxmox 相关的数据盘,而剩下的一块 4T 盘想要直通给 OpenMediaVault 做数据盘。所以就产生了这样的一个需求。 首先在设定之前,需要知道 Linux 下的硬盘都会以文件方式存放在 /dev/disk/by-id/ 目录下。 查看硬件设备 安装: apt install lshw 查看: Read more ...

2020-03-22 proxmox , pve , virtual , linux , debian

OpenMediaVault 初始化设置

OpenMediaVault,是一个开源的基于 Debian Linux 的下一代网络附加存储 (NAS) 解决方案。 关于 NAS 系统的选择可以参考这篇文章. 默认用户名和密码 OpenMediaVault 安装后的 Web UI,默认的用户名和密码是: admin openmediavault 登陆后进行修改。 ssh 登录 Web UI 的用户名是 admin,但是 SSH 的用户名是 root 安装必要的 package apt install dnsutils htop 镜像源 如果安装的时候没有选择国内的镜像源,可以手动 Read more ...


最近文章

  • herdr 一个窗口调度多个 Coding Agent 什么是 Herdr
  • Claude Code 第三方 API 代理配置 Headroom 最近在给自己的 AI 编程工作流加入 [[Headroom]] 上下文压缩工具时,遇到了一个需要特别注意的配置问题。相信有不少人和我一样,为了降低成本或者改善访问体验,已经在 [[Claude Code]] 或 [[Codex]] 里配置了第三方 API 代理,比如一些第三方聚合平台或者自建的转发服务。这时候想再套上一层 Headroom 做 Token 压缩,就需要特别注意配置细节,不然两层代理会打架。
  • Headroom:让 AI Agent 少花冤枉钱的上下文压缩工具 最近一段时间我在深度使用 [[Claude Code]] 做开发工作,用得越多,账单就越触目惊心。一次稍微复杂一点的任务,比如让它读取几个文件、搜索一下代码、跑一下测试,轻轻松松就能烧掉超过 100K 的 Token。更让人无奈的是,这 100K 里面有相当大一部分是重复冗余的内容——工具调用的输出、日志、搜索结果,它们被原封不动地塞进上下文,再一次次地发给模型,而模型其实只需要其中很小一部分关键信息。
  • 用 Harbor 搭建私有 Docker Registry:从安装到日常使用的完整实践 我维护过几个跑在自己服务器上的小项目,构建出来的 [[Docker]] 镜像最早都是直接推到 [[Docker Hub]] 上的。用了一段时间之后开始觉得别扭:一些只在内网跑的服务镜像,没必要也不应该传到公开的仓库;Docker Hub 对匿名拉取做了限流之后,CI 流水线偶尔会因为触发了速率限制而失败;再加上想给不同的项目、不同的同事分配不同的访问权限时,公共仓库这套体系根本满足不了。折腾到后来我意识到,是时候在自己的机器上搭一个真正能用的私有镜像仓库了。
  • 用 New API 打造个人 AI 网关:统一管理所有大语言模型接口 这段时间我同时用着好几个大语言模型服务:日常写作和代码靠 [[Claude]],轻量任务交给 [[Codex]],搜索增强用 [[Antigravity]],还有几个本地跑着 [[Ollama]] 的小模型供离线场景使用。每个平台各自的 API Key 散落在项目环境变量里,月底要去好几个后台分别对账,想横向对比两个模型的输出还得打开不同的网页或客户端来回切换,很费事。