保姆级PVE装机教程
安装 PVE
制作 U 盘启动器
这里我选择的是 Ventoy ,解压缩,插入 U 盘,然后点击安装即可

需要注意的是,不要勾选「安全启动支持」

准备 PVE ISO 镜像
下载安装 PVE 安装镜像: PVE ISO 镜像下载地址
将下载好的 ISO 镜像,放入 Ventoy 刷好的 U 盘根目录即可

安装 PVE 系统
将 U 盘插入 R730XD 的后置 USB 接口(经测试,前置的安装不成功,不确定是个例还是本身就是这么设计的)
启动系统,选择 U 盘启动
按 F11 选择「Boot Manager」 - 「One-shot UEFI Boot Menu」 - 「Disk connect to back USBxxxxx」




安装过程
注意: 由于安装过程没有全程录像/截图,部分插图从其他地方后补,IP 地址可能会不一样,以实际设置为准
常规安装就行,选择安装的硬盘、设置国家/时区、设置管理网卡口(推荐用 1G 的口当管理口)、设置 IP 地址等,想详细的了解安装过程,可以参考这个视频: r730xd 安装pve

安装成功后,可以通过之前设置的 IP 地址,来访问 PVE 后台,帐号是 root,密码是安装过程中设置的

也可以通过 22 端口,通过 SSH 登录 Shell

PVE 系统初始化常用配置
更换「系统软件源」
更换「LXC镜像源」
去除「无有效订阅提示」
1 2 3 4sed -i.bak "s/data.status === 'Active'/true/g" /usr/share/pve-manager/js/pvemanagerlib.js sed -i.bak "s/if (res === null || res === undefined || \!res || res/if(/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js sed -i.bak "s/.data.status.toLowerCase() !== 'active'/false/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js systemctl restart pveproxy禁用「企业源」
删除「lvm-local」(按需,可以使可用空间最大化)
在 PVE 管理后台打开 Shell 终端,使用
lsblk查看硬盘情况编辑 local-lvm,勾选所有内容

使用命令移除 pve-data
使用命令扩大 root 分区
1 2 3 4 5 6 7 8 9lvextend -rl +100%FREE /dev/pve/root # 提示如下 # Size of logical volume pve/root changed from <39.56 GiB (10127 extents) to <110.24 GiB (28221 extents). # Logical volume pve/root successfully resized. # resize2fs 1.47.0 (5-Feb-2023) # Filesystem at /dev/mapper/pve-root is mounted on /; on-line resizing required # old_desc_blocks = 5, new_desc_blocks = 14 # The filesystem on /dev/mapper/pve-root is now 28898304 (4k) blocks long.编辑 local 选择所有内容

移除 lvm-thin

PVE 添加及显示标注
添加标记

显示标记

