备份 Linux 系统,推荐使用 tar。使用 archlinux-2008.06-core-i686 光盘启动系统[79],登录“作业平台”后,首先挂载文件系统
注意 | |
---|---|
备份、恢复、迁移等过程,都要先进行这一步 |
#首先将两个工作目录定义为环境变量,这样条理更清晰 export FROM="/mnt/from" #定义变量FROM
,待备份的文件系统挂载于此 export TO="/mnt/to" #定义变量TO
,备份文件存放路径 mkdir -p $FROM $TO #创建工作目录 #假设待备份的系统位于 /dev/sda1 分区 mount /dev/sda1 $FROM #如果将系统中的目录挂载到其它分区,例如将 /boot 挂载于 /dev/sda2 ,还要继续挂载此目录 mkdir $FROM/boot mount /dev/sda2 $FROM/boot mkdir $FROM/home mount /dev/sda3 $FROM/home …… #假设将备份文件存放于 /dev/sda5 分区 mount /dev/sda5 $TO
使用 tar(参见“压缩解压”一节) 命令备份:
cd $FROM tar -zcvf $TO/backup.tgz \ --exclude=backup.tgz \ --exclude=mnt/* \ --exclude=proc/* \ --exclude=sys/* \ *
系统更新后,可以使用以下命令,在原来备份的基础上进行差异备份
#查找最近改动的文件,生成文件列表 find $FROM -mtime -1 -print> filelist #根据文件列表进行差异备份 tar -zcv -T filelist -f $TO/backup.tgz
恢复时,使用以下命令
tar zxvpf $TO/backup.tgz -C $FROM
在某一硬件架构中,Linux 中大部分文件与硬件无关。所以,将备份的系统迁移到其它机器上[80],是可行的
恢复后,有三个文件需要重新编辑:/boot/grum/menu.lst
、/etc/fstab
、/etc/X11/xorg.conf
使用 blkid,输出磁盘设备的 UUID,根据实际情况编辑这两个文件
blkid >> /etc/fstab blkid >> /boot/grub/menu.lst
使用 grub
命令安装引导器,参见“Grub 安装”一节