PVE安装
- 1: 下载PVE
- 2: BIOS设置
- 3: 安装PVE
- 4: 配置国内的更新源
- 5: 安装配置git
- 6: 安装配置zsh
- 7: 设置网络代理
- 8: 安装pvetools
- 9: 安装pve-source
- 10: 安装常用软件
- 11: 修改管理网络
1 - 下载PVE
pve安装包
官方下载地址:
https://www.proxmox.com/en/downloads
主要下载:
- PVE 8.0 ISO installer
- Proxmox Backup Server 3.0 ISO Installer
支持 BitTorrent 下载!
virtio windows 驱动
https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/
在这里下载最新的 virtio windows 驱动,使用 virtio 安装 windows 时必须挂载这个驱动,否则会找不到硬盘。
2 - BIOS设置
3 - 安装PVE
刻录安装U盘
用下载下来的 iso 文件,刻录安装U盘。
安装
设置 bios 为从 u 盘启动,推荐 UEFI 模式。
全程按照提示操作即可。
https://pve.proxmox.com/pve-docs/pve-admin-guide.html#installation_installer
安装程序将创建一个名为 pve 的卷组 (VG),以及称为根卷、数据和交换的其他逻辑卷 (LV)。要控制这些卷的大小,请使用:
-
hdsize / 硬盘大小
定义要使用的总硬盘大小。这样,您可以在硬盘上保留可用空间以进行进一步分区(例如,在同一硬盘上用于 LVM 存储的额外 PV 和 VG)。
-
swapsize / 交换大小
定义交换卷的大小。默认值为已安装内存的大小,最小 4 GB,最大 8 GB。结果值不能大于 hdsize/8。
-
maxroot / 根卷的最大大小
定义存储操作系统的根卷的最大大小。根卷大小的最大限制为 hdsize/4。
-
maxvz / 最大VZ
定义数据卷的最大大小。数据量的实际大小为:
datasize = hdsize - rootsize - swapsize - minfree 其中 datasize 不能大于 maxvz。
注意: 如果设置为 0,则不会创建任何数据卷,并且将相应地调整存储配置。
-
minfree
定义 LVM 卷组 pve 中剩余的可用空间量。当可用的存储空间超过 128GB 时,默认值为 16GB,否则将使用 hdsize/8。
暂时用的全默认值进行安装,PVE installer 会创建 local 和 local-lvm, 大小大概是 100g 和 剩余空间。swapsize 为 8G.
备注:zfs 和 ceph 的使用稍后再尝试。目前没有开启
为了支持使用 timeshift 工具进行备份和恢复,在安装时选择留出部分空间给到 timeshift,因此 hdsize 被设置为实际硬盘大小 - 50G 左右。后面再对这个空余空间进行分区和格式化并安装和配置 timeshift 。
常见问题
“Starting the installer GUI”
安装开始后,在获取 DHCP 之后,会准备启动图形界面的安装器。然后就在这里失败,无法启动图形界面。
参考:
解决方法:
执行
chmod 1777 /tmp
Xorg -configure
mv /xorg.conf.new /etc/X11/xorg.conf
再执行
vim /etc/X11/xorg.conf
找到 “device” 一节中的 “Driver” 设置,将值修改为 “fbdev” 。
启动x 图形界面,就可以继续图形化安装 pve。
startx
但我遇到的问题是安装完成之后,又卡在 “Loading initial ramdisk” 了。
“Loading initial ramdisk”
U 盘启动后,选择安装 PVE,然后在命令行界面上看到 “Loading initial ramdisk ……” 之后就进入黑屏状态,无任何显示。或者是屏幕保持不变,卡死在这个界面再也无法继续。
通过逐个排查 cmos 设置选项,最后发现是和 cpu 节能配置有关,必须将 “cpu C state control” 的这两个设置项设置为 Disable 才能避免出现这个问题。
- CPU C3 report
- CPU C6 report
这两个设置项如果在安装完成之后再开启,也会导致 PVE 启动时同样卡在 initial ramdisk 上,因此必须保证始终关闭。
备注:这个问题仅有某些机器(x99主板)上会出现,不是所有机器都有这个问题,比如z690主板上我发现就可以开启 C3 report 和 C6 report 之后继续安装和使用。
有人说是显卡的兼容性,可以通过使用集显来绕开这个问题:
也有通过增加 nomodeset 参数来解决的:
https://mengkai.fun/archives/1717297733491
我测试中发现(z690主板 + 13700kf cpu + nvidia 亮机卡)并不能解决问题: 1. 在Terminal UI界面通过增加参数 nomodeset 跳过这个报错之后,虽然安装成功,但是 pve 用不了。 2. 在 在 Graphic UI界面也可以增加参数 nomodeset,但随后的图形界面会有显示bug,无法正确显示。
最后,发现可能和 nvidia 显卡有关,因为出现报错:
loading dirvers: nvidiafb .......................
- https://www.reddit.com/r/Proxmox/comments/1cuvv2q/proxmox_821_installer_is_stuck_at_loading_some/?rdt=46925
- https://forum.proxmox.com/threads/installing-proxmox-8-1-crashing-when-loading-nvidiafb-driver.143363/
解决方法有两个:
- 如果有集成显卡,请使用集成显卡进行安装,这样就不会载入 nvidiafb
- 可以换成 amd 显卡
注意这个报错只出现在 pve 安装时,安装完成后 nvidia 显卡时可以使用的。因此有一个绕开这个问题的做法就是:先用集成显卡或者 amd 独立显卡完成 pve 的安装之后,再换成 nvidia 显卡。
“create LVs”
安装时,有时会遇到长时间(三五分钟)停留在 “create LVs” 处,原因不明,大部分机器没这个问题。
耐心等待就好,暂时不清楚问题,好在只是慢。
nvme device not ready
和具体使用的 nvme ssd 有关,我用的爱国者 p7000z 4t 版本就有这个问题,安装正常,但是启动 PVE 时会报错:
nvme nvme0: Device not ready; aborting initialisation, CSTS=0x0
参考帖子:
备注:pve8.1 版本之后就没有这个问题了,解决方案已经直接进入了新的 linux 内核。
4 - 配置国内的更新源
修改之前先备份一下:
cp /etc/apt/sources.list /etc/apt/sources.list.original
添加国内软件源
修改
vi /etc/apt/sources.list
内容为:
deb https://mirrors.ustc.edu.cn/debian/ bookworm main contrib
# deb-src https://mirrors.ustc.edu.cn/debian/ bookworm main contribe
deb https://mirrors.ustc.edu.cn/debian/ bookworm-updates main contrib
# deb-src https://mirrors.ustc.edu.cn/debian/ bookworm-updates main contrib
给 PVE 更换国内源
vi /etc/apt/sources.list.d/pve-no-subscription.list
内容为:
deb https://mirrors.tuna.tsinghua.edu.cn/proxmox/debian bookworm pve-no-subscription
屏蔽 PVE 的企业源和 ceph 的源
先注释掉pve的企业源:
vi /etc/apt/sources.list.d/pve-enterprise.list
将内容注释即可:
#deb https://enterprise.proxmox.com/debian/pve bookworm pve-enterprise
再注释掉 ceph 的源:
vi /etc/apt/sources.list.d/ceph.list
将内容注释即可:
#deb https://enterprise.proxmox.com/debian/ceph-quincy bookworm enterprise
执行命令:
更新
apt update
看一下有哪些可以更新的:
apt list --upgradable
执行更新:
apt upgrade
完成后,习惯性重启。
参考资料
5 - 安装配置git
安装 git
apt -y install git
配置代理
vi ~/.ssh/config
增加以下内容:
Host github.com
HostName github.com
User git
# http proxy
#ProxyCommand socat - PROXY:192.168.0.1:%h:%p,proxyport=7890
# socks5 proxy
ProxyCommand nc -v -x 192.168.0.1:7891 %h %p
6 - 安装配置zsh
用习惯 zsh 和 ohmyzsh 了,pve 下希望继续保持相同的体验。
安装zsh
和 ubuntu 下类似,但是有些命令会报错,多执行几次就好了。
参考:
https://skyao.io/learning-ubuntu-server/docs/installation/basic/zsh/
apt -y install zsh zsh-doc
安装ohmyzsh
然后安装ohmyzsh:
sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
安全起见,临时设置一下代理:
export all_proxy=socks5://192.168.0.1:7891;export http_proxy=http://192.168.0.1:7890;export https_proxy=http://192.168.0.1:7890;export no_proxy=127.0.0.1,localhost,local,.local,192.168.0.0/16,10.0.0.0/16
配置 ohmyzsh
参考:
https://skyao.io/learning-ubuntu-server/docs/installation/basic/zsh/
完成后退出登录,然后重新登录进来,发现熟悉的 zsh 回来了。
7 - 设置网络代理
安装完成 zsh 之后,顺便把代理配置上,必要时开启。
vi ~/.zshrc
增加以下内容:
# proxy
alias proxyon='export all_proxy=socks5://192.168.0.1:7891;export http_proxy=http://192.168.0.1:7890;export https_proxy=http://192.168.0.1:7890;export no_proxy=127.0.0.1,localhost,local,.local,.lan,192.168.0.0/16,10.0.0.0/16'
alias proxyoff='unset all_proxy http_proxy https_proxy no_proxy'
重新载入:
source ~/.zshrc
8 - 安装pvetools
https://github.com/ivanhao/pvetools
安装
执行命令:
export LC_ALL=en_US.UTF-8
apt update
apt -y install git
mkdir -p ~/work/soft
cd ~/work/soft
git clone https://github.com/ivanhao/pvetools.git
使用
cd ~/work/soft/pvetools
./pvetools.sh
主要用到的功能是:
配置apt国内源
可惜失败了,报错说版本不支持,可能 pve 8 太新还没有来得及更新。只能手工配置了。
安装配置 samba 和 nfs
安装配置cpu省电
需要设置cpu的最大频率和最小频率,注意单位,比如 4.5G 要设置为 4500000, 0.8g 要设置为 800000.
配置PCI硬件直通
配置pve的wb界面显示传感器温度/cpu频率
注意:不支持最新的 8.0.3,安装时会报错提示版本不匹配。
但如果是先在 8.0.2 版本下安装之后再升级到 8.0.3,则可以正常使用。
如果出现页面一直试图显示cpu温度信息,有个圈圈一直在转。修复的方式是先将pve降级,再重新升级回 8.0.3,这个问题就消失了。
这个功能很实用,方便看这些信息了。
去除订阅提示
9 - 安装pve-source
看到推荐,暂时还没有使用过,记录备用。
10 - 安装常用软件
系统类
安装 dkms 和用于 pve 的 linux-headers:
apt install -y gcc make dkms
apt install -y pve-headers-$(uname -r)
apt install --fix-broken
工具类
apt install -y unzip
网络类
apt install -y net-tools iperf iperf3
Iperf3 安装时会询问是否系统服务(自动启动),选择 yes,这样方便需要时排查网络。
开发类
11 - 修改管理网络
管理网络的设置通常在安装时完成,但有时需要在安装完成之后修改管理网络。
通过web页面
如果还能打开 web 页面,则非常简单,在节点的 “System” -> “Network” 中找到管理网络(通常是一个 linux bridge),“Edit” 就可以修改。
这个方案适合修改 ip 地址,网管等基础信息。也可以修改 Bridge Ports 信息来指定其他网卡作为管理网路。
通过命令行
如果遇到 web 页面已经无法打开,比如更换网卡之后,网卡名称发生变化,作为管理网络的 linux bridge 会因为底层网卡不可用导致 linux bridge 也不可用。
这种情况下只能通过命令行来操作,登录之后,
vi /etc/network/interfaces
打开文件,修改各个 iface 对应的网卡信息,对于管理网络,需要修改 linux bridge 的 address / gateway / bridge-ports 等信息:
auto lo
iface lo inet loopback
iface enp11s0 inet manual
auto vmbr0
iface vmbr0 inet static
address 192.168.0.18/24
gateway 192.168.0.1
bridge-ports enp11s0
bridge-stp off
bridge-fd 0
iface enp179s0 inet manual
iface enp179s0d1 inet manual
修改 hosts 文件
记得修改 hosts 文件中的记录:
vi /etc/hosts
这里也有一个旧的 IP 地址需要为新的 IP 地址。
修改完成后重启。