`

backup备份文件时指定archive.exclude需要注意的问题

阅读更多

        之前我写过一个关于backup如何备份数据的文章http://tiroc.iteye.com/blog/1048042

        今天主要记录一下,在压缩文档时指定排除一些目录和文件会遇到的问题。(目前只是我这里的情况,其他环境有待验证)

 

  archive :my_archive do |archive|  
    archive.add File.expand_path("./public/system/")
    #注意下边这个exclude方法的参数,videos是一个目录,但是一定不能以/结尾
    archive.exclude '/home/tiroc/code/test/public/system/videos'
    #而通过File.expand_path得到的路径,本身就不是以/结尾的
    archive.exclude File.expand_path("./public/system/captcha/")
  end 
 

为什么以/结尾的目录就无法exclude呢?backup的压缩文件部分调用了系统的tar。使用tar命令是如果想要排除一些文件可以这样:

 

tar -cf test.tar --exclude='test/dir1' 'test/'

这个命令可以将当前目录下的test目录压缩成test.tar,并且排除test/dir1目录。

 

        注意:在我的Ubuntu 10.10和10.04上发现被exclude的目录一定不能以/结尾,否则会无效。我不知道这个是系统的问题,还是tar命令本身就试着样的。还有,backup要用>=3.0.16的版本,之前的版本即使不以/结尾也不行

 

分享到:
评论

相关推荐

    备份压缩--tar.docx

    - **功能**:从指定文件中读取要添加到归档文件中的文件或目录列表。 - **示例**: ```bash tar -cvzf backup.tar.gz --files-from=files.txt ``` `files.txt`中每一行指定一个文件或目录。 15. **-A 或 --...

    aix redbook第七章-备份

    在备份过程中,可以通过编辑 `/etc/exclude.rootvg` 文件来排除不需要备份的文件系统,例如 `/usr/tmp`。这有助于减少备份所需的时间和空间。 - **创建备份的步骤**: 可以通过图形界面(Smit)或者命令行来执行 ...

    Linux系统备份与还原.pdf

    - **创建备份**:例如,备份整个系统的命令可能是`tar cvpzf backup.tgz --exclude=/proc --exclude=/lost+found --exclude=/backup.tgz --exclude=/mnt --exclude=/sys /`。 - **压缩格式的选择**:除了gzip,你还...

    Linux服务器的备份技巧.pdf

    此外,还将讨论如何选择合适的备份工具,以及在备份过程中需要注意的关键点。 1. **备份工具的选择** Linux系统提供了多种备份工具,如`dd`、`dump`、`cpio`等。其中,`tar`是最常用且灵活的命令行备份工具,它...

    LINUX tar命令文档

    5. **从档案中提取单个文件**:`tar -xvf archive.tar file_to_extract`只提取指定文件。 6. **比较档案与文件系统**:`tar -cd archive.tar --compare`查看档案与当前目录的差异。 ### 四、注意事项 - 在处理...

    Linux命令学习-tar命令手册

    2. **权限管理**:当处理含有特殊权限(如 SUID/SUID 权限)的文件时,应特别注意权限的变化。 3. **文件完整性**:在归档过程中,应确保文件的完整性和正确性。 4. **命令语法**:熟悉 **tar** 命令的语法和选项,...

    rsync命令教程 在对rsync服务器配置结束以后,下一步就需要在客户端发出rsync命令来实现将服务器端的文件备份到客户端来。rsync是一个功能非常强大的工具,其命令也有很多功能特色选项。

    2.1.1在使用rsync传输文件时,需要指定一个源和一个目的,其中一个可能是远程机器的资源信息。例如: #rsync *.c servivcer:src/ 表示将传输当前目录下所有以.c结尾的文件到机器servivcer的src目录下。如果文件已经...

    Linux服务器备份和恢复技巧

    - **`-f`: 文件** - 指定归档文件名为`/archive/full-backup-日期.tar.gz`。 - **`--directory=/`: 工作目录** - 设置起始目录为根目录`/`。 - **`--exclude=mnt`: 排除** - 不备份`/mnt/`目录。 - **`--exclude=...

    linux下的tar命令解释及实例

    9. **仅包含新于指定日期的文件 (-N)**: `-N`参数可以指定日期,只包含新于此日期的文件。例如,`tar -N "2022/01/01" -zcvf backup.tar.gz /path/to/dir`将只打包2022年1月1日以后修改的文件。 10. **排除文件或...

    Oracle数据库备份与恢复总结

    - 在数据库正常运行时备份数据文件。 - 使用`ALTER TABLESPACE ... BEGIN BACKUP`和`END BACKUP`命令。 - **联机热备的恢复** - **完全恢复**: 使用所有可用的归档日志恢复到某个时间点。 - **不完全恢复**: ...

    tar_for_linux

    - **排除文件**:`tar --exclude=pattern -cvf archive_name.tar directory` 可以在打包目录时排除指定模式的文件或目录。 - **保持权限和时间戳**:`tar -pcaf archive_name.tar file1 file2` 可以保存文件的权限...

    CentOS6.5环境下使用rsync增量同步备份文件的方法

    ### CentOS6.5环境下使用rsync增量同步备份文件的方法 #### 概述 在Linux环境中,数据备份是一项至关重要的任务,对于确保数据安全性和业务连续性具有重要意义。rsync是一款非常强大且高效的文件同步工具,它能够...

    rsync同出出现 IO error encountered 怎么办?.docx

    这通常意味着rsync在尝试访问或操作文件时遇到了问题,可能是由于磁盘错误、网络问题、权限问题或是其他系统级别的异常。 描述中提到,这个问题是在使用`--delete`参数后出现的。`--delete`参数告诉rsync删除目标...

    puppet-alkivi_backup:用于 Alkivi 服务器的备份模块

    ' [backup] report from admin.alkivi.fr ' , include_dir => [ ' /etc ' , ' /root ' , ' /home ' , ' /usr/local ' , ' /var/log ' ], exclude_dir => [ ' /home/alkivi-backup ' , ' /root/archive ' ], hostname...

    tar-backup-restore

    "tar-backup-restore"这一主题涉及到如何使用`tar`进行有效的数据备份以及如何在需要时恢复这些备份。下面我们将深入探讨`tar`命令的使用方法及其在备份与恢复中的应用。 `tar`(Tape Archive)最初设计是用来将...

    Rsync命令参数详解

    + -b, --backup 创建备份,也就是对于目的已经存在有同样的文件名时,将老的文件重新命名为~filename + --backup-dir 将备份文件(如~filename)存放在在目录下 + -suffix=SUFFIX 定义备份文件前缀 * 文件权限参数 ...

    linux命令rsync.txt

    根据提供的文件信息,“linux命令rsync.txt”,我们可以深入探讨rsync命令的相关知识点,包括其基本用法、常用选项以及实际应用场景等。 ### rsync 命令简介 rsync(remote sync)是一款在Linux系统中非常强大的...

    Rsync for windows配置

    - **-a (archive mode)**:归档模式,等同于 `-rlptgoD` 的组合,是进行文件备份时常用的选项。 - **-r (recursive)**:递归复制目录。 - **-R (relative paths)**:使用相对路径信息。 - **-b (backup)**:如果目标...

    rman配置及rman常用命令操作

    Oracle Recovery Manager (RMAN) 是Oracle数据库管理系统中的一个重要工具,主要用于数据库的备份、恢复和维护。RMAN提供了高效且灵活的备份策略,确保了数据库的安全性。以下是对RMAN配置和常用命令的详细解释: 1...

Global site tag (gtag.js) - Google Analytics