zoukankan      html  css  js  c++  java
  • Linux远程备份—ftp方式、NFS方式

    问题:现在项目中每天都有从其它各个系统发过来的数据文件(存放在/var/data目录下,以.txt结尾),虽然很久以前的文件很少用到,占用了很多空间,却不能删除。于是,想把一个月以前的文件都压缩了传到备份服务器上。目前想到的实现方式有FTP和NFS两种。


    具体实现步骤如下:
    1. 找到一个月以前的数据文件,然后压缩;
    2. 把压缩好的文件上传到备份服务器。此处有2种途径:a.通过ftp上传; b.mount备份到NFS服务器;
    3. 上传成功后删除数据文件;


    1、ftp实现远程备份的完整shell
    [root@toughhou ftp]# cat ftp_bakup.sh 
    #!/bin/bash
    cd /var/data

    #获取备份时间
    BAKUP_DATE=$(date +%Y%m%d)

    #找出满足条件(30天以前创建,以.txt结尾)的数据文件,并压缩
    find ./ -mtime +30 -name "*.txt" -exec tar -cvf $BAKUP_DATE.tar {} ;

    #以非交谈模式登陆,进入到存放备份文件的目录(/home/tough/ftp),进入到本地数据文件目录(/var/data),上传所有*.tar文件,最后退出ftp
    ftp -n 192.168.0.100 << EOF
    user tough tough
    bin
    lcd /var/data
    prompt
    mput *.tar
    bye
    EOF

    #进入到本地数据文件目录,删除30天以前修改过的数据文件及压缩文件
    cd /var/data
    find /var/data -mtime +30 -name "*.txt" -exec rm -rf {} ;
    find /var/data -name "*.tar" -exec rm -rf {} ;


    2、NFS实现远程备份完整shell
    [root@toughhou ftp]# cat nfs_bakup.sh 
    #!/bin/bash
    cd /var/data

    #获取备份时间
    BAKUP_DATE=$(date +%Y%m%d)

    #找出满足条件(30天以前创建,以.txt结尾)的数据文件,并压缩
    find ./ -mtime +30 -name "*.txt" -exec tar -cvf $BAKUP_DATE.tar {} ;

    #将NFS服务器的192.168.0.100:/var/nfs挂载到本机的/mnt/remote目录下,通过cp命令备份*.tar到远程
    mount -t nfs 192.168.0.100:/var/nfs /mnt/remote
    cp *.tar /mnt/remote

    #备份完成后卸载远程nfs目录(用完后卸载以免给NFS服务过多压力)
    unmount /mnt/remote

    #进入到本地数据文件目录,删除30天以前修改过的数据文件及压缩文件
    cd /var/data
    find /var/data -mtime +30 -name "*.txt" -exec rm -rf {} ;
    find /var/data -name "*.tar" -exec rm -rf {} ;


    3、FTP和NFS远程备份比较
    nfs使用UDP协议,效率相对较高,它的代码都是集成在内核里的,而且为性能做了很多优化。但如果做远程备份的话,可能会出现mount不上的问题。
    ftp使用TCP协议,更可靠,但性能稍差点。


    关于Linux下ftp服务器安装可以参考:Linux下vsftp服务器—上传、下载

    关于Linux下NFS服务器安装可以参考:Fedora 17安装NFS​

     

  • 相关阅读:
    bae问题
    union intersect minus
    在搭建SpringMvc Hibernate框架时遇到的问题
    详细解读Spring2.5 +Struts1.3 框架(使用Spring声明式事物管理和springjjdbc模板)
    javaee缓存技术 oscache ehcache
    Warning
    Math
    Test
    网络流24题-最小路径覆盖问题
    Wannafly summer camp Day3--Knight
  • 原文地址:https://www.cnblogs.com/toughhou/p/3778776.html
Copyright © 2011-2022 走看看