zoukankan      html  css  js  c++  java
  • 16.(25)linux备份策略


    1. 备份要点

        1.1备份资料的考虑
            1.1.1造成系统损毁的问题
                1.硬件问题
                2.软件问题(rm -rf /home之类的可怕指令或者黑客的恶意攻击)
            1.1.2主机角色不同,备份任务也不同
                1.桌面计算机(Norton的Ghost)
                2.web服务器
            1.1.3备份因素考虑【1-0】
        1.2哪些linux数据具有备份的意义(关键数据备份)
            1.2.1操作系统本身需要备份的档案
                /etc/整个目录        ----关键的账号数据
                /home整个目录        ----家目录
                /var/spool/mail        ----重要的邮件
                /boot            ----核心
                /root        ----root账号的数据
                /usr/local或/opt        ----自行安装的其它软件
            1.2.2网络服务的数据库方面【1-1】
                /etc/        ----软件的配置文件
                /usr/local/        ----软件
                /var/www/或/src/www        ----WWW资料
                /var/lib/mysql        ----MySQL资料
                其它在Linux主机上提供的服务之数据库档案
            1.2.3推荐需要备份的目录【1-2】 
                /boot
                /etc
                /home
                /usr/local或者/pot及/srv
                /var         ----这个目录中的暂存目录可以不备份
            1.2.4不要备份的目录【1-3】
                /dev        ----磁盘
                /proc        ----记录系统上正在跑的数据
                /mnt与/media        ----如果没有在这个目录中放置自己系统的东西,也不需要备份
                /tmp        ---暂存档
        1.3备份用储存媒体的选择
            1.3.1备份需要考虑的因素
                1.速度
                2.容量
                3.可靠性
                4.经费
            1.3.2几种备份介质
                1.光驱     /dev/cdrom(/dev/sdX或/dev/hdX)        ----经济、方便,但容量有限
                2.磁带机     /dev/st0(SCSI接口),/dev/ht0(IDE接口)        ----经济、可靠、容量大、速度快
                3.软盘驱动器    /dev/fd0,/dev/fd1        ----淘汰
                4.硬盘机    /dev/hd[a-d][1-16](IDE),/dev/sd[a-p][1-16](SCSI/SATA)        ----不接电源的硬盘需要很好的保养
                5.外接USB硬盘    /dev/sd[a-p][1-16](与SCSI相同)        ----普遍、方便
                6.打印机     /dev/lp[0-2]        ----我真的不晓得为什么它会在这里

    2.备份的种类、频率与工具的选择
        注意:完整备份指的是将根目录(/)整个系统全部备份下来,或者备份某个文件系统,例如/dev/sda1或/dev/md0或/dev/myvg/mylv
        2.1完整备份之累积备份(Incremental backup),使用软件
            1.含义:第一次完整备份,之后的备份只进行差异部分的备份
            2.累计备份与还原的原理:
                备份:第一次完全备份->第二次备份差异的部分->...
                还原:还原第一次的完整备份备份->还原第二次的累积备份...
            3.累计备份使用的备份软件
                dd    直接读取磁盘的扇区而不理会文件系统,有点慢
                cpio    能够备份所有档名,需要其他指令的配合
                案例1.用dd来将/dev/sda备份到完全一模一样的/dev/sda硬盘上 
                    # dd if=/dev/sda of=/dev/sdb        ----由于dd读取扇区,所以/dev/sdb这可硬盘可以不必格式化,非常方便
                案例2.使用cpio来备份与还原整个系统,假设储存媒体为SATA磁带机
                    # find / -print | cpio -covB > /dev/st0        ----备份到磁带机
                    # cpio -iduv < /dev/st0        ----还原
                案例三:/home和/backupdata分别是独立的文件系统,使用dump将/home完整备份到/backupdata
                    1.完整备份
                    # dump -0u -f /backudata/home.dump /home
                    2.进行一次累积备份
                    # dump -1u -r /backupdata/home.dump.1 /home
                案例四:使用tar进行完整备份
                    # tar --exclude /proc --exclude /mnt --exclude /tmp --exclude /backupdata -jcvp -f /backudata/system.tar.bz2 /        ----将除了/proc,/mnt,/tmp的数据外根目录所有数据全部备份
        2.2完整备份之差异备份(Differental backup)
            注意:差异备份相比累计备份占用空间大但还原快,因为只需要还原完整备份和最近一次差异备份
            1.含义:第一次完整备份,后面每一次都备份和第一次完整备份的数据作比较的差异
            2.累计备份使用的指令
                # tar -N '2014-01-06' -jpcv -f /backupdata/home.tar.bz2    /home        ----将/home中2013-01-06之后更新过的档案进行打包
                # rsync -av /home /backupdata/        ----将/home镜像到/backupdata中去      
                # rsync -av /home /backupdata/        ----这一次会快很多,因为镜像备份会检查有哪些更新,然后更新                
        2.3关键数据备份
            # tar -jpcvf mysql.`date +%Y-%m-%d`.tar.bz2  /var/lib/mysql      ----依据日期备份mysql数据库

    3.VBird的备份策略与scripts
        注意:在备份时应注意停止被备份数据区域的读写,以免发生错误
        备份策略方案参考:【1-4】
        3.1每周系统备份的脚本
            # vim /backup/buckupwk.sh        ----【SHEEL 1】
            # chmod 700 /backup/backupwk.sh
        3.2每日资料本分的脚本
            # vim /backup/buckupdaily        ----【SHEEL 2】
            # chmod 700 /backup/backupday.sh
            # /backup/backupday.sh
            # vim /etc/crontab
            30 3 * * 0 root /backupwk.sh        ----每个星期的3:30执行backupwk.sh这个脚本
            30 2 * * * root /backuupday.sh        ----每天2:30进行mysql的备份
        3.3远程备援的脚本
            1.使用FTP上传备份数据        ----【SHEEL 3】
                注意:将备份到/backup/weekly/中的数据打包成为/backup/weekly.tar.bz2,并上传到服务器的/home/backup/底下。
            2.使用rsync上传备份数据        ----【SHEEL 4】
                注意:必须取得一个不用密码即可登录的账号
            

    4.灾难复原的考虑
        1.硬件损毁,且具有完整备份的数据
        2.由于软件问题产生的被攻破资安事件【1-5】

    5.重点回顾【1-6】

    6.本章习题【1-7】

    7.参考数据与延伸阅读
  • 相关阅读:
    LightOJ1074(spfa+dfs标记负环及负环能够到达的点)
    (模板)AC自动机模板
    poj3660(floyd最短路)
    (模板)hdoj2544(最短路--bellman-ford算法&&spfa算法)
    hdoj4099(字典树+高精度)
    poj1056(字符串判断是否存在一个字符串是另一个字符串的前缀)
    hdoj1247(字典树)
    poj3630||hdoj1671(字典树)
    (模板)hdoj1251(字典树模板题)
    poj3348(求凸包面积)
  • 原文地址:https://www.cnblogs.com/eli01/p/3559718.html
Copyright © 2011-2022 走看看