日志
- 2023-02-17:优化BIOS设置通电自启、OpenWrt准备的相关教程。
前言
此文内容目前处于BETA版本
安装系统过程中都是用手机直接拍台式机的曲面屏,所以拍的照片有点扭曲,但应该看得清。大伙多担待吧 (ฅ´ω`ฅ)
在《NAS系列 为什么你需要一台NAS?》中,我提到自己将会在新NAS里使用PVE系统。PVE是Proxmox Virtual Environment (Proxmox虚拟环境)的缩写,是一个很流行的、基于QEMU/KVM和LXC的开源服务器虚拟化管理解决方案。
虽然本章是PVE安装,但其实更多地是介绍PVE安装前的准备工作。根据我个人的经验,PVE安装的过程比Win10简单多了,自己看视频就行(下面我也有推荐),没啥特别。
准备工作
由于镜像一般较大,下载较慢。这项准备工作可以在购买设备的时候开始。
这里展示的是我使用过的方案,但我不确定是不是最佳方案。准备工作都是在Win10系统的主机里进行,MacOS/Linux的小伙伴根据实际情况调整即可。
U盘
准备2个U盘。一个U盘用来制作PVE系统安装盘。另一个U盘制作大白菜之类的U盘启动盘系统,以防要使用PE系统进行磁盘管理等操作。我目前暂时没找到如何使用大白菜之类的系统来安装PVE,因此仍然采用官方建议的方法安装PVE。操作过程中,这两个U盘原有的数据会被清除,所以要做好U盘数据的备份工作!
PVE安装盘最好可以保留。这样,如果日后你不小心添加了物理主机所使用的网卡,可能会导致服务器掉线,这时候使用U盘可以进入救援模式。据说是这样,我还没试过 (ฅ´ω`ฅ)
PVE安装盘制作工具Etcher
类似的烧录软件还有Rufus和USBWriter等。
Etcher用于制作PVE安装盘,一般持续数分钟。操作挺简单的!下载地址:Download Etcher,按操作系统下载即可。如果是Mac用户,应该使用管理员权限运行该类软件。
你可以参考这篇文章如何操作。其实就是选个ISO镜像开始就行,挺简单的!过程大致如下:
特别要注意的是,Etcher制作完PVE安装盘后会产生两个不能被Win10正确识别的分区,因此它会弹出窗口要求你格式化分区。大家千万不要点格式化,直接弹出U盘即可。切记,切记!当你将该U盘设置为启动盘时,它会自动进入PVE的安装界面。
当时我还以为是刷机刷坏U盘了,因为那两个分区按普通的方法特别难重置。我印象中是用PE系统里面的磁盘管理工具/Win10的磁盘管理界面,结合Win10的命令行才能恢复。具体的重置过程你可以参考以下教程,我自己也记不太清了:
- u盘无法访问,“这张磁盘有写保护” – Microsoft Community:实测无效
- 这张磁盘有写保护是什么意思?这张磁盘有写保护怎么解除? – 系统之家:?
- U盘芯片问题:提示格式化 不识别 写保护 无媒体等问题如何修复:很可能是有效的!
- PS2251-07(PS2307)量产教程(去读写保护)-百度经验 (baidu.com)
- 取消U盘和移动硬盘的GPT保护分区 – 忠成 – 博客园 (cnblogs.com):亲测可行。
clean all
那一步使用clean
即可。其它正常。
PVE镜像
PVE是虚拟机系统
我们可以在官网下载PVE,推荐使用BitTorrent等p2p方式下载,这样速度会快很多:
你也可以从国内镜像下载镜像(这里是清华源):https://mirrors.tuna.tsinghua.edu.cn/proxmox/iso:
无论你选择什么方式下载,一般推荐使用最新版本。我当时使用的PVE镜像是proxmox-ve_7.3-1.iso
(2023-01-09)。
OMV镜像
OMV是NAS系统
OMV的官方镜像托管在SOURCEFOGE上,直接点击Download即可:
我当时使用的OMV镜像是openmediavault_6.0.24-amd64.iso
(2023-01-11),它属于OMV 6系列镜像。OMV 6在2022年刚刚上线,个人觉得还是挺稳定的。OMV 6与之前的OMV 5的操作界面有很大的差别(下图是OMV 6),与FreeNAS/TrueNAS Scale有点像 (ฅ´ω`ฅ):
OMV管理后台的操作速度和NAS性能密切相关。新NAS OMV的后台响应速度就比我的旧NAS快得多。
OpenWrt
OpenWrt是软路由系统
我当时是在Releases · coolsnowwolf/lede下载的是LEDE固件releases的最新版本(tag20221001;openwrt-x64-R22.10.1-CW-X86-P1-squashfs-combined-efi.img
),解压后文件大小约为417M:
界面大致如下,比较简洁:
后来我发现它的Linux内核(5.15.68)比较低,与OpenWrt镜像源里的dockerd不兼容(最新版的dockerd要求更高版本的Linux内核),因此需要在OpenWrt安装Docker的小伙伴不推荐这个固件版本;除非未来该固件的升级版本包含了更高的linux内核版本。不过,如果你只是开箱即用,直接下载最新tag对应的img也是可以的。我自己用的时候是在PVE系统里安装docker的,OpenWrt仅纯拔号、DHCP服务器和运行SSR+/Openclash等程序。
很多人使用的都是自己编绎的OpenWrt固件(比如该视频),但是传统的编绎过程对于系统环境、网络环境和编程的要求较高,而且耗时较长,并不适合小白或者轻度用户去折腾。此外,我们也可以下载别人编绎好的固件,比如Releases · firkerword/openwrt-Exclusive (仅限x86/adm64的CPU架构):
你可以用类似这样的方法在Github检索别人分享的OpenWrt固件:
in:readme OpenWrt 固件 stars:>100
然后将Most stars排序:
实践中,你可以随便下载一个OpenWrt固件试用一下,不行再临时换掉也行。
我最近了解到一种比较新的固件自定义方法,比如该视频中所介绍到的supes.top,其Github仓库为kiddin9/OpenWrt_x86-r2s-r4s-r5s-N1,收藏数大约4.5k
,用的人挺多。supes.top
的界面大致如下:
这种工具的好处就是快速地(几分钟)完成自定义固件的构建;坏处就是如果你想定义更精细的参数或更多插件则无法实现或需要付费。不过我觉得对于绝大多数用户来说,应该已经足够了,至少自定义程度越超直接下载别人的固件。我自己试了一下:
结合我后面的教程,建议大家关注luci-app-dockerman Docker管理
、luci-app-adguardhome ADG去广告
、luci-app-turboacc 网络加速
、luci-app-frpc 内网穿透
、luci-app-zerotier 内网穿透
、luci-app-wrtbwmon
等插件,互联网选择OpenClash
,主题选Argon
即可。你也不用担心插件没选够,该定制系统自带软件包的:
值得注意的是,我暂时还无法评估该项目是否真的安全(因为听说某些有心人会故意在编绎的Openwrt留下后门),所以要不要使用就看自己定夺了。我贪方便,所以这个在线自编绎的OpenWrt系统是我目前的主力系统。本地自编绎的视频教程应该蛮多的,我很久以前就知道,只是自己没有专门去玩;后面有机会我了解一下。
其它
由于PVE自身/虚拟机会带来很多应用,因此有个密码管理工具则可以起到事半功倍的作用,比如bitwarden。如果不希望发生搞乱/泄露帐户密码的事,还是要好好考虑一下专业的密码管理工具!
网络结构
由于PVE/OpenWrt/OMV安装的过程都会可能会涉及IP网段,所以你最好事先规划一下局域网的网络结构,做到心中有数。一个比较完整的例子是:
这个网络图我们以后在配置PVE的时候还会详细讲述,现在你并不需要完全做到上述所有细节(尽管看上去也是挺简单的)。
现阶段,你只需要确定:准备用哪一个网段、PVE系统用哪个IP、网关用哪个IP就行。之所以要提前明确,是因为PVE/OMV在安装的过程都可能会涉及IP相关操作。
一种比较明智的做法是,直接使用你现有网络的IP网段(大部分路由器默认是192.168.1.X/24
),这个就是具体情况具体分析了。
如果你不太了解IP地址和网关的设置原理,可以看我的入门级介绍文章《了解IP地址》。
BIOS设置
所有的设置要F10保存退出后才能生效!
对于豆希B365主板而言,重启/机型时快速按DELETE
键可以进入BIOS界面(全英文界面,无简体中文),而快速按F7
可以进入硬盘选择的选项。
我熟悉BIOS的方法就是每个选项都进去看看,英文基本上是字面意思,看得懂英文就行。我这里列一些需要注意的情况(我也记不太清是不是默认选项了)。如果你看不太懂BIOS的话,尽量学会看吧,或者看看卖家有没有办法刷一个中文版的给你。
实在搞不定,只能请电脑师傅帮你搞了。后续关于主板的BIOS方面我尽量补充得详细点。
硬盘启动顺序、热插拔
安装完系统后,记得将PVE系统安装盘设置为第一启动顺序。
此外,我印象中各个SATA口的硬盘热插拔选项(Advanced Mode——Hot Plug
)在主板中默认是Disabled
的,记得Enabled
:
这样我们的硬盘才支持热插拔,这对NAS来说也算是必要操作了。
开启虚拟化
将Intel® Virtualization Technology (Intel® VT
)和Directed I/O (VT-d
)两个选项都要打开,以支持虚拟化技术/硬件直通。我不太记得豆希B365是否默认开启虚拟化选项,建议你检查一下。
通电自启
参考电脑来电自动开机方法设置。
豆希B365主板的跳帽设置可以允许我们软关机。但一般情况下,主板BIOS的通电自启动处于失活状态,即为Always Off
。我们要激活通电自启,因为我们希望NAS在遭遇断电再来电等异常情况后仍可以自启动。我强烈建议选择Last State
项,特别是你使用All-in-one玩法(包含OpenWrt系统),这样可以保证OpenWrt工作正常,不至于失去与NAS的远程联系。
在豆希B365主板Bios中,我们进入Advanced_PWRON After Power Loss
里选择Former-Sts
(类似于Last State
)模式:
某些Bios可以参考这个方法——在POWER MANAGEMENT SETUP——PWR Lost Resume State
中:
- 选择
Keep OFF
项,代表停电后再来电时,电脑不会自动启动。 - 选择
Turn On
项,代表停电后再来电时,电脑会自动启动。 - 选择
Last State
,代表停电后再来电时,电脑恢复到停电前电脑的状态。
值得一提的是,选择Turn On
模式会导致NAS无法关机,这可能不利于PVE系统的调试,因此并不推荐。
PCIE设置
我目前的PCIE设置如下图:
Storage
和Video
都是选Legacy
,因为据说选UEFI
会影响核显直通。我的Other PCI devices
使用了UEFI,但似乎并不影响2.5G网卡直通给OMV系统。这里我不确定其它选项是否会影响PVE系统的正常功能,你可以暂时按这样设置。
PVE安装
PVE系统安装有很多视频教程,比如司波图的《基于PVE的千元级带万兆交换机的AIO服务器搭建》就有完整的PVE安装过程。边看手机边操作键盘/鼠标应该问题不大的 (ฅ´ω`ฅ) 这里,我主要讲一些注意事项。
PVE名称
可参考Proxmox VE 修改节点名称\主机名称和pve修改ip和节点名称,还挺复杂的。所以建议一开始就选好名字,或者是在你没安装虚拟机的时候改,以防配置迁移时出错,影响虚拟机的正常运行。
PVE系统的名字建议选个好的。我当时选的是local
这个名字,现在觉得不好听:
似乎不是一一对应的关系(估计是遗漏了安装时的某些细节):
之后应该可以通过PVE的/etc/hosts
文件来修改,暂时还没试验过:
127.0.0.1 localhost.localdomain localhost
192.168.1.155 local.pve local
# The following lines are desirable for IPv6 capable hosts
(以下内容忽略不展示)
IP/网段
IP/子网掩码和网关要提前想好。DNS服务器你先写和网关一样的IP即可,因为在路由器中DNS服务器往往可以设置很多个,它的作用就是确定域名-IP的对应关系:
小结
差不多是这些。关于PVE系统的具体使用,比如添加虚拟机、核显直通我会在后面的文章里更新。敬请关注!
参考/扩展阅读
-
U盘芯片问题:提示格式化 不识别 写保护 无媒体等问题如何修复:很可能是有效的!
-
取消U盘和移动硬盘的GPT保护分区 – 忠成 – 博客园 (cnblogs.com):亲测可行。
clean all
那一步使用clean
即可。其它正常。
---------------
完结,撒花!如果您点一下广告,可以养活苯苯😍😍😍
翻了一下帖子博主blog以前是vps的?为什么从vps换到nas啊?我还在想要不要blog还是vps,nas家里用
现在是在vps里面。nas从长远来看并不方便。
记得在某篇blog里看到过说blognas这个域名指向的nas,可能我理解错了
对了,自动翻译功能有点烦人,能提供个禁用选项或者记住上次的语言就好了,不然每次我得手动切换
自动翻译不是一般都是中文吗?您不要点它就好了
我是说页面load出来默认会翻译成英文,我点了翻译成中文,打开别的页面出来还是默认翻译成了英文
噢噢,不好意思 ~ 可能是因为我设置了与浏览器使用同样的语言 ~ 我已经禁用了该选项。 谢谢提醒哈 (~ ̄▽ ̄)~
或者,您可以直接通过浏览器广告插件对它进行屏蔽 ~
礼问苯苯网络结构图是用什么画的|´・ω・)ノ
欧,我知道了,是苯苯白板 o(////▽////)q
哈哈,等你的核显直通篇,我的 AMD CPU 搞了半天没成功,暂时放弃了…
你的AMD CPU是哪一款?有核显吗?我瞧瞧 (~ ̄▽ ̄)~
我昨天测试用的机器是 5625U 的,核显肯定是有,按 PVE 官方的文档做配置,重启 dmesg 会报错,操作我都记录在了这个文件夹的「PCI 直通.md」:
https://github.com/ryan4yin/knowledge/tree/master/homelab
其实一开始只是想把 USB 控制器通进去,现在是用 PVE 的 USB Device 功能映射进的虚拟机,好像有性能瓶颈.
大致看了一下你的记录,暂时没什么头绪。我当时不选AMD的CPU,除了主板等硬件考虑,也是发现很多折腾家庭影音的教程都是基于Intel的CPU,所以怕折腾不出来。AMD核显在linux里的驱动生态据说一般般。此外,Linux内核版本在核显直通时也有重要的影响。至少从核显的角度来说,新内核对旧版本的显卡驱动的兼容性一般都比较差。兼容性可是不是查查教程就可以解决的问题,折腾不出来就是不行,你也拿它没辙。所以我选择硬件的时候,都是选有人折腾过的CPU |´・ω・)ノ
我大概是这样直通核显的:先升级PVE的Linux内核版至5.19或以上。然后,将核显直通给LXC。最后,在显卡分配给jellyfin docker里。
嗯嗯,感谢感谢,我确实不太清楚内核这里会有坑。
之前买 AMD 主要是小主机领域 AMD 便宜,然后为了 PVE 集群热迁移功能,就全都上 AMD 了。另一方面之前主要是用来跑服务程序,当时还没 PCI 直通的需求emmm
问题倒也不大,就是我游戏装在 NAS 里,打游戏加载可能会慢一点哈哈,我找时间升级个内核版本再试试~
嗯嗯感谢感谢,我确实没想到内核版本会有问题,我之后找时间升级下内核再看看~
之前我买 AMD 的时候还没考虑这么多,因为主要是用来跑后台服务的,都没想过自己会有 PCI 直通的需求。