背景:
注:當前狀態無業遊民,如有合適工作崗位求撈:個人簡歷。
proxmox8虛擬化的Ubuntu vm實例,vm實例做了顯卡直通:Proxmox VE 8.4 顯卡直通完整指南:NVIDIA 2080 Ti 實戰。安裝了 NVIDIA cuda驅動,搭建了comfyui:ubuntu 22.04 anaconda comfyui。前幾天剛剛升級了proxmox8到proxmox9:proxmox8升級到proxmox9。
今天啓動comfyui突然出現了異常:
使用如下命令啓動comfyui:
systemctl start comfyui
systemctl status comfyui
但是瀏覽器訪問15070端口無法訪問:
執行netstat命令發現 15070端口確實沒有監聽:
netstat -ntlp
繼續執行 systemctl status comfyui 發現:No CUDA GPUs are available
排查過程:
proxmox測排查
難道proxmox系統升級,pci直通失效了?登錄web控制枱發現vm實例pci設備在:
vm實例測排查
使用shell登錄vm實例執行如下命令,NVIDIA設備也在。但是應該是驅動掉了:
nvidia-smi
lsmod |grep nvidia
dmesg | grep -i nvidia
uname -a
lspci | grep -i vga
我是直接偷懶重新安裝了一下顯卡驅動:
cd /data/soft/
./NVIDIA-Linux-x86_64-570.144.run
參照:ubuntu22.04安裝顯卡驅動與cuda+cuDNN
啓動comfyui測試
使用如下命令啓動comfyui,測試程序是否啓動:
systemctl start comfyui
systemctl status comfyui
netstat -ntlp
編執行執行如
覆盤:
什麼造成的這種問題呢?仔細想了一下,我有執行過apt-get upgrade apt-get update命令:
是否是發生了內核升級?,如何避免這種狀況呢?
<font style="color:rgb(15, 17, 21);">禁止內核自動升級</font>
<font style="color:rgb(15, 17, 21);">鎖定當前內核版本</font>
# 查看當前內核版本
uname -r
# 鎖定linux-image和linux-headers包
sudo apt-mark hold linux-image-generic linux-headers-generic
sudo apt-mark hold linux-image-$(uname -r) linux-headers-$(uname -r)
# 搜索並列出當前系統中所有被標記為“保留(hold)”狀態的軟件包
dpkg --get-selections | grep hold
通過這次update代理的思考:
- vm實例的備份還是很有必要的(當然了主要我這裏是個人的測試環境,正式環境肯定會隨時備份鏡像)
- 用習慣了 redhat系列的 centos rockylinux 操作系統。沒有鎖定內核的習慣,對於Ubuntu操作系統hold一些關鍵的內核or其他軟件包還是很有必要的。