zoukankan      html  css  js  c++  java
  • 小话备份与恢复

    在电信领域的产品,可能都会提供Disaster Recovery。许多人都知道ghost,可能用过Symantec NetBackup,他们都能帮你备份和恢复系统。如果你自己想通过简单的tar,dump, dd, cpio实现它,需要实现哪些功能呢?

    首先你想实现哪些backup类型? 他们分为:Full/Incremental/Network/Dump.

    Full就是备份所有的东西。Incremental就是在上一次Full备份基础之上只备份所有后来的任何改动。 Network就是有一个client帮助把你备份并且通过sftp或者其他方式传到远端服务器。Dump能够把整个磁盘分区信息或者文件系统dump出来,比方我们把这个disk dd出来,在restore的dump时候,需要我们有相同的硬盘大小和恢复位置。

    第二,如果是OS层的恢复,我们就是我们需要使用USB或者其他启动设备帮助启动,然后从已存在的备份中恢复。

    第三,就是文件系统分区。我们可能需要这些信息,当恢复的时候,我们可能换了一块新硬盘,需要使用这些分区信息重新生成文件系统。

    backup示例:

    #mount USB key to$BACKUP

    #使用tarbackup系统

    tar zc --one-file-system--anchored -S --no-ignore-case --exclude $BACKUP --exclude /tmp  / --exclude /var/log --exclude /var/tmp--exclude /var/run /var > $BACKUP/backup.tgz

    #backup 磁盘分区和LVM信息

    #准备 USB启动所需的vmlinuzand initrd.gz到 $BACKUP/boot

    # 创建grub boot menu

    cat >$BACKUP/boot/grub/grub.conf <<EOF

    timeout 10

     title recovery

      kernel=$BOOT/vmlinuz why=gdi

      initrd=$BOOT/initrd.gz

    ...

    EOF

    #安装bootload

    grub-install--no-floppy --root-directory=$BACKUP $GRUB_DEV

    restore示例:

    使用USBkey启动

    使用已有的backup 磁盘分区和LVM信息重新格式化文件系统

    untar backup.tgz和其他文件系统

    准备硬盘启动的boot

    从硬盘启动

  • 相关阅读:
    复合文档(Compound Document)读写栗子
    JavaScript修改IE注册表
    mysql_real_connect 端口号说明
    _beginthreadex创建线程,立即执行?
    Access 是/否 字段
    JavaScript格式化日期输出
    STM32-串行SPI nor
    全球唯一标识符:GUID在线生成
    如何交叉编译Python到ARM-Linux平台(转)
    CMOS Sensor的调试经验分享(转)
  • 原文地址:https://www.cnblogs.com/dyllove98/p/3144819.html
Copyright © 2011-2022 走看看