linux档案与文件的的压缩与打包
本文涉及的命令:gzip、zcat、bzip2、bzcat、tar、dump、restore、mkiosfs、cdrecord、dd、cpio。
概念:
- 几种基础压缩的概念:
- 计算机最小单位是字节,但数据存储过程中有些字节中有些位数据没有使用,但计算机会填0,有的压缩技术就是利用复杂的算法将本应该是空的位【丢】出来。
- 另一种压缩就是将重复出现的内容进行解释。从而降低文件容量。
- 几种常见的压缩扩展名
- *.Z compress 程序压缩的档案;(过时,不用了)
- *.gz gzip 程序压缩的档案;
- *.bz2 bzip2 程序压缩的档案;
- *.tar tar 程序打包的数据,并没有压缩过;
- *.tar.gz tar 程序打包的档案,其中并且经过 gzip 的压缩
- *.tar.bz2 tar 程序打包的档案,其中并且经过 bzip2 的压缩
- dump备份工具
- 分等级备份,完整备份、差异备份
- 当待备份的文件为单一文件系统时可使用完整的dump功能。
- 当备份的资料为目录,并非单一文件系统,则备份资料必须在同一目录下,且只能使用完整备份,不支持 -u 选顷,即无法建立 /etc/dumpdates 这个各别 level 备份的时间记录文件;(详细请见后面命令解释)
- dd备份工具
- 可备份分区或磁盘,可实现磁盘对拷,无需格式化。
命令:
- gzip [-cdtv#] 档名 【可接重定向符,保留原档】
- -c :将压缩的数据输出到屏幕上,可透过数据流重导向来处理;
- -d :解压缩的参数;
- -t :可以用来检验一个压缩文件的一致性~看看档案有无错误;
- -v :可以显示出原档案/压缩文件案的压缩比等信息;
- -# :压缩等级,-1 最快,但是压缩比最差、-9 最慢,但是压缩比最好!预设是-6
- 查看:zcat 档名.gz
- bzip2 [-cdkzv#] 档名
- -c :将压缩的过程产生的数据输出到屏幕上!
- -d :解压缩的参数
- -k :保留源文件,而不会删除原始的档案喔!
- -z :压缩的参数
- -v :可以显示出原档案/压缩文件案的压缩比等信息;
- -# :与 gzip 同样的,都是在计算压缩比的参数, -9 最佳, -1 最快!
- 查看:bzcat 档名.bz2
- tar---------文件的打包
- tar [-j|-z] [cv] [-f 建立的档名] filename... <==打包与压缩
- tar [-j|-z] [tv] [-f 建立的档名] <==察看档名
- tar [-j|-z] [xv] [-f 建立的档名] (可接打包档案中的某个档案名)[-C 目录] <==解压缩
- -c :建立打包档案,可搭配 -v 来察看过程中被打包的档名(filename)
- -t :察看打包档案的内容含有哪些档名,重点在察看『档名』就是了;-x :解打包或解压缩的功能,可以搭配 -C (大写) 在特定目录解开,-c, -t, -x 不可同时使用
- -j :透过 bzip2 的支持进行压缩/解压缩:此时档名最好为 *.tar.bz2
- -z :透过 gzip 的支持进行压缩/解压缩:此时档名最好为 *.tar.gz
- -v :在压缩/解压缩的过程中,将正在处理的文件名显示出来!
- -f filename:-f 后面要立刻接要被处理的档名!建议 -f 单独写一个选顷!
- -C 目录 :这个选顷用在解压缩,若要在特定目录解压缩,可以使用这个选顷。
- -p :保留备份数据的原本权限与属性,常用于备份(-c)重要的配置文件
- -P :保留绝对路径,亦即允许备份数据中含有根目录存在之意;
- --exclude=FILE:在压缩的过程中,不要将 FILE 打包!
- 例:
- 先由 find 找出比 /etc/passwd 还要新的档案
- find /etc -newer /etc/passwd
- 使用 tar 来进行打包吧!日期为 2008/09/29
- tar -jcv -f /root/etc.newer.then.passwd.tar.bz2 --newer-mtime="2008/09/29" /etc/*(此处有点问题)
- 先由 find 找出比 /etc/passwd 还要新的档案
- dump [-Suvj] [-level] [-f 备份档] 待备份资料 -----------备份
- -S :仅列出后面的待备份数据需要多少磁盘空间才能够备份完毕;
- -u :将这次 dump 的时间记录到 /etc/dumpdates 档案中;
- -v :将 dump 的档案过程显示出来;
- -j :加入 bzip2 的支持!将数据进行压缩,默认 bzip2 压缩等级为 2
- -level:就是我们谈到的等级,从 -0 ~ -9 共十个等级;
- -f :类似 tar ,后面接产生的档案,亦可接例如 /dev/st0 装置文件名等
- -W :列出在 /etc/fstab 里面的具有 dump 设定的 partition 是否有备份过?
- restore----------dump的还原 还原时需要进入档需要还原的目录下!
- restore -t [-f dumpfile] [-h] <==用来察看 dump 档
- restore -C [-f dumpfile] [-D 挂载点] <==比较dump与实际档案
- restore -i [-f dumpfile] <==进入互动模式
- restore -r [-f dumpfile] <==还原整个文件系统
- -t :此模式用在察看 dump 起来的备份文件中都有什么重要数据!类似 tar -t功能
- -C :此模式可以将 dump 内的数据拿出来跟实际的文件系统做比较,最终会列出『在 dump 档案内有记录的,且目前文件系统不一样』的档案;
- -i :进入互动模式,可以仅还原部分档案,用在 dump 目录时的还原!
- -r :将整个 filesystem 还原的一种模式,用在还原针对文件系统的 dump 备份
- -h :察看完整备份数据中的 inode 与文件系统 label 等信息。
- -f :后面就接你要处理的那个 dump 档案。
- -D :与 -C 进行搭配,可以查出后面接的挂载点与 dump 内有不同的档案!
- mkiosfs---------建立映像档
- mkisofs [-o 映像档] [-rv] [-m file] 待备份文件.. [-V vol] -graft-point isodir=systemdir ...
- -o :后面接你想要产生的那个映像档档名。
- -r :透过 Rock Ridge 产生支持 Unix/Linux 的档案数据,可记录较多的信息;
- -v :显示建置 ISO 档案的过程
- -m file :-m 为排除档案 (exclude) 的意思,后面的档案不备份到映像档中
- -V vol :建立 Volume,有点像 Windows 在档案总管内看到的 CD title 的东西
- -graft-point:graft有转嫁或移植的意思,
- mkisofs [-o 映像档] [-rv] [-m file] 待备份文件.. [-V vol] -graft-point isodir=systemdir ...
- cdrecord---------光盘刻录工具
- cdrecord -scanbus dev=ATA <==查询刻录机位置
- cdrecord -v dev=ATA:x,y,z blank=[fast|all] <==抹除重复读写片
- cdrecord -v dev=ATA:x,y,z -format <==格式化DVD+RW
- cdrecord -v dev=ATA:x,y,z [可用选顷功能] file.iso
- [可用选顷功能] 主要是写入 CD/DVD 时可使用的选顷,常见的选顷包括有:
- -data :指定后面的档案以数据格式写入,不是以 CD 音轨(-audio)方式写入!
- speed=X :指定刻录速度,例如CD可用 speed=40 为40倍数,DVD则可用 speed=4 之类
- -eject :指定刻录完毕后自动退出光盘
- fs=Ym :指定多少缓冲存储器,可用在将映像档先暂存至缓冲存储器。预设为 4m,一般建议可增加到 8m ,不过,还是得规你的刻录机而定。
- 针对 DVD 的选顷功能:
- driveropts=burnfree :打开 Buffer Underrun Free 模式的写入功能
- -sao :支持 DVD-RW 的格式
- 针对 DVD 的选顷功能:
- dd if="input_file" of="output_file" bs="block_size" count="number"------建立文档、备份 (可实现磁盘对拷,无需格式化)
- if :就是 input file,也可以是装置
- of :就是 output file,也可以是装置
- bs :规划的一个 block 的大小,若未指定则预设是 512 bytes(一个 sector 的大小)
- count:多少个 bs 的意思。
- cpio---------备份
- cpio -ovcB > [file|device] <==备份
- cpio -ivcdu < [file|device] <==还原
- cpio -ivct < [file|device] <==察看
- 备份会使用到的选顷与参数:
- -o :将数据 copy 输出到档案或装置上
- -B :让预设的 Blocks 可以增加至 5120 bytes ,预设是 512 bytes ! 这样的好处是可以让大档案的储存速度加快。
- 还原会使用到的选顷与参数:
- -i :将数据自档案或装置 copy 出来系统当中
- -d :自动建立目录!使用 cpio 所备份的数据内容不见得会在同一层目录中,因此我们必项要让cpio 在还原时可以建立新目录。
- -u :自动的将较新的档案覆盖较旧的档案!
- -t :需配合 -i 选顷,可用在"察看"以 cpio 建立的档案或装置的内容
- 一些可共享的选顷与参数:
- -v :让储存的过程中文件名可以在屏幕上显示
- -c :一种较新的 portable format 方式储存
提示:本文为《鸟哥linux私房菜基础篇》阅读笔记,不详细的地方请自行阅读该书。
linux档案与文件的的压缩与打包的更多相关文章
- 鸟哥的linux私房菜 - 第5/6/7/9章(在线求助 man page、Linux档案权限与目录配置、Linux档案与目录管理、压缩与打包)
第五章.在线求助 man page X window与文本模式的切换 Ctrl+Alt+F1~F6:文字接口登入tty1~tty6终端机: Ctrl+Alt+F7:图形接口桌面. 注销当前用户:exi ...
- Linux中文件/文件系统的压缩、打包和备份总结(基于rhel7)
文件/文件系统的压缩.打包 Linux有哪些压缩工具可供选择 按压缩比:xz>bzip2>gzip,按压缩时长:gzip>bzip2>xz,另外还有zip可以选择. gzip只 ...
- Linux中文件查找,压缩和打包指令
1.文件的查找和搜索 可执行文件的搜索:which .whereis locate搜索文件 find搜索文件 1.1可执行文件的搜索 在Linux系统中,有成百上千个指令,不同 ...
- Linux学习3——磁盘文件管理系统与压缩和打包操作
一.写在前面 本节将对Linux的磁盘文件系统.文件的压缩打包等操作进行简要介绍. 二.完成目标 1.了解磁盘文件系统的接本知识 2.操作文件和目录的相关命令 3.文件系统的简单操作命令 4.Lin ...
- linux专题一之文件归档和压缩(tar、file、zip)
本文主要从以下几个方便来说明文件的归档和压缩,同时比较几种不同压缩方法的压缩比率及特点. 文件归档命令tar,tar.gz源码包的安装管理 创建tar包-解压-查询tar包内容 zip命令的用法 为 ...
- Linux系统档案与文件系统的压缩与打包
以下文章基于centos6.5 文章引自:http://www.jb51.net/LINUXjishu/105916.html 一.Linux下常见的压缩指令 在linux的环境中,压缩文件的扩展名大 ...
- 鸟哥的Linux私房菜——第十二章:档案的压缩与打包
视频链接: 土豆:http://www.tudou.com/programs/view/GncwT0FJKsQ B站(推荐):http://www.bilibili.com/video/av98857 ...
- linux备忘录-档案与文件系统的压缩与打包
知识点 文件扩展名与压缩解压缩工具 .Z -> compress程序压缩的档案 .gz -> gzip程序压缩的档案 .bz2 -> bzip2程序压缩的档案 .tar -> ...
- linux文件压缩与打包
在linux中常见的压缩命令 首先,在linux中压缩文件的扩展名大多是 *.gz gzip程序压缩的文件 *.bz2 bzip2程序压缩的文件 *.tar tar程序打包的数据,并没有压缩过 *.t ...
随机推荐
- Mysql分区简述
1. 数据量大的时候 mysql分表非常常用,但是mysql还可以分区. 2. 分区就是把同一张表放在不同的磁盘文件上, 当查询的时候首先定位是哪个分区(查询的时候一定要用到分区的key) 3. 分区 ...
- Unity Shader——Writing Surface Shaders(0)
从今天起,开始翻译Unity关于shader的官方文档.翻译水平比较一般,目的主要是通过翻译来提升对shader的见解,也让其他人更容易的了解shader.以下开始正文内容: 编写Surface Sh ...
- spring mvc 4数据校验 validator
注解式控制器的数据验证.类型转换及格式化——跟着开涛学SpringMVC http://jinnianshilongnian.iteye.com/blog/1733708Spring4新特性——集成B ...
- 网站tomcat配置
<?xml version='1.0' encoding='utf-8'?> <!-- Licensed to the Apache Software Foundation (ASF ...
- 每日学习心得:$.extend()方法和(function($){...})(jQuery)详解
2014-02-09 前言: 节后头两天上班,主要是调整工作状态.项目也不是很紧,趁着周末把年前遇到了一些关于JS和JQuery的一些问题给总结一下.主要是介绍JQuery的extend方法和(fun ...
- SSIS 目录
微软 BI 系列随笔 - SSIS 2012 基础 - SSIS 目录 上一篇讲解了使用SSIS参数与环境,由于涉及到了SSIS目录的相关知识和概念,本篇将对其进行讲解. 注:在之前的版本中,是使用整 ...
- POJ2411
题目大意:一个宽w高为h的棋盘,现在要用1*2的多米诺骨牌不重叠地覆盖整个棋盘,问有多少种方案. h<11,w<11 分析:1.h*w若为奇数,则无解. 2.按行处理.处理第i行时,保证前 ...
- Perl Sort函数用法总结和使用实例
一) sort函数用法 sort LISTsort BLOCK LISTsort SUBNAME LIST sort的用法有如上3种形式.它对LIST进行排序,并返回排序后的列表.假如忽略了SUBNA ...
- 黄聪:MySQL 按指定字段自定义列表排序
问题描述 大家都知道, MySQL 中按某字段升序排列的 SQL 为 (以 id 为例, 下同): SELECT * FROM `MyTable` , , , ) ORDER BY `id` ASC ...
- xml中的非法字符
今使用Jdom生成xml文件的时候,总是出现0x0,0x8为非法字符,经过搜索,问题原因及解决方法如下: 原因:xml中需要过滤的字符分为两类,一类是不允许出现在xml中的字符,这些字符不在xml的定 ...