PVE 一些不错的插件/脚本
PVE 查看温度脚本
1(curl -Lf -o /tmp/temp.sh https://raw.githubusercontent.com/a904055262/PVE-manager-status/main/showtempcpufreq.sh || curl -Lf -o /tmp/temp.sh https://mirror.ghproxy.com/https://raw.githubusercontent.com/a904055262/PVE-manager-status/main/showtempcpufreq.sh) && chmod +x /tmp/temp.sh && /tmp/temp.sh remod
综合脚本
1wget -q -O /root/pve_source.tar.gz 'https://bbs.x86pi.cn/file/topic/2023-11-28/file/01ac88d7d2b840cb88c15cb5e19d4305b2.gz' && tar zxvf /root/pve_source.tar.gz && /root/./pve_source
安装 Ubuntu(常规 ISO 镜像安装)
一般的 ISO 类型的镜像,都可以通过此种方式安装虚拟机
下载&上传镜像
下载地址: Ubuntu Server 24 LST ISO 镜像 ,我选择的是服务器版本的 Ubuntu 镜像,不需要 GUI 界面
可以通过上传功能,将本地的镜像上传到 PVE 上面,也可以通过在 PVE 上面粘贴下载链接直接下载

创建 Ubuntu 虚拟机








关于 CPU 型号
CPU 类型默认为 x86-64-v2-AES,选择与宿主机系统 CPU 相匹配的类型,一般默认即可。
如果想要完全匹配,可以将 CPU 类型设置为 host,这样虚拟机就会拥有与宿主机系统完全相同的 CPU 性能。
Ubuntu 安装过程
选择语言

选择键盘布局

选择安装方式

配置网络(可以手动配置,也可以使用 DHCP 给自动分配(需要等一会儿))

配置代理(一般不需要)

配置存档镜像(建议修改成清华源:
https://mirrors.tuna.tsinghua.edu.cn/ubuntu/)
存储方式(一路默认)



用户设置

SSH 配置(选择安装 OpenSSH Server)

软件包安装(按需,推荐全不选)

正常安装,如果安装过程中出现 CDROM 挂载错误,按回车继续就好

Ubuntu 常用初始化配置
修改引导顺序
默认的启动引导顺序是: ide2 -> net0 -> scsi0(未启用)
修改为 scsi0 为第一启动顺序且启用,否则可能会导致重启的时候卡在
(initramfs)界面无法启动开启 root 用户
允许 root 用户通过 SSH 登录
修改软件源
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23# 备份软件源 sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak #修改 sources.list 为以下内容 ### 阿里的源 deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse # 阿里的和中科大的选一个就行 ### 中科大的源 deb http://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse deb http://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse deb http://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse deb http://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse # 更新 apt 缓存,升级包 sudo apt update sudo apt upgrade -y/可用空间和分配空间不匹配按照上述默认的存储方式安装,可能会出现明明分配了 100G 空间给 ububtu 系统,却只有50G(一半)分配给
/,可按下列方式进行修复1 2 3 4 5 6 7 8 9 10 11 12 13 14 15# 查看磁盘详细信息,可以看到总空间有 98G,但是只有 49G 分配给了 / root@test:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 100G 0 disk ├─sda1 8:1 0 1M 0 part ├─sda2 8:2 0 2G 0 part /boot └─sda3 8:3 0 98G 0 part └─ubuntu--vg-ubuntu--lv 252:0 0 49G 0 lvm / sr0 11:0 1 2G 0 rom # 扩大逻辑卷(把所有剩余的可用空间分配给逻辑卷) sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv # 扩大文件系统(保扩展后的逻辑卷可以使用) sudo resize2fs /dev/ubuntu-vg/ubuntu-lv安装
docker / docker-composedocker安装1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17# 更新包索引 sudo apt update # 安装依赖 sudo apt install apt-transport-https ca-certificates curl software-properties-common # 添加 Docker 的官方 GPG 密钥 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg # 设置稳定的存储库 echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null # 再次更新包索引 & 安装 docker sudo apt update && sudo apt install docker-ce # 验证 docker 是否安装成功 sudo docker --versiondocker-compose安装查看 IP 和 路由
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28# 查看 IP 信息 ip addr show --------------------------------- 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host noprefixroute valid_lft forever preferred_lft forever 2: ens18: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether bc:24:11:72:ec:75 brd ff:ff:ff:ff:ff:ff altname enp0s18 inet 192.168.1.102/24 metric 100 brd 192.168.1.255 scope global dynamic ens18 valid_lft 5405sec preferred_lft 5405sec inet6 fe80::be24:11ff:fe72:ec75/64 scope link proto kernel_ll valid_lft forever preferred_lft forever 3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default link/ether 02:42:38:be:27:4a brd ff:ff:ff:ff:ff:ff inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0 valid_lft forever preferred_lft forever # 查看路由信息 ip route ------------------------------- default via 192.168.1.1 dev ens18 proto dhcp src 192.168.1.102 metric 100 172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown 192.168.1.0/24 dev ens18 proto kernel scope link src 192.168.1.102 metric 100 192.168.1.1 dev ens18 proto dhcp scope link src 192.168.1.102 metric 100固定 IP
在
/etc/netplan目录,有类似于50-cloud-init.yaml的文件(没有的话就新建)重启服务
1sudo netplan apply修改 DNS
有时候使用上面
sudo netplan apply发现路由和IP地址是修改了,但是 DNS 服务却没有生效,比如,查出来的结果如下:原因是,系统有时仍然使用自带的
systemd-resolved进行域名解析,这个时候可以通过修改systemd-resolved配置来解决这个问题。编辑:
/etc/systemd/resolved.conf,找到[Resolve]这一节,修改1DNS=192.168.1.113重启服务
1sudo systemctl restart systemd-resolved使配置生效,删除原有的
/etc/resolv.conf1sudo rm /etc/resolv.conf然后创建新链接
1sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf检查 DNS 设置
1cat /etc/resolv.con
安装 Windows Server 2022
下载&上传镜像
我这里选择的是 WindowsServer2022
百度网盘: WindowsServer2022 ,提取码:pxmr
创建安装 Windows 虚拟机
目前没有遇到特别需要注意的地方,按照 Ubuntu ISO 镜像的安装过程进行就好
需要注意的是,Bios 和 总线/设备,最好按下列推荐的来设置(但是不这样好像也可以正常启动)


安装 Openwrt(常规 img 镜像安装)
一般的,img 类型的镜像,都可以通过此种方式安装虚拟机
下载&上传镜像
我选择的是高大全版本的 Openwrt 镜像: bleachwrt-plus-20241014-x86-64-generic-squashfs-combined-efi.img.gz
电脑解压上传 img 文件

记录镜像路径

忘记了也不用担心,可以在 Shell 里面查看
| |
img 镜像创建虚拟机
创建虚拟机,记住 VM ID(忘记也不要紧,在左侧侧边栏能看到)

其他步骤都跟上面安装 Ubuntu 系统类似,唯一需要注意的地方是,在安装操作系统的时候记得选择「不使用任何介质」

等虚拟机添加成功后,选择「分离」和「移除」硬盘


进入 PVE Shell,给刚刚创建的虚拟机,添加镜像磁盘
命令执行完成后,在虚拟机的硬件里面会出现一块「未使用的磁盘」,双击添加

磁盘添加成功后,进入选项界面修改「引导顺序」(我们这里不需要使用 CD-ROM 启动,把这个勾选可以取消掉)

最后启动虚拟机,就可以进行系统的安装了
高大全版本 openwrt 设置
默认登录信息
IP:192.168.1.1
用户:root
密码:password
如果你想修改登录 IP 相关信息,可以通过修改 /etc/config/network 实现
调整虚拟机磁盘大小
通过上述方式安装的 img 类型映象的虚拟机,磁盘空间大小等于 img 映象的大小,安装成功,磁盘占用就是 100%,所以我们需要重新调整下磁盘大小
我们需要的信息有两个,一个是虚拟机的 VM ID,一个是该虚拟机需要调整的 磁盘ID

需要注意的是,并不是所有磁盘都是 scsi0 ,磁盘号和磁盘类型,跟你选择添加「未使用磁盘」时候的设置相关

在 PVE Shell 中使用下列命令调整磁盘大小
| |
安装黑群晖
下载&上传镜像
黑群晖的安装,需要用 rr 引导
百度网盘: rr 引导镜像 ,提取码:yra4
创建群晖虚拟机
整体步骤跟 Openwrt 一致
…解压上传镜像
…记录 VM ID / img 路径
…不使用任何介质
…分离/删除 未使用磁盘
…qm importdisk 106 /var/lib/vz/template/iso/rr.img local
添加
qm导入的 img 磁盘的时候有些不一样了,记得要将磁盘改成sata类型
引导盘添加成功后,我们还需要添加一块数据盘(引导盘只是用来引导启动的,群晖还没有自己的磁盘), 有两种方式
a. 将某块硬盘直通给群晖
b. 增加一块虚拟磁盘

修改引导顺序

因为我们后续安装群晖的时候需要在 rr 引导里面下载群晖的安装文件,默认的空间是不够用的,建议此时调整 rr 引导盘的大小
启动虚拟机进行群晖的安装
rr 引导安装过程
启动 rr

启动成功会提示

访问
http://192.168.2.193:7681进行接下来的安装步骤,选择语言
选择型号,推荐 DS920+

选择版本,推荐 7.2

弹出页面,点击URL会自动下载当前引导的系统文件
注意: 这个 URL 需要复制在浏览器再下一遍! rr 下载一遍,本机浏览器下载一遍!!后面要用!!!

选择编译引导


如果下载一半失败,提示: 「检查网络或磁盘空间error 23:200」
一般是 rr 引导的磁盘空间不够,按照本文中的「创建群晖虚拟机」章节中步骤 4 的操作即可解决
rr 引导启动


启动完毕后,可以访问 5000 端口,进行群晖初始化设置
补充说明:上图写的 ip地址不一定正确,可以使用 Synology Assistant 进行搜索
百度网盘: Synology Assistant ,提取码:e2jj

群晖安装过程
访问群晖管理页面

选择「从计算机手动上传 .pat 文件」,文件为「rr 引导安装过程」步骤 6 中下载的 PAC 文件
如果你上面忘记在浏览器下载了,也忘记保存 URL 链接了,也可以选择「自动从xxx下载」

清空数据


其他步骤就正常按照提示安装就行,需要注意的是关于更新的设置,选择手动更新

安装 CentOS
CentOS常用初始化配置
固定IP
修改
/etc/sysconfig/network-scripts目录下ifcfg-eth0文件,默认情况下该文件设置的为DHCP,内容如下
修改为静态 IP
Proxmox VE(PVE)添加/挂载系统盘以外的磁盘
PVE安装后会默认将系统盘分出local和 local-lvm 。对于系统盘以外的其他磁盘,都需要挂载才可以用PVE进行管理。
我的主机是128G固态做PVE的系统盘,750G机械用做数据盘,可以看到PVE所在的128G系统盘nvme0n1是挂载到PVE下的local(我把local和local-lvm合并了,所以只有一个local),同时可以识别到750G机械盘sda的分区,但是这个sda是没有挂载到PVE下的,我需要做的就是把sda挂载到PVE下用PVE管理它。

任务明确之后,打开shell命令终端,之后和linux系统进行分区的操作一致[ 1] :
| |
(可选步骤)我们可以键入m 查看帮助文档,会提示你键入什么字母表示什么含义:
| |
首先键入d删除,然后按照提示,输入你要删除的分区号。我这里反复键入d+回车,将所有存在的分区全部删除了:
| |
键入n创建分区,按照提示键入p创建主分区,按照提示选择主分区的数量,我这里直接默认创建1个:
之后提示设置分区的起始位置和终止位置(默认是起始地址和最后地址),我这里直接把全部空间分配到这个分区,所以直接两次默认即可:
(可选步骤)如果你不想把全部的空间全部分配到这一个分区,可以起始位置选择默认值,终止位置填写磁盘大小,如下所示:
键入p查看分区是否创建成功:
| |
键入w写入创建的分区,保存退出:
回看PVE中的磁盘,我们已经将sda原本的分区删除,合并成一个分区了:

接下来给分区格式化文件系统,我这里将分区格式化为ext4:
| |
分区也弄好了,文件系统也弄好了,接下来要将这个分区挂载到系统的文件目录下,linux中有一个目录/mnt专门用来挂载各种U盘,硬盘等:
设置开机自动挂载:
| |
之后就可以回到PVE后台,按照下图中步骤操作,添加刚刚挂载好的磁盘:

这里内容选项,表示你可以放什么类型的东西,我全选了。
之后就可以通过PVE管理这个分区了:

总结一下全部步骤:
- 删除原有分区
- 创建新的分区
- 将创建的新分区格式化文件系统
- 将格式化好的分区挂载到系统目录下
- 设置开机自动挂载
- 回到PVE后台添加磁盘














































