一.关于 CheckInstall的背景知识:nginx
前面咱们介绍了怎么在wdOS系统中使用源码编译安装的方式来安装LAMP,LNMP,LNAMP环境以及基于它们的应用如安装Discuz论坛,Wordpress博客和PhpMyAdmin数据库的管理套件等等。不知道各位会不会像我那样在安装过程当中遇到须要卸载而后从新编译安装的问题只,make file 只有少数的卸载例子,因此使用make uninstall时不少时候都不能帮咱们清理已经安装的内容。而若是你的程序是须要常常重复编译,你就得每次都到这些目录下删除本来安装过得内容,这个过程十分的麻烦。数据库
CheckInstall 是一款优秀的源码安装软件,它使得 Linux 软件管理更加方便。Checkinstall 是一个能从 tar.gz 类的源代码自动生成 RPM/Debian 或Slackware 安装包的程序。经过 CheckInstall,你就能用几乎全部的 tar.gz 类的源代码来生成“干净”的安装或者卸载包。 特别是在源码须要常常重复编译的状况下,CheckInstall 可让你丝绝不破坏系统一致性的前提下彻底的卸载程序。并且,你还可使用这些编译好的安装包直接在其余的机器上安装无须再从新编译 。工具
二.安装过程:spa
下载checkinstall源码到/usr/local/src这个目录下:文档
解压缩源码包: tar xf checkinstall-1.6.2.tar.gz.1源码
进入checkinstall-1.6.2这个目录下,进行编译:make博客
完成后进行安装初始化:make install编译
安装完后使用checkinstall命令将checkinstall自己打成rpm包 :变量
这一步选择y:建立一系列默认的封装文档打包
打包方式选择RPM:
下一步若是你不须要修改这些默认值的话,能够enter一下进行下一步
提示checkinstall-1.6.2-1.i386.rpm已经封装在/usr/src/redhat/RPMS/i386/这个目录下:
根据上面提示进入到/usr/src/redhat/RPMS/i386/这个目录下,ls一下就会看到已经封装好的checkinstall封装包:
使用 rpm -i checkinstall-1.6.2-1.i386.rpm来安装
安装完毕后可使用rpm查询语句rpm -qa | grep checkinstall ,查看是否安装成功:
或者使用包管理程序的查询语句rpm -qi checkinstall 检查安装包中文件是否彻底在程序库中记录了以及安装包头部的一些额外信息。
下面就来说讲checkinstall的配置文件:
咱们能够经过修改配置文件 /usr/local/lib/checkinstall/checkinstallrc 来改变 CheckInstall 的默认配置。
在这个配置文件中,值得注意的有如下三个变量:
INSTYPE :这里设置默认的封装类型 有slackware rpm debian三个选项
若是你不肯定接下来使用什么封装类型,你能够选择空着,下次封装时系统会提示选择要封装的类型
PAK_DIR: 决定安装包的存储目录 一样的,你能够先空着
INSTALL :决定是只生成安装包仍是生成包后立刻安装
0-只生成安装包
1-不只生成安装包,还将包当即安装
三.基于checkinstall这个工具的应用实例:
说明:我这里以nginx-1.0.4.tar.gz为例进行说明。其实前面几步都与咱们以前作过的nginx源码安装同样,不同的只是make install这一步用checkinstall 来代替,而后根据提示安装便可。
进入到/usr/local/src这个目录先下载nginx的源码包
解压缩: tar -zxvf nginx-1.0.4.tar.gz
由当前目录cd 进入nginx-1.0.4 这个目录下,设置编译须要用到的参数:
./configure \
--user=nginx \
--group=nginx \
--prefix=/usr/share \
--sbin-path=/usr/sbin/nginx \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--pid-path=/var/log/run/nginx.pid \
--lock-path=/var/log/lock/subsys/nginx \
下一步就是进行编译:make
咱们要用到checkinstall工具,因此下一步用checkinstall代替makeinstall,而后根据提示一步步来:
打包方式选择rpm:
rpm包的创建会用到的值,若是没有要修改的,enter开始下一步:
封装成功:
根据提示cd 进入到/usr/src/redhat/RPMS/i386/ 这个目录下
使用rpm -ivh nginx-1.0.4-1.i386.rpm来进行安装
安装完以后能够检查是否存在:
查看更详细的信息:
若是须要从新安装这个rpm包,可使用rpm -e nginx 来删除再从新初始化安装便可。