2022/12/04

Rock Pi X上Proxmox VE試用中的幾個小問題 & 優化

Rock Pi X上跑Proxmox VE一個多星期,感覺還是不錯的,只要在一開始時克服了Proxmox VE安裝程式「歧視eMMC」的問題後,在4核、4GB內存RAM和64 GB儲存eMMC的這單板機上,試試不同的Linux系統的各種還設定的話,可以接受。

不過用著用著,小小的問題和優化仍不可少。下面這都是肥叔叔在實際使用時的按自己個人手順、場景和習慣,在網上搜索再整理出來的優化,不是甚麼奇難雜症。

煩人的「訂閱」彈窗

每次登入Proxmox VE的管理界面,都會出現一個煩人的「訂閱」彈窗,英文版是「You do not have a valid subscription for this server」,在管理界面中是沒有方法直接把其根除的,要通過命令列進行。

在Nodes選pve,打開Shell終端機。

由於已經是root的身份,可以直接對系統設定檔進行編輯。

修改proxmox-widget-toolkit才可以把下面年那個每次每次每次每次都要彈出來,而且只能用滑鼠點走的彈窗幹掉。

輸入下面的腳本:

sed -Ezi.bak "s/(Ext.Msg.show\(\{\s+title: gettext\('No valid sub)/void\(\{ \/\/\1/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js && systemctl restart pveproxy.service

在下次登入時,那個煩人的「訂閱」彈窗就不再出現(至少直至下次更新PVE為止)。

來源:Remove proxmox subscription notice

更新Proxmox VE底層Linux的Apt套件更新和嚇人的404錯誤

Proxmox VE的底層是以穩定性聞名的Debian Linux,Debian系列的Linux現時多採用APT作為套件安裝管理(應用商店?)安裝套件。為了系統安全和功能性,套件安裝管理最好是在裝機後即時從網上更新,以取得各種套件的最新版本,同時,APT本身也最好更新成最新的版本。

正常來說,APT的套件列表更新就是在Shell終端機輸入:

apt update

那APT就能從網上取得最新版套件列表,在安裝套件時就馬上知道各種最新版的套件和與其有依賴性的套件。

另外要更新APT的話,就輸入差不多的指令:

apt upgrade

這樣就連APT本身都升級了。

正常來說,問題不大,可惜這不是「正常」場景。因為Proxmox VE除了Debain的套件列表,也有自己的APT套件,包括企業版的PVE相關套件。

於是,當沒有課金的平民要更新APT列表時,就會出現「404找不到」的錯誤,雖然Debian的列表是更新了,但Proxmox VE的就沒有。這裡的做法是,不是解決錯誤(課金),而是把指出錯誤(你沒有課金)的APT套件來源設定解決。

這裡需要Shell裡跑文字編輯程式,筆者慣用的是nano:

nano /etc/apt/sources.list.d/pve-enterprise.list

表單中只有孤單的一行,而這一行就是問題所在,解決的方法就是加個comment(#號在前面),打個碼去解決問題。

從這個:

deb https://enterprise.proxmox.com/debian/pve bullseye pve-enterprise

修改成這個:

#deb https://enterprise.proxmox.com/debian/pve bullseye pve-enterprise

完成後,〔Ctrl O〕寫入(儲存),〔Ctrl X〕退出。

再跑apt updateapt upgrade就不再有404的報錯了。

以平民身份去更新PVE相關套件

上面移除了「需課金」的Proxmox VE企業版本套件來源後,日後如果要更新PVE的話,就要用上平民版的來源。這時就要修改相關的APT套件來源檔。

假設當前的PVE版本是7.2,Debian的版本代號是「牛眼」Bulleye。

把平民版的apt套件來源加到來源列表,就可以在沒有「訂閱版」的情況下更新。

在Shell輸入下面的指令去把平民版的PVE套件來源檔加到PVE的安裝設定到表。

echo "deb https://download.proxmox.com/debian/pve bullseye pve-no-subscription" > /etc/apt/sources.list.d/pve-install-repo.list

再手動更新當前版本的PVE的「存儲庫密鑰」(repository key):

wget https://enterprise.proxmox.com/debian/proxmox-release-bullseye.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bullseye.gpg

再跑APT的更新和升級(可能需時):

apt update && dist-upgrade

更新和升級完成後,重新啟動主系統。

reboot

開機後,即可完成PVE的升級安裝。

想知更多,可以參考PVE官方文檔《Install Proxmox VE on Debian 11 Bullseye》,不過這官方文檔的原文是在Debian上安裝PVE的,而文檔後面叫大家去訂閱並移除平民版,這個跟不跟嘛,就看個人決定咯。

系統硬件溫度感測顯示

系統溫度感測不是Proxmox VE的內置功能,不過在每天都30度以上高溫的夏天,只加了散熱片Heatsink但沒有風扇的Rock Pi X就在家裡長著,有點不太放心,同時筆者也好奇跑不同VM時對板上的這夥便宜的Atom凌動Z5-8530的功耗和發熱有甚麼影響,所以就在PVE的找到了系統溫度感測顯示。

套件的名字是lm-sensors,在各種Linux上都相當普遍,「理論上」PVE是有安裝的。如果沒有的話,可以另外安裝。安裝都是用APT套件形式,在Shell終端輸入:

apt install lm-sensors

安裝完成後,主板上有溫度感測器的分件都可以通過CLI檢視。

想要單獨看一下現時的溫度,在Shell終端輸入:

sensors

即有一堆當時的結果跑出來。

室內氣溫33度,沒開冷氣(筆者不在家),沒有散熱風扇,Rock Pi X大約59度上下。

如果是持續地在Shell終端觀察溫度變化,可以輸入:

watch sensors

直至「滿足了」,就按下〔Ctrl C〕離開。

當然也可以通過各種方式擷取有關去串流、弄個dashboard之類的方式去把溫度數據呈現,這筆者就不會了,也不是本篇要寫的內容了。

2022年炎夏長開的Rock Pi X

題外話──在沒有散熱風扇、32度氣溫下,Rock Pi X用PVE跑一個主要用來SMB檔案分享的VM,大約在54至61攝氏度,還算是可以接受的溫度。如果在旁邊加個USB小風扇(辦公室檯面上用的那種)讓空氣流通一下,就能降46至53度左右。

相比裝Windows、ChromeOS或者Android之類和人類有直接接觸互動的系統,把Rock Pi X或者是同級Atom凌動z5-8350加eMMC的小小主機來當單跑一兩個VM的夏季伺服器更為適合?