zoukankan      html  css  js  c++  java
  • 鸟哥的LINUX私房菜基础篇第三版 阅读笔记 四 档案的文件系统的压缩和打包

    1、压缩文件案的用途与技术
        a、用途,简单来说,就是节约磁盘空间。如果从传输角度讲,占用宽带也会小很多(Apache就有自动压缩的功能,节省宽带资源,提升网站的输出能力)
        b、压缩技术,总体来讲有两个方案,第一个:填充法,比如数字1,在机器码中是 00000001 前面几位都是空的,所谓填充法就是用一些特别的方法把这些空的都利用起来,从而达到,降低占用的磁盘空间。
                第二种是,统计重复记录,举例来讲,我的数据中有100个1(11111.....),压缩技术就把这些写成 100个1(100个1),不是真的100个1,一种统计基数的结果展示,从而达到压缩的目的
    2、Linux系统常见的压缩指令:
            *.Z  compress程序压缩的档案,基本已经歇菜,被gzip替代
            *.gz gzip程序压缩的档案
            *.bz2 bzip2程序压缩的档案
            *.tar tar程序打包的数据,并没有压缩
            *.tar.gz tar程序打包,并gz压缩
            *.tar.bz2 tar 程序打包的档案 并 bz2压缩
    3、详细指令介绍
        1、compress 略 (uncompress 解压缩)
        2、gzip zcat 
            a、这基本是应用最广泛的压缩了,zcat是用来 看被压缩的档案的
            b、解压缩命令是  gzip -d  或者 gunzip 
       3、bzip2 bzcat (这种压缩起的名字 有种 超过gzip的赶脚)
            a、bzcat自然也是用来看 压缩的档案
            b、解压缩命令亦是 bzip2 -d 或者 bunzip2
      4、tar 打包 这个很重要
            为啥重要,因为文件夹,在windows下很容易压缩,命令和单个一样的,但是在linux,上面说的那些,无论是gzip还是bzip2的压缩,都只能针对文件,及时针对文件夹(gzip XX/*) 也是对文件夹下每一个文件进行压缩,所以,tar来了,拯救来了
            tar类似于winRAR 将文件夹 打包成一个文件。
            而后缀名为:tar.gz 表示的就是 先用了 tar打包,再使用gzip进行压缩
            tar命令比较重要,所以把一些指令列出来下,方便日后查询复习:
            -c 建立打包档案,可搭配-v来观察打包过程中被打包的档案名
            -t 查看打包档案中的内容含有哪些档案名,重点是查看
            -x 解打包或解压缩的功能,可以搭配 -C(大写)  解压缩到指定目录 
            -j 解压后缀为,tar.bz2 或者进行bzip2压缩 (主要看有没有-c) 即,解压打包并透过bzip2压缩的文件 或压缩成 tar.bz2
            -z 解压后缀为,tar.gz 或者进行gzip压缩,即,解压打包并透过bzip2压缩的文件 或压缩成 tar.gz
            -f 后面要跟立刻处理的文件  建议 单独写 
        例子:压缩 tar -jcv -f xxx.txt
                  查看 tar -jtv -f xxx.tar.gz
                  解压缩 tar -jxv -f xxx.tar.bz2   -C  /tmp/xx 
            看出来了吧,区别就是 c  t  x 这三个不能并存
        5、仅解压一个文件 ,tar -jtv -f xxx.tar.bz2|grep 'shadow' 
                先找下,具体的文档名,比如:etc/shadow 
                然后再  tar -jxv -f xxx.tar.bz2 etc/shadow 这样就只会解压一个!
        6、打包某目录,但不含该目录下的某些档案
                直接上代码 tar -cjv -f /root/sys
        7、强大的备份命令 dump
            a、除了可以备份整个文件系统外,还可以制定等级
                   备份完整文件系统,dump -S /dev/hdc1  ##查看备份需要多少容量
                   dump -0u -f /root/boot.dump/boot
            
        b、dump来备份非文件系统,亦单一目录的方法  -u 只能用level 0 
            dump -0j -f /root/etc.dump.bz2 /etc/
        8、restore
            备份文件就是在急用时可以回复系统的重要数据,所以有备份就得学学如何复原了
            restore -t [-f dumpfile] [-h] <==用来观察看dump档案
            restore -C [-f dumpfile] [-D 挂载点]  <==比较dump 与实际档案
            restore -i [-f dumpfile] <== 进入互动模式
            restore -r [-f dumpfile] <== 还原整个文件系统
        9、mkisofs 建立映像档
        10、dd 可以用来装置挂载时使用,但也可以用来备份,dd可以读取磁盘装置的内容,几乎是直接读取扇区
        11、cpio 可以用来备份任何东西,包括装置设备档案,但是它不会自己去找,所以一般和find 配合着来使用
            cpio -ovcB > [file|device] <== 备份
            cpio -ivcdu > [file|device] <== 还原
            cpio -ivct > [file|device] <== 察看
            find /svc -name wmy |cpio -ocvB > /tmp/boot.cpoi
        重点回顾
        ·压缩指令为透过一些运算方法将原本的档案进行压缩的技术,以减少档案所占用的磁盘容量。压缩前与压缩后的档案所占用的磁盘容量比值,就可以被称为是【压缩比】
        ·压缩的好处是可以减少磁盘容量的浪费,在web网站也可以利用压缩技术来进行数据的传送,好让网站宽带的可利用率上升
        ·压缩文件案的扩展名大多是: *.tar *.gz *.bz2 *.tar.gz *.tar.bz2 *.Z
        ·常见的压缩指令有gzip 与bzip2 其中bzip2压缩比gzip还要好,建议用它
        ·tar 可以用来进行档案打包,并可支持gzip或bzip2 的压缩
        ·压缩 tar -jcv -f file
        ·解压缩 tar -jxv -f file.tar.bz2 -C file
        ·查看 tar -jtv -f file.tar.bz2
        ·dump 指令可备份文件系统或单一目录
        ·dump的备份若针对文件系统时,可进行0-9的lever的差异备份!其中 level 0 为完整备份
        ·restore 指令可还原 被dump 的备份档案
        ·要简历刻录光盘数据时,可透过mkisofs指令来
        ·可透过cdrecord 来写入CD 或DVD 刻录机
        ·cpio 为相当优秀的备份指令,不过必须要搭配类似 find 指令来读入欲备份的文件名数据,才能进行备份动作
     
  • 相关阅读:
    Python学习札记(十五) 高级特性1 切片
    LeetCode Longest Substring Without Repeating Characters
    Python学习札记(十四) Function4 递归函数 & Hanoi Tower
    single number和变体
    tusen 刷题
    实验室网站
    leetcode 76. Minimum Window Substring
    leetcode 4. Median of Two Sorted Arrays
    leetcode 200. Number of Islands 、694 Number of Distinct Islands 、695. Max Area of Island 、130. Surrounded Regions 、434. Number of Islands II(lintcode) 并查集 、178. Graph Valid Tree(lintcode)
    刷题注意事项
  • 原文地址:https://www.cnblogs.com/wangmy/p/4995957.html
Copyright © 2011-2022 走看看