omv 系统会单独占用一块磁盘,所以为了更有效地利用手头的存储资源,计划将 omv 安装到旧 u 盘上。
试验发现,U 盘启动频繁连不上无线网;有线网未测试。
先放弃 PVE,专注 OMV 的使用。
避免去理解、试验 LVM 逻辑卷等概念
初步规划:
- 1t 磁盘用于家庭相册、个人文件等;500g 磁盘用于家庭娱乐、安装包等
- 使用 rsync 服务同步到 1t 磁盘或移动硬盘上(二选一待定),暂时不考虑使用 RAID
- 折腾磁盘休眠
- 安装 Docker 后,试用 nextcloud \ syncthing
- 手机软件 FolderSync \ PhotoSync \ Syncthing \ PhotoPrism
设备发现
NetBIOS、LLMNR、Bonjour 和 mDNS 都是局域网中用于设备发现与名称解析的协议。
- NetBIOS、LLMNR 是 Windows 的,已经淘汰;
- mDNS 是去中心化的多播 DNS 协议,是现代主流操作系统(如 macOS、Linux、Android、Windows 11)的标准配置;
- Bonjour 是苹果公司开发的一套完整的技术栈,mDNS 是其核心组件之一。
在 Windows 11 系统上,ping nas 和 ping nas.local 都是走 mDNS 服务:
- 使用 wireshark 可以看到 mdns 请求报文
- 如果目标设备在线,也能看到 mdns 的响应报文
Linux 的 mDNS(Multicast DNS)服务主要通过 Avahi 实现,它允许设备在局域网内通过 .local 域名相互发现和解析,无需复杂的 DNS 配置。
局域网域名
在局域网中,.lan、.local 和 .internal 是最常用的私有顶级域名后缀。
它们能将难以记忆的 IP 地址(如 192.168.1.100)转换为易读的域名,避免与真实的互联网域名冲突。
常见局域网域名解析
.lan: 最直观的局域网(Local Area Network)标识符,通常在路由器(比如 OpenWrt)后台或自建DNS中配置。.local: 专用于 mDNS(多播DNS)的保留域名(如 Apple 的 Bonjour 协议)。设备无需中心 DNS 服务器即可自动发现彼此。.internal: 常用于企业内部网或 Docker 容器网络,用于完全隔离外部互联网的独立系统。
对比与使用场景
| 域名后缀 | 使用机制 | 适用场景 | 注意事项 |
|---|---|---|---|
.lan |
单播 DNS 服务器解析 | 家庭/小型办公网络、NAS 访问 | 非互联网标准,偶尔可能与特定 ISP 的 DNS 冲突。 |
.local |
自动广播 (mDNS) | 智能家居设备、局域网打印机、Apple 设备 | 不能与需要大型集中式 DNS 服务器的复杂网络混用。 |
.internal |
自建 DNS 或 /etc/hosts |
开发/测试环境、企业内网系统、云原生应用 | 通常只在完全封闭的内部网络中生效。 |
配置代理
配置 https 代理时,需要显示指定为 http://ip ,不能只写 ip ,否则会被记录成 https_proxy=https://ip
而局域网内的 v2rayN 代理支持 http 协议,并不支持 https 。
docker 代理
不读取用户的 Shell 环境变量,因此必须通过专用的守护进程配置文件来为其指定代理服务器。
修改 vim /etc/systemd/system/docker.service.d/http-proxy.conf
1 | [Service] |
omv-extras
从 OMV7 开始,omv-extras 就已经彻底废弃了过去的 Portainer / Docker 独立安装按钮,转向了统一的 openmediavault-compose 插件。
在 OpenMediaVault 8 (OMV8) 以及最新的 omv-extras 生态中,官方核心推荐和集成的依然是 Docker(特别是通过 Docker Compose),而不是原生切换到 Podman。
- 在使用 Compose 之前先阅读 Docker in OMV 8
- (Docker) Compose Plugin For OMV8
磁盘待机
手动待机,以及验证方式 smartctl -i -n standby /dev/sdb | grep mode
1 | root@openmediavault:~# hdparm -y /dev/sdb # Put drive in standby mode |
通过访问磁盘上的共享目录,就会重新激活磁盘。
配置 OMV-APM 使磁盘进入待机模式,或手动执行
1 | root@openmediavault:~# hdparm -S 60 /dev/sdb # Set standby (spindown) timeout |
当登录 OMV Workbench 时似乎会激活所有磁盘(无法使磁盘待机),带来干扰。
自建仓库 gitea
Gitlab 吃内存,吃资源,并且使用的磁盘无法进入待机状态
- 定时开关 gitlab 容器,以便磁盘能够进入待机状态
- 调整配置,降低资源占用
- 寻找替代品
使用 gitea
克隆仓库时,使用 http 地址无法使用令牌,必须输入账户密码。我哪里配置错了吗?
能否访问某个端口的时候再启动 docker 的容器?