`
yonghengmoming
  • 浏览: 47292 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

ubuntu的备份和还原

阅读更多

首先,成为根用户 :sudo su (这里进入根用户只是为了方便,不进入也可以)

下面转到您的文件系统根目录下 (这里只是我们的一个例子,您可以转到任何一个您想备份的目录下,包括远程或可移动驱动器。)
CD到根目录 :cd /
完整的备份命令:
sudo tar -cvpzf /backup.tgz --exclude=/proc --exclude=/lost+found --exclude=/backup.tgz --exclude=/media --exclude=/host --exclude=/mnt --exclude=/sys /

讲解:
    sudo tar -cvpzf /backup.tgz /
    以上这句的意思是,用tgz格式保存根目录/的所有文件为backup.tgz
    tar 是用来备份的程序
    c - 新建一个备份文档
    v - 详细模式, tar程序将在屏幕上实时输出所有信息。
    p - 保存许可,并应用到所有文件。
    z - 采用‘gzip’压缩备份文件,以减小备份文件体积。
    f <filename> - 说明备份文件存放的路径, /backup.tgz 是本例子中备份文件名。
    --exclude= - 这个命令用来制定排除目录
上面这份“完整的备份命令”是网络上摘抄的命令,会出现
    “tar: 由于前次错误,将以上次的错误状态退出”
的错误,网络上查到的原因是文件压缩格式的问题,并说可以忽略这个错误。先不说错误的原因是不是压缩格式的问题,光说错误一产生,后面的文件都不继续压缩了,这样的备份肯定是不全面的,因此我不赞同网络上的说法。

以下是我的做法:
    备份根目录 ,排除掉大部分文件
sudo tar -cvpzf /backup/backup.tgz --exclude=/backup --exclude=/proc --exclude=/lost+found --exclude=/media --exclude=/lib --exclude=/host --exclude=/selinux --exclude=/root --exclude=/dev --exclude=/etc --exclude=/home --exclude=/initrd.img --exclude=/mnt --exclude=/sys /
    这些被排除的文件单独备份 ,这样就不会报“tar: 由于前次错误,将以上次的错误状态退出”这个错误了。
sudo tar -cvpzf /backup/backuplib.tgz /lib
sudo tar -cvpzf /backup/backuproot.tgz root
sudo tar -cvpzf /backup/backupselinux.tgz selinux
sudo tar -cvpzf /backup/backupdev.tgz /dev
sudo tar -cvpzf /backup/backupetc.tgz /etc

如果磁盘空间不够大的话,可以使用bz2的格式进行压缩,和上面的语句同理:
sudo tar -cvpjf backup.tar.bz2 -–exclude=/proc -–exclude=/lost+found -–exclude=/backup.tar.bz2 --exclude=/backup.tgz --exclude=/host –exclude=/mnt –exclude=/sys /

还原的代码
    tar -xvpzf /backup/backup.tgz -C /
如果您使用的是bz2压缩的:
    tar -xvpjf /backup/backup.tar.bz2 -C /

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics