tar命令详解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

tar
格式: tar 选项 文件目录列表
功能: 对文件目录进行打包备份
选项:
-c 建立新的归档文件
-r 向归档文件末尾追加文件
-x 从归档文件中解出文件
-O 将文件解开到标准输出
-v 处理过程中输出相关信息
-f 对普通文件操作
-z 调用gzip来压缩归档文件,与-x联用时调用gzip完成解压缩
-Z 调用compress来压缩归档文件,与-x联用时调用compress完成解压缩

实例1:用tar打包一个目录下的文件
命令:#tar -cvf /mnt/lgx/a1.doc
结果:产生一个以.tar为扩展名的打包文件

实例2:用tar解开打包文件
命令:#tar -xvf /mnt/lgx/a1.doc.tar
附加说明:在通常情况下,tar打包与gzip(压缩)经常联合使用,效果更好。方法是:
首先用tar打包,如:#tar -cvf /mnt/lgx/a1.doc (产生a1.doc.tar文件)
然后用gzip压缩a1.doc.tar文件,如:#gzip /mnt/lgx/a1.doc.tar (产生a1.doc.tar.gz文件)

实例3:解压a1.doc.tar.gz文件
方法1:
#gzip -dc /mnt/lgx/a1.doc.tar.gz (产生a1.doc.tar文件)
#tar -xvf /mnt/lgx/a1.doc.tar (产生a1.doc文件)
这两次命令也可使用管道功能,把两个命令合二为一:
#gzip -dc /mnt/lgx/a1.doc.tar.gz | tar -xvf
方法2:
使用tar提供的自动调用gzip解压缩功能
#tar -xzvf /mnt/lgx/a1.doc.tar.gz
经过tar打包后,也可用compress命令压缩(注:gzip比compress压缩更加有效),产生一个以.tar.Z的文件,在解包时,可先用“uncompress 文件名”格式解压,然后用“tar -xvf 文件名”解包。也可直接调用“tar -Zxvf 文件名”解包。

-----------------------------------------------------


