Proxmox VE重裝後,如何無損掛載原有的數據盤?

2022-06-20     IT狂人日誌

原標題:Proxmox VE重裝後,如何無損掛載原有的數據盤?

之前有客戶需要遠程技術支持——Proxmox VE的虛擬伺服器,固態硬碟壞了,PVE系統本身以及幾台虛擬伺服器的系統,全部丟失了,好在數據都在機械硬碟內,客戶換了新的固態硬碟,並且重裝了PVE,但是不會把原有的數據硬碟掛載回去。

按照客戶的要求,用向日葵遠程控制了他的電腦,然後又通過他的電腦,連接到PVE,fdisk-ll命令看了一下磁碟分區,發現固態硬碟是正常的PVE分區,應該是安裝的時候自動創建的分區表;

而機械硬碟並沒有發現分區表,由此判斷,這塊機械硬碟當時並不是直通硬碟,而是在上面創建了虛擬磁碟,用虛擬伺服器存儲數據用的。

如果是需要直通一塊新的物理硬碟,那可以執行命令:ls /dev/disk/by-id,查看物理硬碟

然後用qm set命令掛載硬碟,示例: qm set 100 --sata1 /dev/disk/by-id/ata-WDC_WD5000AADS-00S9B0_WD-WCAV94178418

如果直通的物理磁碟已經有分區了,也可以用這個命令掛載:qm set 100 --sata1 /dev/sdb

現在的情況是,物理磁碟並沒有分區表,但是有之前的PVE創建的虛擬磁碟,那也可以直接掛載給新的虛擬機使用,並且數據不會丟失,命令示例如下:

fdisk -ll,顯示所有磁碟信息

qm set 100 --sata1 /dev/xxxxx,如果有多塊就sata2、sata3,還不夠就ide0、ide1……,但是不要用scsi,系統可能無法直接識別,還要安裝驅動,比較麻煩。

客戶的要求是找回虛擬磁碟內的數據,所以,到此就完成了任務。

但是,其實還有一種情況,上面還沒提到,就是原來的機械硬碟,執行fdisk -ll命令,分區表,但不直接顯示虛擬磁碟,那就需要不同的方法來導入虛擬磁碟,找回原來的數據。

如下圖所示,原來的固態硬碟壞了,新的120G固態裝了PVE,也是自動產生的分區表;原來的2T機械硬碟,顯示有一個分區:sda1;

由於情況不明,先直接掛載看一下;

反正機械硬碟始終是要用的,所以編輯FSTAB文件,配置為開機自動掛載;

直接把它掛載到虛擬伺服器上,看看有沒有數據;其實mount之後,ls命令就能看了,但是客戶覺得掛載到虛擬伺服器上看比較直觀。

掛上去之後,啟動虛擬伺服器,結果只看到裡面有幾個raw文件,那就是虛擬磁碟了,要看裡面的數據文件,還要進一步操作;關閉虛擬伺服器,把這塊磁碟刪除;採用qm importdisk命令為虛擬伺服器導入虛擬磁碟:

然後編輯虛擬機硬體配置,把「未使用的磁碟」確認添加到虛擬伺服器;

查看local-lvm,確認虛擬磁碟信息;

最後,虛擬伺服器開機,查看虛擬磁碟是否正確導入,數據文件是否能正常訪問;

多個虛擬磁碟重複qm importdisk,即可導入同一虛擬伺服器,或者導入相應的虛擬伺服器,一般不會丟失數據。

值得提醒的是:建議配置PVE集群,以提高數據安全和服務的連貫。

文章來源: https://twgreatdaily.com/zh-cn/8ccd201eaeadf3a2828f0113a7805879.html