刚刚重新安装系统,这次决定备份一些重要的目录。以前一直知道tar命令是这方面的高手,但是到底要怎么备份?并没有系统的研究过,所以刚才的实践,总结了经验,放出来和大家分享。
tar 命令是非常强大的,它在很多情况下可以备份整个系统,然后你可以通过一张live cd还原它,也可一通过已经安装好的系统,对自身进行覆盖回复,如果你有什么需要备份的东西,当然最好不是小东西,你可以试试下面的方法。
第一部分 备份
首先 我们需要在/目录下重建一个压缩文件,为什么要在/下面创建呢?就是因为不能让我们把这个压缩文件自己压缩的自己的里面,比如说压缩文件位于/home /dongmh,而我偏偏备份的就是这个home文件夹,那么会怎么样?大家可以自己作个实验,我这里自己创建了一个test文件夹,然后在cd到这个文 件夹里面,然后输入命令如下:
这个命令就是说在test这个文件夹下面创建一个压缩文件,而文件内部打包的就是这个test的父级目录,这个时候我的执行结果是产生的压缩包的test文件夹里面又有一个backup.tgz,它有160k大,试图打开它会有如下的错误:
那么回到我们的备份,首先我们需要root权限:
然后我们到/目录下:
接着我们开始重要的备份:
这个命令就是整个备份的核心,它表示在当前目录创建一个不包含/proc /lost+found /backup.tgz /sys的压缩包,而压缩的对象就是/目录。
在这个目录的参数里面
c表示创建 v表示详细信息 z表示用gzip压缩 f表示使用档案文件或设备 p表示保持一切相同
当然我们也可以使用Bzip2进行压缩,它会产生更小的压缩包,但是会有更慢的速度,这一切取决与你的处理器的性能。使用它的方法是把z换成j
第二部分 还原
这一部分一定要小心,如果你不确新你在作什么你最好不要进行覆盖操作,一定要小心。
还原的过程是很简单的,命令如下:
如果使用Bzip2压缩的话,就用命令如下:
第三部分 结语
也许你不是为了重装后方便使用,只是想在别的电脑上搞定一个和原先电脑一模一样的ubuntu,那么好这个方法也适合你,你只需要针对硬盘分区的不同改改/etc/fstab,其他的方面都是问题不大的,祝各位好运。
原文出处:
http://forum.ubuntu.org.cn/trackback.php?e=599
PS:
查询分区UUID值可以使用下面的命令:
tar 命令是非常强大的,它在很多情况下可以备份整个系统,然后你可以通过一张live cd还原它,也可一通过已经安装好的系统,对自身进行覆盖回复,如果你有什么需要备份的东西,当然最好不是小东西,你可以试试下面的方法。
第一部分 备份
首先 我们需要在/目录下重建一个压缩文件,为什么要在/下面创建呢?就是因为不能让我们把这个压缩文件自己压缩的自己的里面,比如说压缩文件位于/home /dongmh,而我偏偏备份的就是这个home文件夹,那么会怎么样?大家可以自己作个实验,我这里自己创建了一个test文件夹,然后在cd到这个文 件夹里面,然后输入命令如下:
代码: |
tar cvpzf backup.tgz ../
|
这个命令就是说在test这个文件夹下面创建一个压缩文件,而文件内部打包的就是这个test的父级目录,这个时候我的执行结果是产生的压缩包的test文件夹里面又有一个backup.tgz,它有160k大,试图打开它会有如下的错误:
引用: |
gzip: stdin: unexpected end of file
tar: 归档文件中异常的 EOF tar: 错误不可恢复:现在退出 |
那么回到我们的备份,首先我们需要root权限:
代码: |
sudo -s -H |
然后我们到/目录下:
代码: |
cd / |
接着我们开始重要的备份:
代码: |
tar cvpzf backup.tgz --exclude=/proc --exclude=/lost+found --exclude=/backup.tgz --exclude=/mnt --exclude=/sys /
|
这个命令就是整个备份的核心,它表示在当前目录创建一个不包含/proc /lost+found /backup.tgz /sys的压缩包,而压缩的对象就是/目录。
在这个目录的参数里面
c表示创建 v表示详细信息 z表示用gzip压缩 f表示使用档案文件或设备 p表示保持一切相同
当然我们也可以使用Bzip2进行压缩,它会产生更小的压缩包,但是会有更慢的速度,这一切取决与你的处理器的性能。使用它的方法是把z换成j
代码: |
tar cvpjf backup.tar.bz2 --exclude=/proc --exclude=/lost+found --exclude=/backup.tar.bz2 --exclude=/mnt --exclude=/sys /
|
第二部分 还原
这一部分一定要小心,如果你不确新你在作什么你最好不要进行覆盖操作,一定要小心。
还原的过程是很简单的,命令如下:
代码: |
tar xcpfz backup.tgz -C / |
如果使用Bzip2压缩的话,就用命令如下:
代码: |
tar xvpfj backup.tar.bz2 -C / |
第三部分 结语
也许你不是为了重装后方便使用,只是想在别的电脑上搞定一个和原先电脑一模一样的ubuntu,那么好这个方法也适合你,你只需要针对硬盘分区的不同改改/etc/fstab,其他的方面都是问题不大的,祝各位好运。
原文出处:
http://forum.ubuntu.org.cn/trackback.php?e=599PS:
查询分区UUID值可以使用下面的命令:
代码: |
ls -al /dev/disk/by-uuid or sudo vol_id --uuid $hdd |
我的/home是独立的分区,所以我采用的备份命令:
sudo tar cvpjf /home/backup.tar.bz2 --exclude=/proc --exclude=/lost+found --exclude=/home --exclude=/mnt --exclude=/media --exclude=/tmp /