告别卡顿的QTS,在威联通TS464c上安装PVE系统
前言
几年前,我就已经认识到 QNAP 系统的垃圾之处,当时还写了一篇文章来介绍,总之就是非常后悔买了这台 QNAP 的 NAS,总是想着如果是买一台小主机自己折腾多好。
一直想要在 QNAP ts464c 上重新安装系统,不过一直因为没时间什么的各种理由推迟了
这次正好借着搬家和给 QNAP 做了大扫除的机会,一步到位直接安装 PVE 系统。
不得不说,QNAP 的 QTS 系统虽然界面“花里胡哨”,但底层其实是对 Linux 的一种“反向优化”:大量臃肿的服务、无数用不到的后台进程,再加上封闭的系统架构,结果就是——哪怕只是简单地重启一下 NAS,也得等上十分钟,好像在等一锅老母鸡汤炖熟。
而安装 PVE 之后,情况立马大为改观。系统纯净、启动流程干净利落,从按下电源到进入管理界面,不到一分钟就完成开机。关机也是秒停,没有那种“强行优雅”地关服务拖时间的烦躁等待。你甚至能感受到硬件终于被“解放”了,像从 QTS 的枷锁里挣脱出来一样。
换句话说,QTS 把一台明明可以做很多事的设备,限制成了“只能跑 NAS”的傻瓜盒子。而 PVE 给了你完整的控制权,无论是跑软路由、部署 Docker、搭建虚拟机集群,还是干脆直接跑多系统测试环境,一台 NAS 分分钟变身全能服务器,性能和自由度双丰收。
更重要的是,在 QNAP 上安装 PVE 并不会破坏原有的 QTS 系统结构。QTS 实际上是固化在主板 ROM 中的系统,只要将 PVE 安装在独立的 SSD 上,即可实现双系统共存。若以后需要切换回 QTS,只需进入 BIOS,将启动项改回内置存储即可,安全无损、可逆性强。
对于想将 QNAP 从“NAS”进化为“全能服务器”的朋友来说,PVE 无疑是一把极具性价比的利器。
本文记录在 QNAP ts464c 上安装 PVE 的全过程,篇幅非常的长,写到现在已经快 2w 字了,有使用 QNAP ts464c 的同学可以参考一下。
关于 PVE
Proxmox VE(简称 PVE)是一款基于 Debian 的开源虚拟化平台,集成了 KVM 虚拟机与 LXC 容器管理,拥有强大的 Web 管理界面,支持集群、高可用、备份快照等企业级功能,广受技术爱好者和专业用户欢迎。
相比之下,QNAP 原生系统 QTS 更偏向傻瓜式 NAS 使用,虽然也内置了虚拟机支持(Virtualization Station),但在自由度、性能调优和系统扩展性上存在较大限制。而 PVE 不仅提供了完整的底层控制权限,还能轻松运行多个系统级虚拟机与容器,真正释放硬件潜力。与传统 Linux 系统如 Ubuntu Server 相比,PVE 则免去了额外搭建 KVM、LXC、Web 管理平台等复杂流程,安装即用,面向虚拟化任务开箱即战。
下载 & 校验
先从官网下载 ISO(不得不吐槽下官网的限流有点恶心,使用 IDM 等多线程工具下载没多久就被封 IP 了)
https://www.proxmox.com/en/downloads/proxmox-virtual-environment/iso/proxmox-ve-8-4-iso-installer
下载完成之后校验一下 SHA256SUM
Windows 的 PowerShell 命令
Get-FileHash -Algorithm SHA256 ./proxmox-ve_8.4-1.iso
Mac 的话用这个命令校验
shasum -a 256 proxmox-ve_8.4-*.iso
看看输出的 SHA256SUM 和官网上的是否一致
制作 ventoy 启动盘
可以在官网下载 ventoy
不过我是直接用 scoop 安装的
scoop install ventoy
制作的时候记得要选择 MBR 类型的分区表,不然 QNAP ts464c 的 BIOS 无法识别这个 U 盘作为启动盘
把下载好的 ISO 放进 U 盘里就可以了(可以在根目录,也可以其他目录,Ventoy 默认扫描所有子目录)
安装 PVE
文件系统的选择
为了稳定简单,我选择了最常用的 ext4 作为 PVE 安装盘的文件系统
不过在这过程中也顺便学了下其他几个选项。
常用文件系统简介
- ext4:最经典最稳妥的 Linux 文件系统,兼容性好,故障率低,不支持快照。
- xfs:擅长大文件、高性能,不支持快照,但写入性能优。
- btrfs:支持快照、压缩、自恢复等高级功能,适合需要灵活卷管理的用户。
- zfs:功能最强,支持快照、压缩、自修复、RAID 管理,是一个完整的存储系统。
RAID 类型解释
当选择 xfs、btrfs 或 zfs 时,PVE 会自动帮你构建 RAID 配置,如果你插了多个硬盘:
xfs / btrfs 可选
(raid0):性能高,但 无容错,任何一块盘坏了数据全丢。(raid1):双盘镜像,安全性高,但空间减半。(raid10):性能+安全折中,需要至少 4 块盘,2 对 RAID1 再 RAID0。
zfs 可选
(raidz-1):相当于 RAID5,容忍 1 块盘坏。(raidz-2):RAID6,容忍 2 块盘坏。(raidz-3):容忍 3 块盘坏(一般用不到)。- ZFS 还支持压缩、快照、自修复,但 内存占用高,建议至少 8GB 内存以上。
如何选择?
情况 1:只打算装一个系统盘,就一块硬盘
- 推荐:
ext4或xfs(ZFS 没必要,btrfs 有点浪费) - 稳妥选项:ext4
情况 2:打算用多块盘做 RAID、虚拟机多、重度使用
- 推荐:ZFS + raidz-1/2
- ZFS 优势在于数据完整性、快照、压缩,适合做虚拟机存储
情况 3:追求 最高性能、不在意容灾
- 可选:xfs(raid0),但不推荐用于重要数据
情况 4:想折腾、试试新东西
- 可选:btrfs(raid1) 或 btrfs(raid10),但稳定性略逊于 ZFS
安装完成
装完之后会自动重启,之后记得按 F2 进入 QNAP 的 BIOS 修改启动项

