Unable to get device for partition 1 on device /dev/mmcblk0
問題
Dec 5, 2022
如果你安裝 PVE 的機器是使用 eMMC,那麼,很頭大的,你會碰到這個錯誤訊息。
原因
由於 PVE 一般是安裝在 SSD/HDD 中,因為每日會寫入 log,這不利於在 USB/eMMC/CF Card 中進行。
解決辦法
所幸還是找到解法,若你想要在 eMMC 安裝 PVE,回到最初安裝的一步,我們要選擇的是 Install Proxmox VE(Debug Mode)
,接著,按 ctrl + D 往下一步,再輸入 nano /usr/bin/proxinstall
後,去找到下面這段程式碼:
} elsif ($dev =~ m|^/dev/[^/]+/hd[a-z]$|) {
return "${dev}$partnum";
} elsif ($dev =~ m|^/dev/nvme\d+n\d+$|) {
return "${dev}p$partnum";
} elsif ($dev =~ m|^/dev/mmcblk\d+$|) {
return "${dev}p$partnum";
} else {
die "unable to get device for partition $partnum on device $dev\n";
}
先看到下面:
} elsif ($dev =~ m|^/dev/mmcblk\d+$|) {
return "${dev}p$partnum";
這段程式碼是我們需要另外補上的,儲存後跳出編輯模式,繼續 ctrl + D 安裝,它會回到安裝模式,再重複上面提到的接下來的流程,接著就可正常安裝了。