2021年8月15日 星期日

在archlinux 中使用 clonezilla 備份非系統磁碟

因為系統開機中,不想重開啟使用 Clonezilla live USB。

有個方法是開 VirtualMachine 用 Clonezilla Live ISO 開機後再連接要備份的和

儲存的裝置,但是感覺還是有點麻煩。

所以想直接拿出 Clonezilla live ISO 檔案內的相關檔案,利用 chroot 改變根目錄直接執行。

因為 ram 夠大,所以全部在 /dev/shm 下操作

先掛載 ISO 檔案 

#mkdir /dev/shm/clonzilla

#sudo mount -t iso9660 /ISO/clonezilla-live-i686-pae.iso /dev/shm/clonzilla

再掛載 ISO 內的壓縮後的檔案系統檔 live/filesystem.squashfs

(這步驟應該有更好的方法,因為我完成後無法用umount 卸載,

一直出現錯誤 umount: /dev/shm/squash: target is busy. )

#mkdir /dev/shm/squash

#sudo mount -o loop /dev/shm/clonzilla/live/filesystem.squashfs /dev/shm/squash

 

再把 squashfs 檔案內的檔案複製到另一個資料夾,

因為要保留所有權限,所以用 rsync 備份系統方式

#mkdir /dev/shm/sq

#sudo rsync -aAXHv --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /dev/shm/squash/ /dev/shm/sq/
/dev/shm/sq/home/partimag


在 chroot 前,要確認備份來源磁碟沒有被掛載

有先在 /dev/shm/squash/etc/passwd 查看有什麼 user id 可以用,沒看到常用的 1000,所以直接用 root 進行 arch-chroot

#su root

$arch-chroot /dev/shm/sq

進入 chroot 環境後,可以先確定要備份的裝置有沒有在 /dev 內

$ls /dev/sd*

執行 Clonezilla 主程式

$/usr/sbin/ocs-live


在 Mount Clonezilla image directory 對話匡中,

直接選擇 skip         Use existing /home/partimag (Writable device. E.g

之後就是一般步驟,

只是會一直出現提醒在 chroot 環境下。

最後完成後離開 chroot 環境

$exit

只是現在就無法卸載 /dev/shm/sq

 

沒有留言:

張貼留言