搞定了,看到 PVE 的 grub 界面了,舒服

进入管理界面

初步配置
通过 ssh 连接到 PVE 服务器,或者直接使用管理后台的 shell 也行
修改软件源
修改 Debian 软件源: https://mirrors.tuna.tsinghua.edu.cn/help/debian/
修改 PVE 源:https://mirrors.tuna.tsinghua.edu.cn/help/proxmox/
也可以试试 ustc 的镜像: https://mirrors.ustc.edu.cn/help/proxmox.html
修改 CT 模板镜像
我试了清华的镜像,结果 403,换成 ustc 的就正常了,速度很快~
sed -i.bak 's|http://download.proxmox.com|https://mirrors.ustc.edu.cn/proxmox|g' /usr/share/perl5/PVE/APLInfo.pm
/usr/share/perl5/PVE/APLInfo.pm 文件属于 pve-manager 软件包,该软件包升级后,需要重新替换 URL。
修改之后重启服务
systemctl restart pvedaemon
修改 TurnKey Linux 镜像
https://mirrors.ustc.edu.cn/help/turnkeylinux.html
TurnKey Linux 提供了一系列预装和预配置的虚拟机镜像("appliances"),包含了不同用途的服务器软件。
我上次看刷v站的时候看到有网友推荐了 TurnKey 的 fileserver 镜像: https://v2ex.com/t/1135908
首先,将 /usr/share/perl5/PVE/APLInfo.pm 文件中默认的源地址 https://releases.turnkeylinux.org/pve 替换为 https://mirrors.ustc.edu.cn/turnkeylinux/metadata/pve
sed -i.bak 's|https://releases.turnkeylinux.org|https://mirrors.ustc.edu.cn/turnkeylinux/metadata|g' /usr/share/perl5/PVE/APLInfo.pm
执行 systemctl restart pvedaemon 重新加载配置
根据文档,还得创建个配置文件来修改 aplinfo.dat 的内容
mkdir -p /etc/systemd/system/pve-daily-update.service.d/
cat > /etc/systemd/system/pve-daily-update.service.d/update-turnkey-releases.conf <<EOF
[Service]
ExecStopPost=/bin/sed -i 's|http://mirror.turnkeylinux.org|https://mirrors.ustc.edu.cn|' /var/lib/pve-manager/apl-info/releases.turnkeylinux.org
EOF
重新加载 systemd
systemctl daemon-reload
systemctl start pve-daily-update.service
测试,如果修改完成应该会有以下输出
$ grep -c http://mirror.turnkeylinux.org /var/lib/pve-manager/apl-info/releases.turnkeylinux.org
0
$ grep -c https://mirrors.ustc.edu.cn /var/lib/pve-manager/apl-info/releases.turnkeylinux.org
110
安装必备工具
apt install htop iotop iftop vim curl net-tools
参考资料
- PVE官方文档
- 仅仅 nas,那么 TurnkeyLinux 的 Fileserver 镜像就很合适
- All IN One NAS【开荒(踩坑)指南】 一站式PVE+Win+Truenas+Docker+远程游戏+影音服务器搭建指南
- Proxmox VE存储入门
告别卡顿的QTS,在威联通TS464c上安装PVE系统的更多相关文章
- img加载卡顿,解决办法
我觉得我在这个项目里遇到了太多的第一次.比如上一篇博文:在在360.UC等浏览器,img不加载原因. 当前情况是:图片加载缓慢,图片加载时出现卡顿. 上图:我缩放了图片,估计有点变形.能说明情况就行, ...
- Spring Tool Suite4(sts)复制粘贴卡顿(ctrl+v, ctrl+c)、按住ctrl也很卡
最近在看<Spring in Action, Fifth Edition>,下载了Spring Tool Suite4,在使用的过程中发现了一些问题: 只要在复制粘贴(ctrl+c, ct ...
- 想让安卓app不再卡顿?看这篇文章就够了
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由likunhuang发表于云+社区专栏 实现背景 应用的使用流畅度,是衡量用户体验的重要标准之一.Android 由于机型配置和系统的 ...
- iOS应用卡顿分析
1.屏幕显示图像的原理 显示器按照从上到下的方式,一行行扫描,扫描完成后显示器就呈现一帧画面,随后电子枪回到初始位置继续下一次扫描.为了把显示器的显示过程和系统的视频控制器进行同步,显示器(或者其他硬 ...
- 启用“关闭自动根证书更新”,解决Windows系统各种卡顿的问题(Visual studio 卡、远程桌面mstsc卡、SVN卡)
最近,发现在Win7下面一系列操作都会出现卡顿的情况: 1. Visual studio 启动调试和关闭调试时,都会卡上半分钟左右 2. 使用远程桌面mstsc.exe,点击连接时,也会卡上半分钟 ...
- 性能优化 BlockCanary 卡顿监测 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- xamarin MasterDetailPage点击Master时卡顿现象
在很多项目中经常会使用到MasterDetailPage的布局方式,而且一般做为主页面来开发,在开发中,发现一个并不算Bug的问题,但是却发生了,以此记录下来,方便大家探讨. 现象是这样的,我开发了一 ...
- UITableView cell复用出错问题 页面滑动卡顿问题 & 各杂七杂八问题
UITableView 的cell 复用机制节省了内存,但是有时对于多变的自定义cell,重用时会出现界面出错(例如复用出错,出现cell混乱重影).滑动卡顿等问题,这里只简单敲下几点复用出错时的解决 ...
- 解决UINavigationController在pushViewController时出现的"卡顿"问题
进行开发中,遇到了个小问题: 在使用UINavigationController的-pushViewController:animated:执行入栈一个子控制器操作时(即最新栈顶子控制器),会出现推出 ...
- webstorm卡顿问题
近期随着项目开展,文件逐渐增大,webstrom频繁出现卡顿,而且时有崩溃现象,提示没有足够的内存来执行请求的操作,需要增加Xms设置. 解决办法: 1.找到WebStorm.exe.vmoption ...
随机推荐
- Oracle删除用户及用户下的全部数据
1.查看用户 select * from all_users select * from user_users select * from dba_users 2.查看用户的连接状况 select ...
- 深入理解 Java AQS 原理与 ReentrantLock 实现
目录 一.AQS 简介 二.AQS 核心设计 2.1 核心组成部分 2.2 AQS 的工作原理 2.3 AQS 的关键方法 三.ReentrantLock 与 AQS 的关系 3.1 Reentran ...
- sql 使用with 递归
---前提:有上下级关系的关系表 ---示例:组织架构表 DECLARE @orgId NVARCHAR(20)='0001'; --向下递归,查询@orgId 下的所有结点...包括儿子-孙子节 ...
- Python 生成器说明
生成器 python 生成器 常规形态 # list def square_numbers(nums: list): squared_nums = [] for i in nums: squared_ ...
- Zotero 设置坚果云同步(使用 WebDAV 的方法)
1.坚果云设置 登录坚果云:官网,注册账号 1.建立个人文件夹:zotero 2.在网页打开右上角的 账户信息,并选择 安全选项 在页面下方选择 添加应用 并输入与前面文件夹对应的名称 zotero ...
- 深入理解泛型-重写泛型类方法遇到的问题(涉及JVM反编译字节码)
下面的代码DateInterval类想重写父类Pair<LocalDate>中的setSecond方法,保证设置的第二个日期要在第一个日期之后,不能出现second早于first的情况.这 ...
- 学习Kotlin语法(三)
简介 在上一节,我们对Kotlin中面向对象编程(OOP)的相关知识有了大致的了解,本章节我们将去进一步了解函数.lambada表达式.内联函数.操作符重载.作用域函数. 目录 函数 函数的使用 参数 ...
- 航天信息诺税通SAAS接口封装DLL
项目中需要对接航天信息的诺税通接口开具电子发票,为此将功能封装到了DLL中,其他项目也可以方便的引用. Delphi调用示例: 有需要可以和我联系:yzqnet(微信)
- 科研新体验:刘同学深度试用ADTF软件反馈揭晓!
一.前言 作为一名高校的科研工作者,在高校的科研工作中,经常需要处理各种复杂的数据流,尤其是视频采集和处理的工作,对数据的实时性和精度要求非常高,我首次试用ADTF时,主要负责开发一个集成FFmpeg ...
- C/S客户端渗透_Proxifier+burpsuite代理客户端http协议数据包+reGeorg构建HTTP隧道代理
C/S客户端渗透_Proxifier+burpsuite代理客户端https协议数据包 一个月没发文章了实在太忙了,不过学习还是不能落下的,最近要做几个CS客户端的站,需要在终端装个北信源的煞笔内网安 ...