HomeLab:中年男人的快乐源泉
未读中年男人的三大爱好:充电头、NAS、软路由。这三大爱好不仅为我们的生活带来了便利,也成为了我们生活的一部分(🤡)。 作为一个软件开发者,我一直梦想着拥有自己的服务器,而 NAS 和软路由则是我通往这个梦想的桥梁。 自从购买了我的第一台 NAS 以来,便打开了一扇新世界的大门。NAS,即网络附加存储(Network Attached Storage),它不仅提供了一个安全的数据存储解决方案,还让我能够实现数据的备份和共享。随着时间的推移,我陆续购买了其他硬件产品,如软路由器、服务器等,逐步搭建起了属于我的 HomeLab。 今天,我想和大家分享一下我搭建 HomeLab 的过程,希望能够帮助到那些同样有志于搭建 HomeLab 的朋友。在接下来的博客文章中,我将详细介绍如何选购合适的 NAS 设备、软路由器以及服务器,并分享我在搭建过程中遇到的挑战和解决方案。 HomeLab 并非遥不可及,只要我们用心去探索和实践,就能开启属于自己的个人云端实验室之旅。让我们一起学习、交流和成长,共同打造一个属于我们的数字王国。 前提说明虽然关于 HomeLab 的文章已经很多了,但我还是想记录下自 ...
简介安装完成后 IP 不对启动后出现了一张 vmbr0 网卡, 这个是桥接网卡, 可以查看绑定的物理网卡: 1ip link show master vmbr0 修改一下 3 个文件: 12345678910111213141516171819202122232425# /etc/network/interfacesauto loiface lo inet loopbackiface enp92s0 inet manualauto vmbr0iface vmbr0 inet static address 192.168.100.100/24 gateway 192.168.100.1 bridge-ports enp92s0 bridge-stp off bridge-fd 0# /etc/issueWelcome to the Proxmox Virtual Environment. Please use your web browser toconfigure this server - connect to: https://192.168.100.100:8006/ ...
HomeLab:中年男人的快乐源泉
未读简介家中的服务器有 3 台全部安装的是 Ubuntu, 有时候需要折腾一下. 所以想用一个文档来记录 Ubuntu 上遇到过的问题, 另外就是做一个备忘录, 将已操作过的记录保存下来, 以便在其他服务器上重现, 避免重复查询资料. 优化建议启用 Ubuntu ProUbuntu Pro 是 Canonical 提供的企业级专业支持服务,个人用户和小团队可免费使用(最多 5 台设备,超过需付费)。它提供了长达 10 年的安全更新支持。 1 打开「软件和更新」,切换到「Ubuntu Pro」选项卡。 2 点击「启用 Ubuntu Pro」。 3 访问 Ubuntu Pro Dashboard 拿到分配给你的Token,填入「手动添加令牌」中,然后点击「确定」。 参考 新手必备:安装 Ubuntu 24.04 LTS 后的 10 项基本建议 Landscape Server参考: Landscape 安装配置速记 系统克隆原来的系统安装在一块 PCIe Gen3 x4 的 M.2 固态上, 查阅资料得知这个插槽支持 PCIe Gen4 x4, 为了不浪费资源, 所以需要使 ...
HomeLab:中年男人的快乐源泉
未读简介前几天在 Cloudflare 上买了一个 dev 域名, 想着使用 Cloudflare 强大的 proxy 功能增加暴露到公网服务的安全性, 今天尝试了一下, 感觉基本满足要求, 下面说说折腾过程. 现状 上图是现在的流量路径: 路由器将 1000 端口的流量全部转发到雷池 WAF 所在的服务器上(192.168.1.2:1000); 雷池 WAF 的 1000 端口配置了 HTTPS 证书, 然后在反向代理到局域网内真实的服务器上; 现在的问题是可以通过暴露出去的域名得到我真实的公网 IP 地址, 虽然公网 IP 会不定期变更, 但是感觉还不是特别安全, 所以打算使用 Cloudflare 来增加安全防护. 使用 Cloudflare我这里以在外网访问家中的 NAS 为例, 方便理解. 我预期的效果为 通过 https://nas.dong4j.dev 访问家中的 NAS. 我们都知道家用宽带的 80 和 443 端口是被运营商封了的, 为了实现上面的效果, 我们需要对 CloudFlare 有个基础的了解. CloudFlare CDN 支持的端口在我们使用 ...
简介很久以前买 R2S 的时候一起买了一个 LCD 小屏幕, 一直没用起来, 这次装了个小主机, 想着看能不能废物利用一下. LCD4Linux 是一个小程序,它从内核和一些子系统抓取信息并将其显示在外部液晶显示器上。 下面是一些运行 LCD4Linux 的图片: LCD4Linux 在两个不同尺寸的显示器上 Iomega HMNHD-CE 上 的 LCD4Linux 安装 lcd4linux1$ sudo apt-get install lcd4linux 查看 USB 屏幕的设备名称 1$ lsusb 将会看到有lcd2usb interface的设备出现 12345678Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hubBus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hubBus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hubBus 003 Device ...
简介前段时间在小黄鱼上捡了 2 张移远的 EC20, 今天折腾一下这张 4G 网卡. 实战 移远 EC20 mini PCIE 模块 usb 转 mini PCIE 模块 ipex1 代转 sma 内孔转接线 sma 内针 4G 天线 加上风扇: 合体后的样子: 检查 USB 设备中是否存在 4G 模块 1234lsusbBus 001 Device 003: ID 2c7c:0125 Quectel Wireless Solutions Co., Ltd. EC25 LTE modemBus 001 Device 002: ID 2109:3431 VIA Labs, Inc. HubBus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub 获取 4G 模块 USB 转串口终端 123ls /dev/ttyUSB*/dev/ttyUSB0 /dev/ttyUSB1 /dev/ttyUSB2 /dev/ttyUSB3 ppp0 拨号第三节 树莓派 EC20 之 PPP 拨号上网_树莓派拨号上网-CS ...
简介今天折腾一下使用 TTL 连接到树莓派 Zero 2W. 串口连接是一种常用的通信方式,通常用于计算机与外部设备之间的数据传输。它是通过一根或多根电缆将设备通过串行接口连接起来,数据一位一位地按顺序传输。串口通信可以分为两种类型:RS-232 和 TTL,分别代表不同的电气标准和通信协议。 开启串口1sudo raspi-config->Interfacing options-> Serial->Yes 安装驱动macOS 14+ 后自带 CH340X 驱动, 因此直接用就可以了: 1234ls /dev/cu.*输出:cu.usbmodem57590428591 screen123brew install screen# 这里的 11520 是波特率,在树莓派上的 /boot/cmdline.txt 进行设置screen /dev/cu.usbmodem57590428591 115200 Notice执行完会进入一个空界面,此时按 Enter 键,就会出现 Raspberry Pi 的登录提示了。 将树莓派进行 shutdown 之后,如果想 ...
简介一直在使用 hexo-deploy-git 插件部署我的部署到 Github Page, 不知道最近抽什么风, Github Pages 部署一直失败. 今天有空查看了日志才发现一直使用的是 Jekyll 来编译我的静态文件, 应该是我以前的博客需要使用 Jekyll 来编译, 不过现在已经不需要了, 因为我上传的已经是 Hexo 编译后的静态文件了, 最近应该是修改了某些插件导致 Jekyll 解析 URL 出现了问题所以才暴露了这个问题. 解决方法因为我直接上传的 Hexo 编译后的今天文件, 所以只需要将静态文件通过 Github Action 拷贝到 Github Pages 即可, 所以部署应该更简单, 下面是详细过程. 修改 Pages 配置Github Pages 默认使用 Jekyll 来部署: 所以这里需要修改为使用自定义 action 来部署: 添加 action 配置12345678910111213141516171819202122232425262728293031323334353637383940414243# Simple workf ...
HomeLab:中年男人的快乐源泉
未读简介 一年前购买了一张 Tesla P40, 花了 700+, 现在已经涨价到 1500+, 显卡真的是理财产品. 年前将装在公司服务器上的的 Tesla P40 带回了家, 想着如何在家将这张卡再次利用起来, 找了一圈了最终选择使用猛兽峡谷 11 代计算卡 + 外置机箱来配合这张卡. 硬件配置我比较喜欢开放型机箱, 相比有大比笨重的传统机箱, 我更喜欢看到内部的元器件, 所以这次还是挑选的一个开放型平台: 1200W CSPS 电源 + CSPS 转接板; 猛兽峡谷 11 代, i7 11700B 计算卡; Tesla P40 显卡; 华为 SP310 双光口万兆网卡; 温控版; 其他小配件; CSPS 电源第一次玩儿 CSPS 电源, 小黄鱼有大量改装配置, 相比于传统的 SFX 电源便宜的多: CSPS 是 Common Slot Power Supply 的缩写,如今,随着 CPU 和显卡频率的增加,对于电源的需求也越来越大,而现在的好的电源非常贵,而以往 500 瓦走天下的时代已经一去不复返了,这导致玩家只能一边骂电源厂商一边当韭菜,而这时,CSPS 的优点就 ...
简介在数字化时代,一张吸引人的封面图片对于博客来说至关重要。它不仅能够提升文章的视觉效果,还能在第一时间吸引读者的注意力。制作封面的方法多种多样,从自行设计到基于现有模板进行修改,每种方式都有其独特之处。然而,如果你希望以最快捷的方式输入标题或基本信息,直接生成封面,那么在线封面生成器无疑是你的最佳选择。今天,就让我带你一起探索几款优秀的在线封面生成工具,为你的技术博客增添一抹亮色。 CoverView:开发者的首选 链接: CoverView | GitHub 仓库 CoverView 以其丰富的内置模板和图标而著称,尤其是针对编程语言的图标,这使得它成为开发者制作技术博客封面的理想工具。无论是 Java、Python 还是 React,你都能在这里找到合适的图标和模板,快速打造出专业且符合技术氛围的封面。 Cover-Image-Generator:灵活调整,创意无限 链接: Cover-Image-Generator | GitHub 仓库 虽然没有内置模板,但 Cover-Image-Generator 的灵活性却为其赢得了众多粉丝。你可以自由移动标题和副标题的位置,调 ...
前言在 AI 时代,越来越多的开发者开始使用 AI 编程助手来提升开发效率。为了让 AI 更好地理解和学习我们的技术文档,社区提出了 llms.txt 规范。本文将以开发一个生成 llms.txt 的 Hexo 插件为例,介绍 Hexo 插件开发的基本流程。 什么是 llms.txt?背景随着 ChatGPT、Claude 等大语言模型的普及,越来越多的开发者开始使用 AI 编程助手。但是这些 AI 助手在访问网站内容时,往往需要处理复杂的 HTML 结构,这不仅增加了处理成本,还可能影响理解的准确性。 llms.txt 规范llms.txt 类似于 robots.txt,它是一个专门为 AI 准备的纯文本格式的站点内容索引。通过提供结构化的纯文本内容,可以帮助 AI 更好地理解和学习网站的内容。 主要特点: 纯文本格式,易于解析 包含文章的标题、描述和链接 可选包含完整的文章内容 支持 Markdown 格式 查看本站的 llmx.txt 和 llmx-full.txt Hexo 插件开发基础插件类型Hexo 支持多种类型的插件: Generator:用于生成静态文件 ...
简介在 Docker 生态中,命令行操作虽然强大,但繁琐的命令记忆和跨终端窗口的容器管理往往让开发者头疼。Lazydocker 应运而生,这是一款基于终端的 Docker 管理工具,凭借简洁的 UI 设计和一键式操作,成为众多开发者提升效率的利器。本文将从功能、安装到实际体验,全面解析这一工具。 Lazydocker 的核心功能 一站式容器管理通过终端 UI 界面,Lazydocker 支持实时查看 Docker 容器、镜像、卷和网络的运行状态,无需在多个终端窗口切换。 快捷操作与调试 日志流分类查看:支持按服务或容器分类显示日志,快速定位问题。 一键重启/重建容器:按下快捷键即可重启、重建或删除容器,尤其适合调试服务故障。 镜像与磁盘管理:查看镜像层级结构,清理无用镜像或卷以释放磁盘空间。 自定义与扩展性用户可绑定自定义命令或快捷键,甚至通过配置文件修改界面布局,满足个性化需求。 安装指南(支持多平台)Lazydocker 支持多种安装方式,以下是主流操作系统的快速安装方法: Linux/macOS 一键脚本安装(推荐):1curl h ...
HomeLab:中年男人的快乐源泉
未读简介哪吒面板是一个开源的监控解决方案,旨在帮助用户轻松实现服务器和应用的实时监控。通过 Dashboard、Agent 以及前后台前端资源的配合,用户可以全面掌握系统运行状态。 v1.x 版本相较于老版本简化了部署方式, 我主要用于监控家中的设备, 并开放到了公网, 为了安全起见做了响应的防护, 接下来将简单介绍一下自托管与安全防控. 部署可参考 官方文档 部署, 因为我需要对前端页面做相应的修改, 所以这里选择使用源码的方式部署. 资源下载 Dashboard: nezha/releases Agent: agent/releases 后台前端资源: admin-frontend/releases 前台前端资源: nezha-dash-v1/releases 本人使用 pm2 在家中的服务器上部署, 为了简化部署就写了一键部署脚本, 所以这里需要讲一下部署包的目录结构: 1234567891011121314.├── agent # 代理服务目录, 包含代理配置和二进制文件│ ├── config.yml ...
简介一直在使用 TianliGPT 作为博客的摘要生成服务, 便宜好用. 年前爆火的 DeepSeek-R1 算是把 LLM API 的价格打下来了, 便有了替换 AI 文章摘要的想法. 其实在 使用 Node.js 开发数字名片并集成 Chat 服务 这篇文章已经将本地的 LLM API 服务搭建好了, 因为 TianliGPT 的语音播报服务无法使用, 所以一直在等 Kokoro TTS 的中文模型, 正好今天开源了, 所以又可以开始折腾了. 需求整理 使用自建 AI API 代替 TianliGPT API 来生成文章摘要; 使用 Kokoro TTS 将文章摘要生成语音并播放; 需求其实挺简单, 就是替换成部署到 HomeLab 的 API, So easy 🙉. 架构图 一、环境准备1. 技术栈概述 博客框架:Hexo AI 服务:本地部署的 LLM 以及在线免费的 LLM 服务 API, 通过 one-api 代理(替代 TianliGPT) 语音合成:Kokoro TTS 2. 硬件与软件要求 服务器环境: Mac mini M2(16G 内存), 用于部 ...