GNU `tar' saves many files together into a single tape or disk archive, and can restore individual files from the archive.
GNU 'tar'是一个打包程序,它可以把很多文件输入到一个管道或磁盘存储文件中,也可从包文件中还原出单个的文件。

Usage: tar [OPTION]... [FILE]...
用法:tar [命令选项]... [文件]...

Examples:
tar -cf archive.tar foo bar # Create archive.tar from files foo and bar.
tar -tvf archive.tar # List all files in archive.tar verbosely.
tar -xf archive.tar # Extract all files from archive.tar.
例子:
tar -cf archive.tar foo bar #将foo和bar打包到archive.tar包中。
tar -tvf archive.tar #列出archive.tar包中文件的详细信息
tar -xf archive.tar #释放出archive.tar中的所有文件

If a long option shows an argument as mandatory, then it is mandatory
for the equivalent short option also. Similarly for optional arguments.
大多数命令选项有长和短两种形式,无论是必须的还是可选的选项,长短两种形式是一样的。
命令选项主要可以控制如下内容


主要的操作模式、操作修正、文件属性的处理、设备的选择和切换、设备块、包文件格式的选择、本地文件的选择、提示信息的输出
Main operation mode:
-t, --list list the contents of an archive
-x, --extract, --get extract files from an archive
-c, --create create a new archive
-d, --diff, --compare find differences between archive and file system
-r, --append append files to the end of an archive
-u, --update only append files newer than copy in archive
-A, --catenate append tar files to an archive
--concatenate same as -A
--delete delete from the archive (not on mag tapes!)
主要的操作模式:
-t, --list 列出包文件中的内容
-x, --extract, --get 从包中释放文件
-c, --create 创建一个新的包
-d, --diff, --compare 找出包和文件系统的不同
-r, --append 将文件追加到包文件的最后
-u, --update 仅把有变化的文件重新加入到包中
-A, --catenate 把tar文件加入到包中
--concatenate 同 -A
--delete 从包中删除 (not on mag tapes!)
Operation modifiers:
-W, --verify attempt to verify the archive after writing it
--remove-files remove files after adding them to the archive
-k, --keep-old-files don't replace existing files when extracting
--overwrite overwrite existing files when extracting
--overwrite-dir overwrite directory metadata when extracting
-U, --unlink-first remove each file prior to extracting over it
--recursive-unlink empty hierarchies prior to extracting directory
-S, --sparse handle sparse files efficiently
-O, --to-stdout extract files to standard output
-G, --incremental handle old GNU-format incremental backup
-g, --listed-incremental=FILE
handle new GNU-format incremental backup
--ignore-failed-read do not exit with nonzero on unreadable files
操作修正选项:
-W, --verify 对包文件进行写操作后尝试验证
--remove-files 把文件加入到包中后从磁盘中删除
-k, --keep-old-files 释放的时候不要覆盖掉已存在的文件
--overwrite 释放的时候覆盖掉已存在的文件
--overwrite-dir 释放的时候覆盖掉路径的元数据
-U, --unlink-first 释放文件前先删除原有文件
--recursive-unlink 释放路径之前先清空原路径
-S, --sparse handle sparse files efficiently
-O, --to-stdout 将文件释放到标准输出
-G, --incremental 处理旧的GNU-format 增量备份
-g, --listed-incremental=FILE
处理新的GNU-fo

rmat 增量备份
--ignore-failed-read do not exit with nonzero on unreadable files
Handling of file attributes:
--owner=NAME force NAME as owner for added files
--group=NAME force NAME as group for added files
--mode=CHANGES force (symbolic) mode CHANGES for added files
--atime-preserve don't change access times on dumped files
-m, --modification-time don't extract file modified time
--same-owner try extracting files with the same ownership
--no-same-owner extract files as yourself
--numeric-owner always use numbers for user/group names
-p, --same-permissions extract permissions information
--no-same-permissions do not extract permissions information
--preserve-permissions same as -p
-s, --same-order sort names to extract to match archive
--preserve-order same as -s
--preserve same as both -p and -s
对文件属性的处理:
--owner=NAME 强制指定 NAME 作为所添加的文件的所有者
--group=NAME 强制指定 NAME 作为所添加的文件的组
--mode=CHANGES 强制指定 (symbolic) 所添加文件的权限模式为 CHANGES
--atime-preserve 不要改变释放(dumped)文件的访问时间
-m, --modification-time 不要释放文件的修改时间
--same-owner 尝试以文件原有的所有者信息释放它
--no-same-owner 将文件作为你的文件释放
--numeric-owner always use numbers for user/group names
-p, --same-permissions extract permissions information
--no-same-permissions do not extract permissions information
--preserve-permissions same as -p
-s, --same-order sort names to extract to match archive
--preserve-order same as -s
--preserve same as both -p and -s


-----------------------------------------------------

如果磁盘有空间,建议备份到磁盘,然后再备份到磁带。

 1. 若需查看主机上配置的磁带设备,使用如下命令:
lsdev -Cc tape
显示的结果如下例所示:
rmt0 Available 30-58-00-2,0 SCSI 4mm Tape Drive
rmt1 Defined 30-58-00-0,0 SCSI 4mm Tape Drive
标明Available的设备是可用的磁带设备。


2. 若需查看磁带存储的内容,使用如下命令:
tar -tvf /dev/rmt0
显示的结果如下例所示:
-rw-r--r-- 300 400 8089600 Jan 11 14:33:57 2001 exp_icdmain_20010111.dmp
如果显示类似如下内容,则表示该磁带存储的备份数据是从数据库直接备份到磁带上,而非从本地磁盘转储到磁带的备份文件,因此操作

系统无法识别。
tar: 0511-193 An error occurred while reading from the media.
There is an input or output error.

tar: 0511-169 A directory checksum error on media; -267331077 not equal to 25626.

 3. 对于新磁带或无需保留现存数据的磁带,使用如下命令:
tar -cvf /dev/rmt0 exp_icdmain_yyyymmdd.dmp

 注:A. 该命令将无条件覆盖磁带上的现存数据。
B. 文件名不允许包含路径信息,如:/backup/exp_icdmain_yyyymmdd.dmp。

 4. 对于需要保留现存数据的磁带,使用如下命令:
tar -rvf /dev/rmt0 exp_icdmain_yyyymmdd.dmp
注:该命令将文件exp_icdmain_yyyymmdd.dmp追加到磁带的末端,不会覆盖现存的数据。
特别强调:如果备份时是从数据库直接备份到磁带上,则不可再向该磁带上追加复制任何其他文件,否则该备份数据失效。

5. 若需将转储到磁带上的备份文件复制到本地硬盘,使用如下命令:
A. 将磁带上的全部文件复制到本地硬盘的当前目录
tar -xvf /dev/rmt0
B. 将磁带上的指定文件复制到本地硬盘的当前目录
tar -xvf /dev/rmt0 exp_icdmain_yyyymmdd.dmp

相关文档
最新文档