diff --git a/CHANGELOG.md b/CHANGELOG.md index 87f0d62..e087616 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -176,3 +176,11 @@ - 已将 **「Vaultwarden 密码库」** 添加至 `https://nav.961504.xyz` 导航页。 3. **极空间 20TB 每日自动备份**:编写 [`scripts/backup-to-nas.sh`](file:///Users/ixvii0iv/homelab/scripts/backup-to-nas.sh) 并注册 `~/Library/LaunchAgents/com.homelab.nas-backup.plist`(每天凌晨 03:30 自动打包备份 Vaultwarden 数据、Sun-Panel 配置与 Homelab 脚本至 `/Users/ixvii0iv/nas/个人空间/MacMini_Backups/`,自动保留最近 30 份)。 - **回滚方式**:`ssh mini "cd ~/homelab/stacks/vaultwarden && docker compose down && launchctl unload ~/Library/LaunchAgents/com.homelab.nas-backup.plist"` + +### 17. 配置全屋无线 Time Machine 备份通道(手动按需模式,关闭自动同步) +- **操作时间**:2026-11-06 23:01 ~ 23:03 +- **目标设备**:Mac mini (`192.168.31.164`) & 本机 MacBook Air (`192.168.31.83`) & 极空间 Z4 (`192.168.31.185`) +- **变更内容**: + 1. **Mac mini**:通过 `sudo tmutil setdestination -a 'smb://18549991015:***@192.168.31.185/Time%20Machine'` 绑定极空间 Z4 的 Time Machine 专用卷(ID: `32710565-7968-4D64-A437-2D78476C388C`),并执行 `sudo tmutil disable` 关闭自动定时同步,保留随时手动触发能力 (`tmutil startbackup`)。 + 2. **本机 MacBook Air**:通过 `security add-internet-password` 将极空间 `192.168.31.185` / `Z4-R8WA.local` 的 SMB 账号密码写入系统钥匙串,免输密码挂载 `Time Machine` 卷,可随时手动备份。 +- **回滚方式**:`ssh mini "sudo tmutil removedestination 32710565-7968-4D64-A437-2D78476C388C"` diff --git a/PLAN.md b/PLAN.md index 37f9a44..099cdb6 100644 --- a/PLAN.md +++ b/PLAN.md @@ -63,4 +63,6 @@ - [x] **4.3 部署 Vaultwarden 私人密码保险箱与极空间每日自动备份**: - 已部署 **Vaultwarden** ([`stacks/vaultwarden/docker-compose.yml`](file:///Users/ixvii0iv/homelab/stacks/vaultwarden/docker-compose.yml)),提供免端口入口 **`https://vw.961504.xyz`** 与家宽直连入口 **`https://vw.home.961504.xyz:10443`**,并已添加至家庭导航页。 - 已编写 [`scripts/backup-to-nas.sh`](file:///Users/ixvii0iv/homelab/scripts/backup-to-nas.sh) 并注册 `com.homelab.nas-backup.plist` 定时任务,每天凌晨 03:30 自动打包备份 Vaultwarden 密码库与配置至极空间 `~/nas/个人空间/MacMini_Backups/`(保留最近 30 份)。 -- [ ] **4.4 开启 Mac mini 全屋无线时间机器 (Time Machine) 备份中心**:将极空间挂载目录或 Mac mini 共享为 Apple Time Machine 服务器,让你的 MacBook Air 在家连 Wi-Fi 时自动无感备份。 +- [x] **4.4 配置全屋无线「时间机器 (Time Machine)」手动备份通道(关闭自动后台同步)**: + - 已在 Mac mini 绑定极空间 Z4 专用 `smb://18549991015@192.168.31.185/Time%20Machine` 备份目标,并执行 `sudo tmutil disable` 关闭后台自动同步(仅按需手动触发 `tmutil startbackup`)。 + - 已在本机 MacBook Air 钥匙串预存极空间 SMB 凭证并挂载 `Time Machine` 共享卷,设为手动按需备份模式。 diff --git a/README.md b/README.md index 1e31a6d..c893e9e 100644 --- a/README.md +++ b/README.md @@ -10,42 +10,47 @@ flowchart TB Internet["🌐 互联网 / 外部访问"] - subgraph Cloud ["☁️ 公有云层 (Azure)"] - Azure["Azure VM (2C4G)
固定公网 IP / 开放 80 & 443
职责: 免端口HTTPS反代 / 外部监控哨兵 / 企微&TG网关"] + subgraph Cloud ["☁️ 公有云层 (SG Azure 104.43.105.243)"] + Azure["Azure SG (coco-sea1)
固定公网 IP: 104.43.105.243 / Tailscale: 100.115.204.51
职责: 443免端口HTTPS反代 / Uptime Kuma外部哨兵 / AGY固定AI出口"] end - subgraph HomeLAN ["🏠 家庭局域网 (192.168.31.0/24 - 动态公网 IP)"] - Router["📡 小米路由器 (192.168.31.1)
职责: PPPoE拨号 / DHCP / ShellCrash(Mihomo)透明分流 / 端口转发"] - Mini["🖥️ Mac mini M6 (192.168.31.164)
主机名: ixvii0ivdeMac-Mini.local
规格: Apple M6 (12核) / 24GB / 512GB SSD
职责: 公网网关(Lucky) / OrbStack容器中心 / 24h远程开发机 / 本地AI"] - ZSpace["💾 极空间 Z4 (192.168.31.185)
主机名: Z4-R8WA.local
职责: RAID大容量冷存储 / 极影视 / 手机相册备份 / SMB共享"] - MBA["💻 MacBook Air M5 (192.168.31.83)
职责: 日常移动主力开发机 (通过 ssh mini 远程连接)"] + subgraph HomeLAN ["🏠 家庭局域网 (192.168.31.0/24 - 联通公网 124.90.142.21)"] + Router["📡 小米路由器 (192.168.31.1)
职责: PPPoE拨号 / DHCP静态绑定 / ShellCrash(Mihomo)分流 / 10443&41641端口映射"] + Mini["🖥️ Mac mini M6 (192.168.31.164 / Tailscale: 100.108.205.40)
规格: Apple M6 (12核) / 24GB / 512GB SSD
职责: Caddy网关 / OrbStack容器 / AGY 24h云端工作台 / Vaultwarden密码库"] + ZSpace["💾 极空间 Z4 (192.168.31.185)
规格: 20TB 存储池 (可用 17TB)
职责: 影视相册存储 / SMB自动挂载至Mac mini / Time Machine & 灾备中心"] + MBA["💻 MacBook Air M5 (192.168.31.83)
职责: 日常移动主力开发机 (通过 ssh mini / ssh azure 远程管理)"] end - Internet -->|"标准 443 免端口访问"| Azure - Internet -->|"高带宽直连 (Lucky HTTPS / WireGuard)"| Router - Azure <===>|"Tailscale / WireGuard 加密专线"| Mini + Internet -->|"标准 443 免端口访问 (*.961504.xyz)"| Azure + Internet -->|"家宽公网直连 (*.home.961504.xyz:10443)"| Router + Azure <===>|"Tailscale P2P 加密专线"| Mini Router --> Mini Router --> ZSpace Router --> MBA - Mini <-->|"SMB/NFS 局域网高速挂载"| ZSpace + Mini <-->|"SMB 20TB 自动挂载 (~/nas)"| ZSpace ``` -| 设备角色 | 设备名称 | 局域网/公网 IP | 硬件配置 | SSH 快捷连接 | 核心职责 | +| 设备角色 | 设备名称 | 局域网 / 公网 / Tailscale IP | 硬件配置 | SSH 快捷连接 | 核心职责 | | :--- | :--- | :--- | :--- | :--- | :--- | -| **核心计算/AIO** | **Mac mini** | 内网 `192.168.31.164`
Tailscale `100.108.205.40` | Apple M6 (12C) / 24GB / 512G | `ssh mini` (或 `ssh mini-ts`) | Caddy/Lucky 公网反代、Tailscale 子网路由、OrbStack 容器、24h 远程开发与 AI 算力 | -| **核心存储/NAS** | **极空间 Z4** | `192.168.31.185` | 磁盘阵列 NAS | - | 大容量影视/相册/冷备份存储,通过 SMB 挂载给 Mac mini | -| **主路由/透明网关** | **小米路由器** | `192.168.31.1` (联通公网 `124.90.142.21`) | 已解锁 SSH + ShellCrash | `ssh 192.168.31.1` | 宽带拨号、全屋 DHCP、ShellCrash (Mihomo) 科学上网分流、端口映射 | -| **云端协同节点** | **Azure SG (`coco-sea1`)** | 公网 `104.43.105.243`
Tailscale `100.115.204.51` | 2C / 8GB RAM | `ssh azure` | 443 免端口反代 (`nav.961504.xyz`)、Uptime Kuma 监控 (`status.961504.xyz`)、企微/agy 固定出口 IP | -| **日常控制端** | **MacBook Air** | `192.168.31.83` | Apple M5 (10C) / 16GB / 512G | 本机 | 日常使用、管理本仓库 (`~/homelab`)、Remote-SSH 远程开发 | +| **核心计算/AIO** | **Mac mini** | 内网 `192.168.31.164`
Tailscale `100.108.205.40` | Apple M6 (12C) / 24GB / 512G | `ssh mini`
`ssh mini-ts` | Caddy 公网网关、Tailscale 子网路由、OrbStack 容器、AGY 云端工作台、Vaultwarden | +| **核心存储/NAS** | **极空间 Z4** | 内网 `192.168.31.185` | 20TB NAS 存储池 | - | 影视/相册/冷备存储,SMB 自动挂载至 Mac mini `~/nas/{共享文件,个人空间}` | +| **主路由/透明网关** | **小米路由器** | 内网 `192.168.31.1`
联通公网 `124.90.142.21` | 已开启 SSH + ShellCrash | `ssh 192.168.31.1` | 宽带拨号、DHCP 绑定、Mihomo 透明分流(锁定 `agy` 走狮城)、端口转发 | +| **云端协同节点** | **Azure SG (`coco-sea1`)** | 公网 `104.43.105.243`
Tailscale `100.115.204.51` | 2C / 8GB RAM | `ssh azure` | 443 免端口反代 (`nav`/`agy`/`vw`/`status`)、Uptime Kuma 监控、`agy` 固定出口 IP | +| **日常控制端** | **MacBook Air** | 内网 `192.168.31.83` | Apple M5 (10C) / 16GB / 512G | 本机 | 日常使用、管理本仓库 (`~/homelab`)、Remote-SSH 远程开发 | --- -## 二、 域名与 DNS 规划 (`961504.xyz` @ Cloudflare) +## 二、 全部服务访问入口速查表 (`961504.xyz`) -- **DNS 托管商**:Cloudflare (`eoin.ns.cloudflare.com` / `tori.ns.cloudflare.com`) -- **云端节点域名**:`sea.961504.xyz` -> `104.43.105.243` (Azure 2C4G 固定公网 IP) -- **家庭 DDNS 域名规划**: - - `home.961504.xyz` / `*.home.961504.xyz` -> 由 Mac mini 上的 **Lucky** 调用 Cloudflare API 动态解析至家庭联通公网 IP(当前 `124.90.142.21`) +| 服务名称 | 🌐 免端口直达 (走 Azure 443) | ⚡ 家宽公网/内网直达 (10443 端口) | 🏠 局域网原生地址 | 认证说明 | +| :--- | :--- | :--- | :--- | :--- | +| **🏠 家庭统一导航页 (Sun-Panel)** | `https://nav.961504.xyz` | `https://home.961504.xyz:10443`
`https://nav.home.961504.xyz:10443` | `http://192.168.31.164:3002` | 导航主页直接访问 | +| **🤖 AGY 24h 云端工作台 (`ttyd`+`tmux`)** | `https://agy.961504.xyz` | `https://agy.home.961504.xyz:10443` | `http://192.168.31.164:7681` | Basic Auth: `ixvii0iv` / Mac mini 密码 | +| **🔐 Vaultwarden 私人密码库** | `https://vw.961504.xyz` | `https://vw.home.961504.xyz:10443` | `http://192.168.31.164:8222` | Bitwarden 客户端自托管填入 `https://vw.961504.xyz` | +| **💾 极空间 Z4 NAS** | - | `https://z4.home.961504.xyz:10443`
`https://nas.home.961504.xyz:10443` | `http://192.168.31.185:5055` | 极空间账号密码 | +| **🚀 Clash 路由分流面板** | - | `https://clash.home.961504.xyz:10443` | `http://192.168.31.1:9999/ui` | Basic Auth: `ixvii0iv` / Mac mini 密码 | +| **📡 小米路由器管理后台** | - | `https://router.home.961504.xyz:10443` | `http://192.168.31.1` | Basic Auth + 路由器管理密码 | +| **📈 Uptime Kuma 外部监控哨兵** | `https://status.961504.xyz` | - | `http://104.43.105.243:3001` | 首次打开创建管理员账号 | --- @@ -53,13 +58,22 @@ flowchart TB ```text ~/homelab/ -├── README.md # 全局架构、设备资产与端口规划总览(本文件) -├── PLAN.md # 分阶段实施路线图与任务进度 Checklist -├── CHANGELOG.md # 详细操作与配置变更日志(含回滚指令) -├── scripts/ # 宿主机初始化与运维脚本 -│ └── 01-macmini-init.sh # Mac mini 防休眠、基础环境与目录初始化脚本 -└── stacks/ # Docker Compose 容器编排目录(与 Mac mini 同步) - ├── lucky/ # DDNS 动态域名 + HTTPS 证书 + 反向代理 - ├── tailscale/ # 异地组网与内网穿透配置 - └── azure-edge/ # Azure 2C4G 端 Caddy 反代与 Uptime Kuma 监控配置 +├── README.md # 全局架构、设备资产与服务入口速查表(本文件) +├── PLAN.md # 分阶段实施路线图与任务进度 Checklist +├── CHANGELOG.md # 详细操作与配置变更日志(含 17 项变更记录与回滚指令) +├── backups/router/config.yaml.bak # 小米路由器 ShellCrash 原始配置备份 +├── configs/ +│ └── router-shellcrash-config.yaml # 小米路由器 Mihomo 生产分流配置(锁定 AGY 狮城出口) +├── scripts/ +│ ├── 01-macmini-init.sh # Mac mini 防休眠、基础环境与目录初始化脚本 +│ ├── cloudflare-ddns.sh # 每 5 分钟自动更新 *.home.961504.xyz 公网 IP +│ ├── mount-zspace.sh # 每 2 分钟巡检并自动挂载极空间 20TB SMB 至 ~/nas +│ ├── start-agy-web.sh # AGY 云端 Web 工作台 (ttyd + tmux) 常驻启动脚本 +│ └── backup-to-nas.sh # 每天 03:30 自动打包备份核心数据至极空间 Z4 +└── stacks/ + ├── gateway/ # Mac mini 10443 泛域名 HTTPS 网关 (Caddyfile + Let's Encrypt 证书) + ├── azure-edge/ # SG Azure 443 免端口 HTTPS 边缘网关与 Uptime Kuma 编排 + ├── sun-panel/ # 家庭统一导航面板 Docker Compose 与 SQLite 数据 + ├── vaultwarden/ # Vaultwarden 私人密码保险箱 Docker Compose + └── wechat-bot/ # 微信双向控制网关代码(已按需暂停保留) ```