Linux学习(5)——文档压缩与打包

参考博客:http://www.92csz.com/study/linux/11.htm

文档的压缩与打包

在windows下常用的压缩文件是.rar格式,但该格式在linux下是不能识别的,它有自己所特有的压缩工具。而.zip格式则可以在两个系统下则都能使用。压缩既能节省磁盘空间,也可以在传输时节省网络带宽。

在linux下最常见的压缩文件通常都是以.tar.gz为结尾的,除此之外还有.tar, .gz, .bz2, .zip等等。对于压缩文件来讲,后缀名必须要带上。这是为了判断压缩文件是由哪种压缩工具所压缩,而后才能去正确的解压缩这个文件。以下介绍常见的后缀名所对应的压缩工具。

(1).gz gzip 压缩工具压缩的文件
(2).bz2 bzip2 压缩工具压缩的文件
(3).tar tar 打包程序打包的文件(tar并没有压缩功能,只是把一个目录合并成一个文件)
(4).tar.gz 先用tar打包,然后再gzip压缩
(5).tar.bz2 同上,先用tar打包,然后再bzip2压缩

gzip

语法:gzip [-d#] filename
其中,-d为解压缩时使用,-#为压缩等级,1至9,压缩效果递增

image.png
需要注意的是,gzip不可以压缩目录。解压缩用-d。

bzip2

语法:bzip2 [-dz] filename,其中-d为解压缩,-z为压缩。
image.png
同样不可压缩目录。

tar

语法:tar [-zjxcvfpP] filename

  • -z: 是否同时用gzip压缩
  • -j: 是否同时用bzip2压缩
  • -x: 解包或者解压缩
  • -t: 查看tar包里面的文件
  • -c: 建立一个tar包或者压缩文件包
  • -v: 可视化
  • -f: 后面跟文件名,压缩时跟-f文件名(压缩后文件名为filename);解压时跟-f文件名,意思是解压filename。(注意,如果有多个参数,-f写在最后面)
  • —exclude filename: 在打包或者压缩时,不要将filename文件包含在内。

image.png
打包的同时使用gzip压缩
image.png
-tf查看:
image.png

用tar -zxvf来解压tar.gz的压缩包;用tar -jxvf来解压.tar.bz2的压缩包。—exclude参数用来过滤文件,如果需要过滤多个,则需要使用多个—exclude filename。
image.png

Linux软件安装包

我们常用的Linux软件包为deb、rpm、tar.gz三种软件安装包。
rpm包-在红帽LINUX、SUSE、Fedora可以直接进行安装,但在Ubuntu中却无法识别;
deb包-是Ubuntu的专利,在Ubuntu中双击deb包就可以进入自动安装进程;
tar.gz包-在所有的Linux版本中都能使用,但安装过程也最麻烦。
(二水马的原话)

此处软件包的安装就不详细讲了,需要的时候再百度谷歌即可。

安装源码包(.tar.gz)

这部分我直接摘抄学习。

在linux下面安装一个源码包是最常用的,博客作者在日常的管理工作中,大部分软件都是通过源码安装的。安装一个源码包,是需要我们自己把源代码编译成二进制的可执行文件。如果读得懂这些源代码,那么就可以去修改这些源代码自定义功能,然后再去编译成我们想要的。使用源码包的好处除了可以自定义修改源代码外还可以定制相关的功能,因为源码包在编译的时候是可以附加额外的选项的。

源码包的编译用到了linux系统里的编译器,常见的源码包一般都是用C语言开发的,这也是因为C语言为linux上最标准的程序语言。Linux上的C语言编译器叫做gcc,利用它就可以把C语言变成可执行的二进制文件。

安装一个源码包,通常需要三个步骤:

  1. ./config 在这一步可以定制功能,加上相应的选项即可,具有有什么选项可以通过”./config —help”命令来查看。在这一步会自动检测你的linux系统与相关的套件是否有编译该源码包时需要的库,因为一旦缺少某个库就不能完成编译。只有检测通过后才会生成一个Makefile文件。

  2. make 使用这个命令会根据Makefile文件中预设的参数进行编译,这一步其实就是gcc在工作了。

  3. make install 安装步骤,生成相关的软件存放目录和配置文件的过程。

而日常的源码包安装时,并不一定是依照上面的步骤进行安装。因此这就需要我们拿到源码包解压后,然后进入到目录找相关的帮助文档,通常会以INSTALL或者README为文件名。下面会编译安装一个源码包来帮你更深刻的去理解如何安装源码包。

由于作者提供的网址无法访问,因此选择其他Aphache版本进行安装。

(1)下载一个源码包,建议把所有下载的源码包放到/usr/local/src/目录下。wget为下载命令,后面跟下载地址。
image.png

(2)解压:tar zxvf http…(包名)

(3)配置相关选项,并生成Makefile

image.png
(很明显看到,缺少APR,配置失败,无法生成Makefile文件。)

解压后进入对应目录,./config —help可以查看可用选项,一般常用的有”—prefix=PREFIX”,这个选项的意思是定义软件包安装到哪里。通常源码包都是安装在/usr/local/目录下的。比如,我们把apache安装在/usr/local/apache2下,那么这里就应该这样写”—prefix=/usr/local/apache2”。

解决方法:Apache在安装时需要一些准备环境,这里需要安装另外一个东西 APR(Apache Portable Runtime)。同样需要下载和解压。过程如下:

  1. wget http://archive.apache.org/dist/apr/apr-1.6.3.tar.gz
  2. tar -zxvf apr-1.6.3.tar.gz
  3. 编译:
    ./configure —prefix=/usr/local/apr
    make
    make install

完成之后,居然还差APR-util。。。疯了。后面Apache的安装过程与上面步骤类似,不再具体贴图了。现在只管安好它。。

(4)除了查看有没有生成Makefile文件来判定有没有完成./config 的操作外,还可以通过这个命令”echo $?”来判定,如果是0,则表示上一步操作成功完成,否则就是没有成功。

configure命令修改为:./configure

(5)make编译,把源代码编译成二进制的可执行文件。

(6)make install安装。

最终各种各样的问题,没耐心了,结束。