去年的这个时候收了一台树莓派 4B,到手之后宝塔建站一把梭之后就放在那里吃灰(没办法,技术太菜玩不了别的)。最近迷上了 PVE,想想手头也没有什么可以实践的物理设备,百般寻找之后便把目光锁定在了吃灰中的树莓派。 Proxmox 论坛的 https://forum.proxmox.com/threads/how-to-run-pve-7-on-a-raspberry-pi.95658/ 帖子讲的是在有线网络接入 (eth0) 时的安装过程,目前我手里没有网线,所以只能修修改改踩踩坑探索一下 WLAN 接入网络 (wlan0) 时的安装和配置。
本教程需求:Raspberry Pi 4 Model B(内存 2GB 或以上)、拥有宽带连接的 2.4GHz 或 5GHz 的 WLAN(SSID 不可带有下划线 (_)、DHCP 服务器能够给指定的 MAC 地址分配固定的 IP 地址功能、需要能够顺畅连接 raw.githubusercontent.com)、一台显示器、USB 接口的键盘以及一张容量至少为 16GB 且速度等级为 C10 或以上的 MicroSD 卡。
访问 https://mirrors.tuna.tsinghua.edu.cn/raspberry-pi-os-images/raspios_lite_arm64/images/ 下载 Raspberry Pi OS ARM64 Lite 最新的版本,本文写作时的版本为 2021-11-08
(https://mirrors.tuna.tsinghua.edu.cn/raspberry-pi-os-images/raspios_lite_arm64/images/raspios_lite_arm64-2021-11-08/2021-10-30-raspios-bullseye-arm64-lite.zip)
清华大学 TUNA 源的速度还是很不错的。 系统镜像下载完成后,解压之,得到 ISO 文件。
下载 SD Card Formatter (https://www.sdcard.org/downloads/formatter/eula_windows/SDCardFormatterv5_WinEN.zip) 并安装。
下载 Win32 Disk Imager (https://sourceforge.net/projects/win32diskimager/) 并安装。不建议拿其他刷写软件替代,比如 Rufus 刷写后不会给 BOOT
分区分配盘符。
使用 SD Card Formatter 格式化 MicroSD 卡。
格式化完成后,打开 Win32 Disk Imager,向 MicroSD 卡写入系统镜像。
登录 WLAN AP (路由器)后台,给树莓派的 WLAN MAC 地址分配一个固定的 IP 地址。若暂时不知道其 MAC 地址,可以跳过此步。本文树莓派被分配到的 IP 地址为 192.168.1.233/24
,网关为 192.168.1.1
,DNS 地址为 192.168.1.1
。
步骤 1.1.2 刷写完成后,MicroSD 卡的 boot 分区会被分配一个盘符,进入此分区,新建文件 wpa_supplicant.conf
和 SSH
。使用编辑器(不得使用 Window 记事本)编辑 wpa_supplicant.conf
文件,填入以下内容:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="WiFi的SSID"
psk="WiFi密码"
}
保存即可,SSH
文件则保持空白。
拔出 MicroSD 卡,将其插入树莓派。
使用 SSH 终端登录至树莓派(默认用户名 pi
,密码 raspberry
),执行 sudo -i
切换至 root 用户,执行 passwd root
和 passwd pi
修改 root
用户和 pi
用户的密码。
执行 echo "PermitRootLogin yes" >> /etc/ssh/sshd_config && echo "PasswordAuthentication yes" >> /etc/ssh/sshd_config
后执行 systemctl restart sshd
,使用 root 用户重新 SSH 连接至树莓派即可。
执行 rm /etc/apt/sources.list.d/*.list
清除不必要的源。
编辑 /etc/apt/sources.list
文件,将 deb.debian.org
和 security.debian.org
尽数替换为 mirrors.cloud.tencent.com
并在下方添加以下两行内容:
deb https://raw.githubusercontent.com/pimox/pimox7/master/ dev/
deb http://mirrors.cloud.tencent.com/raspberrypi bullseye main
效果如图
其中,前 3 行的 mirrors.cloud.tencent.com
可以替换为其他支持 Debian 11 的源,第 5 行的 mirrors.cloud.tencent.com
可以替换为其他支持 Raspberry Pi OS 的源。部分源并不同时支持两者。
执行 curl https://raw.githubusercontent.com/pimox/pimox7/master/KEY.gpg | sudo apt-key add –
以安装 Pimox7 的 gpg 公钥。
执行 apt update && sudo apt dist-upgrade -y && apt install -y raspberrypi-kernel-headers
以更新软件包数据库、更新软件包和安装 raspberrypi 内核头文件。
编辑 /etc/network/interfaces
文件,清除原有内容后填入以下内容:
auto lo
iface lo inet loopback
auto wlan0
iface wlan0 inet static
address 192.168.1.233/24
gateway 192.168.1.1
其中,192.168.1.233/24
和 192.168.1.1
分别为步骤 1.2.1 中提到的树莓派被分配到的 IP 地址和网关。修改完成后保存。
执行 hostnamectl set-hostname RPi4-PVE-01
,其中 RPi4-PVE-01
请自定义。
编辑 /etc/hosts
文件,清除原有内容后填入以下内容:
127.0.0.1 localhost
192.168.1.233 RPi4-PVE-01
其中,192.168.1.233
和 RPi4-PVE-01
分别为步骤 1.2.1 中提到的树莓派被分配到的 IP 地址和主机名。
树莓派默认的 SWAP 大小只有 100M,非常不适合本文场景,故请编辑 /etc/dphys-swapfile
文件,将原先 CONF_SWAPSIZE
的值从 100
改为 2048
;执行 /etc/init.d/dphys-swapfile stop && /etc/init.d/dphys-swapfile start
以应用更改。
一切完成后,重新启动系统。
将树莓派连接至显示器,插入键盘,执行 apt install -y proxmox-ve
。因安装过程中将重置网络,故请勿直接在 SSH 中直接执行 apt install -y proxmox-ve
。
弹出配置 Postfix 时,请选择 Local system
。
安装需要半个小时左右,建议耐心等待;安装完成后,请重新启动设备。
编辑 /etc/network/interfaces
文件,在 source-directory /etc/network/interfaces.d
此行上方插入以下内容:
auto wlan0
iface wlan0 inet dhcp
wpa-ssid 114514
wpa-psk qweasdzxc123
auto vmbr0
iface vmbr0 inet static
address 10.154.46.1
netmask 255.255.255.0
bridge-ports none
bridge-stp off
bridge-fd 0
post-up iptables -t nat -A POSTROUTING -s '10.154.46.0/24' -o wlan0 -j MASQUERADE
post-down iptables -t nat -D POSTROUTING -s '10.154.46.0/24' -o wlan0 -j MASQUERADE
其中,wpa-ssid
后为 WLAN 的 SSID,wpa-psk
后为 WLAN 的密码。其他内容请按需修改。
执行 systemctl restart networking
以重启网络设备。
编辑 /etc/sysctl.conf
文件,添加以下内容:
vm.overcommit_memory=1
net.ipv4.ip_forward=1
net.ipv4.conf.all.rp_filter=1
net.ipv4.icmp_echo_ignore_broadcasts=1
net.ipv4.conf.default.forwarding=1
net.ipv4.conf.default.proxy_arp=0
net.ipv4.conf.default.send_redirects=1
net.ipv4.conf.all.send_redirects=0
保存后执行 sysctl -p
使其生效。
访问 https://IP 地址:8006
(以下以 https://pve.iks.moe:28006 作为演示)登录 Proxmox VE 用户面板。
用户名和密码与步骤 2.1 中设置的系统用户名和密码一致;语言可选 Chinese (Simplified)
。
单击本机唯一的节点,选择“凭证”,单击上方的“上传自定义凭证”按钮上传自定义的证书。此操作会让 Proxmox VE 用户界面在重载时使用自定义的证书,在主机名对应的情况下提供基于 TLS 的身份验证和加密的安全性。(把 pve.iks.moe
解析到步骤 1.2.1 中提到的 192.168.1.233
然后再传证书,刷新即可。)
单击节点下的 local
,选择 ISO映像
,单击上方的“上传”(如果本地有镜像的话)或“从 URL 下载”下载相应的镜像。
因树莓派 4B 为 ARM64 架构,因此下载的镜像亦需要为 arm64 架构,腾讯云源 (https://mirrors.cloud.tencent.com/ubuntu-cdimage/, https://mirrors.cloud.tencent.com/debian-cd/current/arm64/iso-cd/ 等有 Ubuntu 和 Debian 的镜像。本章以 Debian 11.1.0 ARM64 为例。
将镜像的 URL 粘贴到文本框后单击右边的“查询网址”,待文件名成功显示后即可单击下方的“立即下载”按钮。下载过程将在后台进行,进度将被实时打印。
镜像下载完成后,单击右上角的“创建虚拟机”,弹出相关对话框。
名称请自定义,其他内容请留空;在单击对话框底部的“下一步”前,请勾选左边的“高级”。
此处“操作系统”选择“不使用任何介质”。
勾选“QEMU代理”,并将 BIOS
改为 OVMF (UEFI)
,“添加EFI磁盘”下的“存储”选择 local
。
随后的“磁盘大小 (GiB)”和“内存 (MiB)”请按需选择,其他配置建议默认。
单击“完成”以开始创建虚拟机。
单击刚刚创建的虚拟机,选择“硬件”,单击选中 CD/DVD驱动器 (ide2)
后点击上方的“删除”按钮。
单击上方的“添加”,选择“CD/DVD驱动器”。
“总线/设备” 选择 SCSI
,顺序为 2
;使用“存储”为 local
,“ISO映像”为步骤 4.1 下载的 Debian 11.1 ARM64 镜像;单击对话框底部的“创建“按钮。
单击“选项”,双击右方的“引导顺序”,将 scsi2
改为如图在 scsi0
后、在 net0
前的顺序,单击对话框下方的“OK”保存之。
单击右上角的“启动”按钮,再单击右方的“控制台”进入 noKVM,稍等片刻即可进入 Debian 安装程序。
请按照默认值进行安装。
当出现 Network autoconfiguration fails
时请不要惊慌,因为我们在步骤 3.2 配置的网桥 vmbr0
没有 DHCP 功能,故自动 DHCP 无法生效,此时我们需要指定网络配置。
此处选择 Configure network manually
,在后续页面输入步骤 3.2 中提到的 10.154.46.2/24
。
此处的 Name server address
应该为步骤 1.2.1 中提到的 192.168.1.1
。
后续配置不是特别复杂,在此按下不表。(注意:需要手动配置软件包源为 China
以加快后续的安装速度)
KVM 虚拟机安装大功告成。
单击节点下的 local
,选择 CT模板
,单击上方的“上传”(如果本地有镜像的话)或“从 URL 下载”下载相应的镜像。
适用于 ARM64 的 LXC 镜像可以在 https://uk.lxd.images.canonical.com/images/ 找到,本章以 Debian 11 为例。
将镜像的 URL 粘贴到文本框后单击右边的“查询网址”,待文件名成功显示后修改文件名为方便辨识发行版名称和版本的格式,然后单击下方的“立即下载”按钮。下载过程同样将在后台进行,进度也将被实时打印。
镜像下载完成后,单击右上角的“创建CT”,弹出相关对话框。
“密码”(需要“确认密码”)和“SSH 公钥”(可以通过下方的“加载SSH密钥文件”按钮载入)任选其一设置即可。
“存储”选择 local
,“模板”选择在步骤 5.1 中下载的模板;单击对话框底部的“下一步”;随后的“磁盘大小 (GiB)”和“内存 (MiB)”请按需选择,其他配置建议默认。
“IPv4/CIDR” 填写步骤 3.2 中提到的 10.154.46.3/24
,“网关 (IPv4)”填写 步骤 3.2 中提到的 10.154.46.1
,其他内容保持默认;单击在步骤“确认”下方的“完成”按钮以开始创建 LXC 容器。
开机方法与 KVM 相同,单击右上角的“启动”按钮,再单击右方的“控制台”即可直接进入已经安装完成的容器。
终。
本文经授权后发布,本文观点不代表立场,文章出自:https://blog.iks.moe/archives/Raspberry-Pi-Proxmox-VE-setup.html