无论是 Windows 还是 Linux ,备份都是一个非常好的习惯。 Linux下,备份是一件非常简单的事情,一个命令备份,一个命令还原,so easy!
备份命令:sudo tar -cvpzf /backup.tgz / --exclude=/proc --exclude=/lost+found --exclude=/mnt --exclude=/sys --exclude=/media --exclude=/backup.tgz
解释: 使用 tar 命令,将 / 这个“文件”复制为 backup.tgz ,同时进行压缩。 -需要注意一些细节,如backup.tgz之后,不要掉了/ , --exclude不要忘了 backup.tgz本身,不然就会得到一个很怪异的结果。如果对 tar 命令的选项不是很清楚,请自行百度。
还原命令:sudo tar -xvpzf /backup.tgz -C /
在一些情况下,以上备份还原的方法并不能帮我们“回到从前”,还是有很多问题,因此我们要寻找更加靠谱的备份方法。
(1) 再生龙备份,据说效果很好,缺点是操作比较复杂,如果对可靠性要求比较高,可以考虑这种方法。具体方法可以自行百度。
(2) dd命令备份 。 跟 tar 备份不同之处在于,dd 命令类似Ghost备份,是简单直接地对硬盘数据原封不动地拷贝,因此效果比较好。该命令使用比较简单。
dd 命令 备份: 先通过 fdisk -l 找出自己的电脑上 想要备份的linux系统所在的分区,如 /dev/sda5 , 然后就可以使用以下命令:
dd if=/dev/sda5 of=备份文件存放的路径
注意,最好另外制作一个U盘Linux系统,启动该U盘Linux系统,所有的操作在该系统下面进行。这样可以使得对备份Linux系统的影响降低到最小,防止不必要的更改。
备份文件存放的路径,这个可以随意选择,只要放得下去即可,比如,我放在windows7下面的E盘下面的backup文件夹中,于是,先通过fdisk -l 找到E盘所在的分区,如/dev/sda3 , 那么,先挂载这个E盘 :
# mkdir -p /mnt/win7_Epan
# mount -t ntfs /dev/sda3 /mnt/win7_Epan // 挂载win7系统的E盘,文件格式为ntfs
# dd if = /dev/sda5 of=/mnt/win7_Epan/backup/backup
更进一步 , 备份的同时,将备份文件进行压缩:
# dd if = /dev/sda5 | gzip > /mnt/win7_Epan/backup/backup.tar.gz
这里使用的gzip压缩,也可以使用其它的压缩方式。
还原:最好还是在U盘Linux下操作,操作步骤与备份大部分相同,但是还原的命令不一样
# gunzip -c /mnt/win7_Epan/backup/backup.tar.gz | dd of=/dev/sda5
以上就是我所总结的Linux系统备份方法 ,如果大家发现了错误或者有更好的解决方案,欢迎评论交流~