FreeBSD下使用ezjail管理jails虛擬機很方便,公司有多臺ezjails服務器,運行n多jails虛擬機,一次硬盤故障,做了一次整機恢復,將方法歸納如下:
備份準備:
建議ezjails服務器安裝2塊同樣大小的硬盤,一塊作爲備份。我是通過cron每日rsync備份需要的文件
需要備份的文件:
/etc/rc.conf
/etc/rc.local
/etc/fstab.*
/etc/crontab
/usr/local/etc/ezjail/
/usr/local/etc/ezjail.conf
/usr/jails
恢復過程:
1、安裝FreeBSD(版本和備份的機器相同)
2、安裝Jails(ports安裝,需要src/sys)
3、配置jails(ezjail-admin update -bp)
4、恢復備份的目錄/usr/jails,注意basejail和newjail不要恢復
5、恢復/etc/rc.conf /etc/rc.local /etc/fstab.* /etc/crontab /usr/local/etc/ezjail.conf /usr/local/etc/ezjail/
6、啓動jails(/usr/local/etc/rc.d/ezjail start)
下面是備份腳本的內容:
#backup all files for jail to bkdisk
/usr/local/bin/rsync -av --delete /etc /bkdisk/
/usr/local/bin/rsync -av --delete /usr/local/etc/ezjail.conf /bkdisk/
/usr/local/bin/rsync -av --delete /usr/local/etc/ezjail /bkdisk/
/usr/local/bin/rsync -av --delete /usr/jails /bkdisk/